71 lines
1.6 KiB
SQL
71 lines
1.6 KiB
SQL
CREATE TABLE users (
|
|
"id" UUID PRIMARY KEY,
|
|
"identifier" TEXT NOT NULL UNIQUE,
|
|
"metadata" JSONB NOT NULL,
|
|
"createdAt" TEXT
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS threads (
|
|
"id" UUID PRIMARY KEY,
|
|
"createdAt" TEXT,
|
|
"name" TEXT,
|
|
"userId" UUID,
|
|
"userIdentifier" TEXT,
|
|
"tags" TEXT[],
|
|
"metadata" JSONB,
|
|
FOREIGN KEY ("userId") REFERENCES users("id") ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS steps (
|
|
"id" UUID PRIMARY KEY,
|
|
"name" TEXT NOT NULL,
|
|
"type" TEXT NOT NULL,
|
|
"threadId" UUID NOT NULL,
|
|
"parentId" UUID,
|
|
"streaming" BOOLEAN NOT NULL,
|
|
"waitForAnswer" BOOLEAN,
|
|
"isError" BOOLEAN,
|
|
"metadata" JSONB,
|
|
"tags" TEXT[],
|
|
"input" TEXT,
|
|
"output" TEXT,
|
|
"createdAt" TEXT,
|
|
"command" TEXT,
|
|
"start" TEXT,
|
|
"end" TEXT,
|
|
"generation" JSONB,
|
|
"showInput" TEXT,
|
|
"language" TEXT,
|
|
"indent" INT,
|
|
"defaultOpen" BOOLEAN,
|
|
"autoCollapse" BOOLEAN,
|
|
"modes" JSONB,
|
|
FOREIGN KEY ("threadId") REFERENCES threads("id") ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS elements (
|
|
"id" UUID PRIMARY KEY,
|
|
"threadId" UUID,
|
|
"type" TEXT,
|
|
"url" TEXT,
|
|
"chainlitKey" TEXT,
|
|
"name" TEXT NOT NULL,
|
|
"display" TEXT,
|
|
"objectKey" TEXT,
|
|
"size" TEXT,
|
|
"page" INT,
|
|
"language" TEXT,
|
|
"forId" UUID,
|
|
"mime" TEXT,
|
|
"props" JSONB,
|
|
FOREIGN KEY ("threadId") REFERENCES threads("id") ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS feedbacks (
|
|
"id" UUID PRIMARY KEY,
|
|
"forId" UUID NOT NULL,
|
|
"threadId" UUID NOT NULL,
|
|
"value" INT NOT NULL,
|
|
"comment" TEXT,
|
|
FOREIGN KEY ("threadId") REFERENCES threads("id") ON DELETE CASCADE
|
|
); |