You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

360 lines
12 KiB

11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
10 months ago
10 months ago
10 months ago
  1. generator client {
  2. provider = "prisma-client-js"
  3. }
  4. datasource db {
  5. provider = "sqlite"
  6. url = "file:../storage/anythingllm.db"
  7. }
  8. model api_keys {
  9. id Int @id @default(autoincrement())
  10. secret String? @unique
  11. createdBy Int?
  12. createdAt DateTime @default(now())
  13. lastUpdatedAt DateTime @default(now())
  14. }
  15. model workspace_documents {
  16. id Int @id @default(autoincrement())
  17. docId String @unique
  18. filename String
  19. docpath String
  20. workspaceId Int
  21. metadata String?
  22. createdAt DateTime @default(now())
  23. lastUpdatedAt DateTime @default(now())
  24. pinned Boolean? @default(false)
  25. watched Boolean? @default(false)
  26. document_sync_queues document_sync_queues?
  27. workspace workspaces @relation(fields: [workspaceId], references: [id])
  28. }
  29. model invites {
  30. id Int @id @default(autoincrement())
  31. code String @unique
  32. status String @default("pending")
  33. claimedBy Int?
  34. createdAt DateTime @default(now())
  35. createdBy Int
  36. lastUpdatedAt DateTime @default(now())
  37. workspaceIds String?
  38. }
  39. model system_settings {
  40. id Int @id @default(autoincrement())
  41. label String @unique
  42. value String?
  43. createdAt DateTime @default(now())
  44. lastUpdatedAt DateTime @default(now())
  45. }
  46. model users {
  47. id Int @id @default(autoincrement())
  48. username String? @unique
  49. password String
  50. role String @default("default")
  51. suspended Int @default(0)
  52. createdAt DateTime @default(now())
  53. lastUpdatedAt DateTime @default(now())
  54. pfpFilename String?
  55. seen_recovery_codes Boolean? @default(false)
  56. dailyMessageLimit Int?
  57. browser_extension_api_keys browser_extension_api_keys[]
  58. dept_users dept_users[]
  59. embed_chats embed_chats[]
  60. embed_configs embed_configs[]
  61. password_reset_tokens password_reset_tokens[]
  62. recovery_codes recovery_codes[]
  63. slash_command_presets slash_command_presets[]
  64. temporary_auth_tokens temporary_auth_tokens[]
  65. workspace_agent_invocations workspace_agent_invocations[]
  66. workspace_chats workspace_chats[]
  67. threads workspace_threads[]
  68. workspace_users workspace_users[]
  69. }
  70. model recovery_codes {
  71. id Int @id @default(autoincrement())
  72. user_id Int
  73. code_hash String
  74. createdAt DateTime @default(now())
  75. user users @relation(fields: [user_id], references: [id], onDelete: Cascade)
  76. @@index([user_id])
  77. }
  78. model password_reset_tokens {
  79. id Int @id @default(autoincrement())
  80. user_id Int
  81. token String @unique
  82. expiresAt DateTime
  83. createdAt DateTime @default(now())
  84. user users @relation(fields: [user_id], references: [id], onDelete: Cascade)
  85. @@index([user_id])
  86. }
  87. model document_vectors {
  88. id Int @id @default(autoincrement())
  89. docId String
  90. vectorId String
  91. createdAt DateTime @default(now())
  92. lastUpdatedAt DateTime @default(now())
  93. }
  94. model welcome_messages {
  95. id Int @id @default(autoincrement())
  96. user String
  97. response String
  98. orderIndex Int?
  99. createdAt DateTime @default(now())
  100. }
  101. model workspaces {
  102. id Int @id @default(autoincrement())
  103. name String
  104. slug String @unique
  105. vectorTag String?
  106. createdAt DateTime @default(now())
  107. openAiTemp Float?
  108. openAiHistory Int @default(20)
  109. lastUpdatedAt DateTime @default(now())
  110. openAiPrompt String?
  111. similarityThreshold Float? @default(0.25)
  112. chatModel String?
  113. topN Int? @default(4)
  114. chatMode String? @default("chat")
  115. pfpFilename String?
  116. chatProvider String?
  117. agentModel String?
  118. agentProvider String?
  119. queryRefusalResponse String?
  120. vectorSearchMode String? @default("default")
  121. embed_configs embed_configs[]
  122. workspace_agent_invocations workspace_agent_invocations[]
  123. documents workspace_documents[]
  124. workspace_suggested_messages workspace_suggested_messages[]
  125. threads workspace_threads[]
  126. workspace_users workspace_users[]
  127. }
  128. model workspace_threads {
  129. id Int @id @default(autoincrement())
  130. name String
  131. slug String @unique
  132. workspace_id Int
  133. user_id Int?
  134. createdAt DateTime @default(now())
  135. lastUpdatedAt DateTime @default(now())
  136. user users? @relation(fields: [user_id], references: [id], onDelete: Cascade)
  137. workspace workspaces @relation(fields: [workspace_id], references: [id], onDelete: Cascade)
  138. @@index([workspace_id])
  139. @@index([user_id])
  140. }
  141. model workspace_suggested_messages {
  142. id Int @id @default(autoincrement())
  143. workspaceId Int
  144. heading String
  145. message String
  146. createdAt DateTime @default(now())
  147. lastUpdatedAt DateTime @default(now())
  148. workspace workspaces @relation(fields: [workspaceId], references: [id], onDelete: Cascade)
  149. @@index([workspaceId])
  150. }
  151. model workspace_chats {
  152. id Int @id @default(autoincrement())
  153. workspaceId Int
  154. prompt String
  155. response String
  156. include Boolean @default(true)
  157. user_id Int?
  158. createdAt DateTime @default(now())
  159. lastUpdatedAt DateTime @default(now())
  160. thread_id Int?
  161. feedbackScore Boolean?
  162. api_session_id String?
  163. users users? @relation(fields: [user_id], references: [id], onDelete: Cascade)
  164. }
  165. model workspace_agent_invocations {
  166. id Int @id @default(autoincrement())
  167. uuid String @unique
  168. prompt String
  169. closed Boolean @default(false)
  170. user_id Int?
  171. thread_id Int?
  172. workspace_id Int
  173. createdAt DateTime @default(now())
  174. lastUpdatedAt DateTime @default(now())
  175. workspace workspaces @relation(fields: [workspace_id], references: [id], onDelete: Cascade)
  176. user users? @relation(fields: [user_id], references: [id], onDelete: Cascade)
  177. @@index([uuid])
  178. }
  179. model workspace_users {
  180. id Int @id @default(autoincrement())
  181. user_id Int
  182. workspace_id Int
  183. createdAt DateTime @default(now())
  184. lastUpdatedAt DateTime @default(now())
  185. users users @relation(fields: [user_id], references: [id], onDelete: Cascade)
  186. workspaces workspaces @relation(fields: [workspace_id], references: [id], onDelete: Cascade)
  187. }
  188. model cache_data {
  189. id Int @id @default(autoincrement())
  190. name String
  191. data String
  192. belongsTo String?
  193. byId Int?
  194. expiresAt DateTime?
  195. createdAt DateTime @default(now())
  196. lastUpdatedAt DateTime @default(now())
  197. }
  198. model embed_configs {
  199. id Int @id @default(autoincrement())
  200. uuid String @unique
  201. enabled Boolean @default(false)
  202. chat_mode String @default("query")
  203. allowlist_domains String?
  204. allow_model_override Boolean @default(false)
  205. allow_temperature_override Boolean @default(false)
  206. allow_prompt_override Boolean @default(false)
  207. max_chats_per_day Int?
  208. max_chats_per_session Int?
  209. workspace_id Int
  210. createdBy Int?
  211. usersId Int?
  212. createdAt DateTime @default(now())
  213. embed_chats embed_chats[]
  214. users users? @relation(fields: [usersId], references: [id])
  215. workspace workspaces @relation(fields: [workspace_id], references: [id], onDelete: Cascade)
  216. }
  217. model embed_chats {
  218. id Int @id @default(autoincrement())
  219. prompt String
  220. response String
  221. session_id String
  222. include Boolean @default(true)
  223. connection_information String?
  224. embed_id Int
  225. usersId Int?
  226. createdAt DateTime @default(now())
  227. users users? @relation(fields: [usersId], references: [id])
  228. embed_config embed_configs @relation(fields: [embed_id], references: [id], onDelete: Cascade)
  229. }
  230. model event_logs {
  231. id Int @id @default(autoincrement())
  232. event String
  233. metadata String?
  234. userId Int?
  235. occurredAt DateTime @default(now())
  236. @@index([event])
  237. }
  238. model slash_command_presets {
  239. id Int @id @default(autoincrement())
  240. command String
  241. prompt String
  242. description String
  243. uid Int @default(0)
  244. userId Int?
  245. createdAt DateTime @default(now())
  246. lastUpdatedAt DateTime @default(now())
  247. user users? @relation(fields: [userId], references: [id], onDelete: Cascade)
  248. @@unique([uid, command])
  249. }
  250. model document_sync_queues {
  251. id Int @id @default(autoincrement())
  252. staleAfterMs Int @default(604800000)
  253. nextSyncAt DateTime
  254. createdAt DateTime @default(now())
  255. lastSyncedAt DateTime @default(now())
  256. workspaceDocId Int @unique
  257. runs document_sync_executions[]
  258. workspaceDoc workspace_documents @relation(fields: [workspaceDocId], references: [id], onDelete: Cascade)
  259. }
  260. model document_sync_executions {
  261. id Int @id @default(autoincrement())
  262. queueId Int
  263. status String @default("unknown")
  264. result String?
  265. createdAt DateTime @default(now())
  266. queue document_sync_queues @relation(fields: [queueId], references: [id], onDelete: Cascade)
  267. }
  268. model browser_extension_api_keys {
  269. id Int @id @default(autoincrement())
  270. key String @unique
  271. user_id Int?
  272. createdAt DateTime @default(now())
  273. lastUpdatedAt DateTime @updatedAt
  274. user users? @relation(fields: [user_id], references: [id], onDelete: Cascade)
  275. @@index([user_id])
  276. }
  277. model temporary_auth_tokens {
  278. id Int @id @default(autoincrement())
  279. token String @unique
  280. userId Int
  281. expiresAt DateTime
  282. createdAt DateTime @default(now())
  283. user users @relation(fields: [userId], references: [id], onDelete: Cascade)
  284. @@index([token])
  285. @@index([userId])
  286. }
  287. model dept {
  288. deptId Int @id @default(autoincrement())
  289. parentId Int?
  290. ancestors String?
  291. deptName String?
  292. orderNum Int?
  293. status Int @default(0)
  294. delFlag Int @default(0)
  295. createdAt DateTime @default(now())
  296. lastUpdatedAt DateTime @default(now())
  297. dept_users dept_users[]
  298. dept_document dept_document[]
  299. }
  300. model dept_users {
  301. id Int @id @default(autoincrement())
  302. deptId Int
  303. userId Int
  304. createdAt DateTime? @default(now())
  305. updatedAt DateTime? @default(now()) @updatedAt
  306. user users @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: NoAction)
  307. dept dept @relation(fields: [deptId], references: [deptId], onDelete: Cascade, onUpdate: NoAction)
  308. }
  309. model dept_document {
  310. id Int @id @default(autoincrement())
  311. deptId Int
  312. dept dept @relation(fields: [deptId], references: [deptId], onDelete: Cascade)
  313. parsedFileName String
  314. parsedFilePath String
  315. realFileName String
  316. realFileAlias String
  317. realFilePath String
  318. isPublic Int?
  319. tags String?
  320. delTag Boolean @default(false)
  321. createdAt DateTime @default(now())
  322. lastUpdatedAt DateTime @default(now())
  323. }