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.
 
 
 
 

343 lines
12 KiB

generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "sqlite"
url = "file:../storage/anythingllm.db"
}
model api_keys {
id Int @id @default(autoincrement())
secret String? @unique
createdBy Int?
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
}
model workspace_documents {
id Int @id @default(autoincrement())
docId String @unique
filename String
docpath String
workspaceId Int
metadata String?
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
pinned Boolean? @default(false)
watched Boolean? @default(false)
document_sync_queues document_sync_queues?
workspace workspaces @relation(fields: [workspaceId], references: [id])
}
model invites {
id Int @id @default(autoincrement())
code String @unique
status String @default("pending")
claimedBy Int?
createdAt DateTime @default(now())
createdBy Int
lastUpdatedAt DateTime @default(now())
workspaceIds String?
}
model system_settings {
id Int @id @default(autoincrement())
label String @unique
value String?
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
}
model users {
id Int @id @default(autoincrement())
username String? @unique
password String
role String @default("default")
suspended Int @default(0)
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
pfpFilename String?
seen_recovery_codes Boolean? @default(false)
dailyMessageLimit Int?
browser_extension_api_keys browser_extension_api_keys[]
dept_users dept_users[]
embed_chats embed_chats[]
embed_configs embed_configs[]
password_reset_tokens password_reset_tokens[]
recovery_codes recovery_codes[]
slash_command_presets slash_command_presets[]
temporary_auth_tokens temporary_auth_tokens[]
workspace_agent_invocations workspace_agent_invocations[]
workspace_chats workspace_chats[]
threads workspace_threads[]
workspace_users workspace_users[]
}
model recovery_codes {
id Int @id @default(autoincrement())
user_id Int
code_hash String
createdAt DateTime @default(now())
user users @relation(fields: [user_id], references: [id], onDelete: Cascade)
@@index([user_id])
}
model password_reset_tokens {
id Int @id @default(autoincrement())
user_id Int
token String @unique
expiresAt DateTime
createdAt DateTime @default(now())
user users @relation(fields: [user_id], references: [id], onDelete: Cascade)
@@index([user_id])
}
model document_vectors {
id Int @id @default(autoincrement())
docId String
vectorId String
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
}
model welcome_messages {
id Int @id @default(autoincrement())
user String
response String
orderIndex Int?
createdAt DateTime @default(now())
}
model workspaces {
id Int @id @default(autoincrement())
name String
slug String @unique
vectorTag String?
createdAt DateTime @default(now())
openAiTemp Float?
openAiHistory Int @default(20)
lastUpdatedAt DateTime @default(now())
openAiPrompt String?
similarityThreshold Float? @default(0.25)
chatModel String?
topN Int? @default(4)
chatMode String? @default("chat")
pfpFilename String?
chatProvider String?
agentModel String?
agentProvider String?
queryRefusalResponse String?
vectorSearchMode String? @default("default")
embed_configs embed_configs[]
workspace_agent_invocations workspace_agent_invocations[]
documents workspace_documents[]
workspace_suggested_messages workspace_suggested_messages[]
threads workspace_threads[]
workspace_users workspace_users[]
}
model workspace_threads {
id Int @id @default(autoincrement())
name String
slug String @unique
workspace_id Int
user_id Int?
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
user users? @relation(fields: [user_id], references: [id], onDelete: Cascade)
workspace workspaces @relation(fields: [workspace_id], references: [id], onDelete: Cascade)
@@index([workspace_id])
@@index([user_id])
}
model workspace_suggested_messages {
id Int @id @default(autoincrement())
workspaceId Int
heading String
message String
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
workspace workspaces @relation(fields: [workspaceId], references: [id], onDelete: Cascade)
@@index([workspaceId])
}
model workspace_chats {
id Int @id @default(autoincrement())
workspaceId Int
prompt String
response String
include Boolean @default(true)
user_id Int?
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
thread_id Int?
feedbackScore Boolean?
api_session_id String?
users users? @relation(fields: [user_id], references: [id], onDelete: Cascade)
}
model workspace_agent_invocations {
id Int @id @default(autoincrement())
uuid String @unique
prompt String
closed Boolean @default(false)
user_id Int?
thread_id Int?
workspace_id Int
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
workspace workspaces @relation(fields: [workspace_id], references: [id], onDelete: Cascade)
user users? @relation(fields: [user_id], references: [id], onDelete: Cascade)
@@index([uuid])
}
model workspace_users {
id Int @id @default(autoincrement())
user_id Int
workspace_id Int
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
users users @relation(fields: [user_id], references: [id], onDelete: Cascade)
workspaces workspaces @relation(fields: [workspace_id], references: [id], onDelete: Cascade)
}
model cache_data {
id Int @id @default(autoincrement())
name String
data String
belongsTo String?
byId Int?
expiresAt DateTime?
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
}
model embed_configs {
id Int @id @default(autoincrement())
uuid String @unique
enabled Boolean @default(false)
chat_mode String @default("query")
allowlist_domains String?
allow_model_override Boolean @default(false)
allow_temperature_override Boolean @default(false)
allow_prompt_override Boolean @default(false)
max_chats_per_day Int?
max_chats_per_session Int?
workspace_id Int
createdBy Int?
usersId Int?
createdAt DateTime @default(now())
embed_chats embed_chats[]
users users? @relation(fields: [usersId], references: [id])
workspace workspaces @relation(fields: [workspace_id], references: [id], onDelete: Cascade)
}
model embed_chats {
id Int @id @default(autoincrement())
prompt String
response String
session_id String
include Boolean @default(true)
connection_information String?
embed_id Int
usersId Int?
createdAt DateTime @default(now())
users users? @relation(fields: [usersId], references: [id])
embed_config embed_configs @relation(fields: [embed_id], references: [id], onDelete: Cascade)
}
model event_logs {
id Int @id @default(autoincrement())
event String
metadata String?
userId Int?
occurredAt DateTime @default(now())
@@index([event])
}
model slash_command_presets {
id Int @id @default(autoincrement())
command String
prompt String
description String
uid Int @default(0)
userId Int?
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
user users? @relation(fields: [userId], references: [id], onDelete: Cascade)
@@unique([uid, command])
}
model document_sync_queues {
id Int @id @default(autoincrement())
staleAfterMs Int @default(604800000)
nextSyncAt DateTime
createdAt DateTime @default(now())
lastSyncedAt DateTime @default(now())
workspaceDocId Int @unique
runs document_sync_executions[]
workspaceDoc workspace_documents @relation(fields: [workspaceDocId], references: [id], onDelete: Cascade)
}
model document_sync_executions {
id Int @id @default(autoincrement())
queueId Int
status String @default("unknown")
result String?
createdAt DateTime @default(now())
queue document_sync_queues @relation(fields: [queueId], references: [id], onDelete: Cascade)
}
model browser_extension_api_keys {
id Int @id @default(autoincrement())
key String @unique
user_id Int?
createdAt DateTime @default(now())
lastUpdatedAt DateTime @updatedAt
user users? @relation(fields: [user_id], references: [id], onDelete: Cascade)
@@index([user_id])
}
model temporary_auth_tokens {
id Int @id @default(autoincrement())
token String @unique
userId Int
expiresAt DateTime
createdAt DateTime @default(now())
user users @relation(fields: [userId], references: [id], onDelete: Cascade)
@@index([token])
@@index([userId])
}
model dept {
deptId Int @id @default(autoincrement())
parentId Int?
ancestors String?
deptName String?
orderNum Int?
status Int @default(0)
delFlag Int @default(0)
createdAt DateTime @default(now())
lastUpdatedAt DateTime @default(now())
dept_users dept_users[]
}
model dept_users {
id Int @id @default(autoincrement())
deptId Int
userId Int
createdAt DateTime? @default(now())
updatedAt DateTime? @default(now()) @updatedAt
user users @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: NoAction)
dept dept @relation(fields: [deptId], references: [deptId], onDelete: Cascade, onUpdate: NoAction)
}