schema.prisma hardcoded vector(1536), OpenAI ada-002's size. This stack's actual embedding model is nomic-embed-text-v1.5, confirmed 768-dim live against /v1/embeddings. Left as-is, the first insert after a schema push would fail on a pgvector dimension mismatch.
45 lines
1.3 KiB
Plaintext
45 lines
1.3 KiB
Plaintext
// This is your Prisma schema file,
|
|
// learn more about it in the docs: https://pris.ly/d/prisma-schema
|
|
|
|
generator client {
|
|
provider = "prisma-client-py"
|
|
}
|
|
|
|
datasource db {
|
|
provider = "postgresql"
|
|
url = env("DATABASE_URL")
|
|
}
|
|
|
|
model VectorStore {
|
|
id String @id @default(cuid())
|
|
name String
|
|
file_counts Json?
|
|
status String @default("completed")
|
|
usage_bytes Int? @default(0)
|
|
created_at DateTime @default(now())
|
|
expires_after Json?
|
|
expires_at DateTime?
|
|
last_active_at DateTime?
|
|
metadata Json?
|
|
embeddings Embedding[]
|
|
|
|
@@map("vector_stores")
|
|
}
|
|
|
|
model Embedding {
|
|
id String @id @default(cuid())
|
|
vector_store_id String
|
|
content String
|
|
// 768, not OpenAI's ada-002-sized 1536 — this stack's embedding_model is
|
|
// nomic-embed-text-v1.5 (see docker-compose.yml's embedding-server and
|
|
// litellm-config.yaml's local-embedding entry), confirmed 768-dim live
|
|
// against /v1/embeddings. A push with the wrong size here makes every
|
|
// insert fail on a pgvector dimension mismatch.
|
|
embedding Unsupported("vector(768)")
|
|
metadata Json?
|
|
created_at DateTime @default(now())
|
|
|
|
vector_store VectorStore @relation(fields: [vector_store_id], references: [id], onDelete: Cascade)
|
|
|
|
@@map("embeddings")
|
|
} |