0001_initial.py 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279
  1. # Generated by Django 5.0.6 on 2024-07-09 06:02
  2. import django.db.models.deletion
  3. from django.db import migrations, models
  4. class Migration(migrations.Migration):
  5. initial = True
  6. dependencies = []
  7. operations = [
  8. migrations.CreateModel(
  9. name="Dataset",
  10. fields=[
  11. (
  12. "id",
  13. models.BigAutoField(
  14. auto_created=True,
  15. primary_key=True,
  16. serialize=False,
  17. verbose_name="ID",
  18. ),
  19. ),
  20. ("name", models.CharField(max_length=100)),
  21. ("description", models.TextField()),
  22. ("created_at", models.DateTimeField(auto_now_add=True)),
  23. ("updated_at", models.DateTimeField(auto_now=True)),
  24. ],
  25. options={
  26. "verbose_name": "Dataset",
  27. "verbose_name_plural": "Datasets",
  28. "db_table": "dataset",
  29. },
  30. ),
  31. migrations.CreateModel(
  32. name="EvalConfig",
  33. fields=[
  34. (
  35. "id",
  36. models.BigAutoField(
  37. auto_created=True,
  38. primary_key=True,
  39. serialize=False,
  40. verbose_name="ID",
  41. ),
  42. ),
  43. ("name", models.CharField(max_length=100)),
  44. ("description", models.TextField()),
  45. (
  46. "sys_prompt",
  47. models.TextField(
  48. default="You are a helpful assistant designed to answer questions.\nProvide concise and accurate responses, ensuring you follow the provided instructions thoroughly."
  49. ),
  50. ),
  51. ("created_at", models.DateTimeField(auto_now_add=True)),
  52. ("updated_at", models.DateTimeField(auto_now=True)),
  53. ],
  54. options={
  55. "verbose_name": "EvalConfig",
  56. "verbose_name_plural": "EvalConfig",
  57. "db_table": "eval_config",
  58. },
  59. ),
  60. migrations.CreateModel(
  61. name="LLMBackend",
  62. fields=[
  63. (
  64. "id",
  65. models.BigAutoField(
  66. auto_created=True,
  67. primary_key=True,
  68. serialize=False,
  69. verbose_name="ID",
  70. ),
  71. ),
  72. ("name", models.CharField(max_length=100)),
  73. ("parameteres", models.TextField()),
  74. ],
  75. options={
  76. "verbose_name": "LLM Backend",
  77. "verbose_name_plural": "LLM Backends",
  78. "db_table": "llm_backed",
  79. },
  80. ),
  81. migrations.CreateModel(
  82. name="LLMModel",
  83. fields=[
  84. (
  85. "id",
  86. models.BigAutoField(
  87. auto_created=True,
  88. primary_key=True,
  89. serialize=False,
  90. verbose_name="ID",
  91. ),
  92. ),
  93. ("name", models.CharField(max_length=100)),
  94. ("parameters", models.TextField()),
  95. ("created_at", models.DateTimeField(auto_now_add=True)),
  96. ("updated_at", models.DateTimeField(auto_now=True)),
  97. (
  98. "backend",
  99. models.ForeignKey(
  100. on_delete=django.db.models.deletion.CASCADE,
  101. to="commons.llmbackend",
  102. ),
  103. ),
  104. ],
  105. options={
  106. "verbose_name": "LLM Model",
  107. "verbose_name_plural": "LLM Models",
  108. "db_table": "llm_model",
  109. },
  110. ),
  111. migrations.CreateModel(
  112. name="EvalSession",
  113. fields=[
  114. (
  115. "id",
  116. models.BigAutoField(
  117. auto_created=True,
  118. primary_key=True,
  119. serialize=False,
  120. verbose_name="ID",
  121. ),
  122. ),
  123. ("created_at", models.DateTimeField(auto_now_add=True)),
  124. ("updated_at", models.DateTimeField(auto_now=True)),
  125. (
  126. "config",
  127. models.ForeignKey(
  128. on_delete=django.db.models.deletion.CASCADE,
  129. to="commons.evalconfig",
  130. ),
  131. ),
  132. (
  133. "llm_model",
  134. models.ForeignKey(
  135. on_delete=django.db.models.deletion.CASCADE,
  136. to="commons.llmmodel",
  137. ),
  138. ),
  139. ],
  140. options={
  141. "verbose_name": "EvalSession",
  142. "verbose_name_plural": "EvalSession",
  143. "db_table": "eval_session",
  144. },
  145. ),
  146. migrations.CreateModel(
  147. name="QA",
  148. fields=[
  149. (
  150. "id",
  151. models.BigAutoField(
  152. auto_created=True,
  153. primary_key=True,
  154. serialize=False,
  155. verbose_name="ID",
  156. ),
  157. ),
  158. ("question", models.TextField()),
  159. ("correct_answer", models.TextField()),
  160. (
  161. "target",
  162. models.CharField(
  163. choices=[("test", "test"), ("train", "train"), ("dev", "dev")],
  164. db_index=True,
  165. default="test",
  166. max_length=100,
  167. ),
  168. ),
  169. ("options", models.JSONField()),
  170. ("correct_answer_idx", models.CharField(max_length=100)),
  171. ("hash", models.CharField(max_length=100, unique=True)),
  172. (
  173. "dataset",
  174. models.ForeignKey(
  175. on_delete=django.db.models.deletion.CASCADE,
  176. to="commons.dataset",
  177. ),
  178. ),
  179. ],
  180. options={
  181. "verbose_name": "QA",
  182. "verbose_name_plural": "QAs",
  183. "db_table": "qa",
  184. },
  185. ),
  186. migrations.CreateModel(
  187. name="EvalAnswer",
  188. fields=[
  189. (
  190. "id",
  191. models.BigAutoField(
  192. auto_created=True,
  193. primary_key=True,
  194. serialize=False,
  195. verbose_name="ID",
  196. ),
  197. ),
  198. ("instruction", models.TextField()),
  199. ("assistant_answer", models.TextField()),
  200. ("is_correct", models.BooleanField()),
  201. ("created_at", models.DateTimeField(auto_now_add=True)),
  202. ("hash", models.CharField(max_length=100)),
  203. (
  204. "eval_session",
  205. models.ForeignKey(
  206. on_delete=django.db.models.deletion.CASCADE,
  207. to="commons.evalsession",
  208. ),
  209. ),
  210. (
  211. "llm_backend",
  212. models.ForeignKey(
  213. on_delete=django.db.models.deletion.CASCADE,
  214. to="commons.llmbackend",
  215. ),
  216. ),
  217. (
  218. "llm_model",
  219. models.ForeignKey(
  220. on_delete=django.db.models.deletion.CASCADE,
  221. to="commons.llmmodel",
  222. ),
  223. ),
  224. (
  225. "question",
  226. models.ForeignKey(
  227. on_delete=django.db.models.deletion.CASCADE, to="commons.qa"
  228. ),
  229. ),
  230. ],
  231. options={
  232. "verbose_name": "EvalAnswer",
  233. "verbose_name_plural": "EvalAnswer",
  234. "db_table": "eval_answer",
  235. },
  236. ),
  237. migrations.CreateModel(
  238. name="RoleMessage",
  239. fields=[
  240. (
  241. "id",
  242. models.BigAutoField(
  243. auto_created=True,
  244. primary_key=True,
  245. serialize=False,
  246. verbose_name="ID",
  247. ),
  248. ),
  249. (
  250. "role",
  251. models.CharField(
  252. choices=[("assistant", "assistant"), ("user", "user")],
  253. db_index=True,
  254. max_length=100,
  255. ),
  256. ),
  257. ("content", models.TextField()),
  258. (
  259. "eval_config",
  260. models.ForeignKey(
  261. on_delete=django.db.models.deletion.CASCADE,
  262. to="commons.evalconfig",
  263. ),
  264. ),
  265. ],
  266. options={
  267. "verbose_name": "RoleMessage",
  268. "verbose_name_plural": "RoleMessage",
  269. "db_table": "role_message",
  270. },
  271. ),
  272. ]