init push
This commit is contained in:
142
backend/store/pg/migration/000001_init.up.sql
Normal file
142
backend/store/pg/migration/000001_init.up.sql
Normal file
@@ -0,0 +1,142 @@
|
||||
-- Create "apps" table
|
||||
CREATE TABLE
|
||||
"public"."apps" (
|
||||
"id" text NOT NULL,
|
||||
"kb_id" text NULL,
|
||||
"name" text NULL,
|
||||
"type" smallint NULL,
|
||||
"settings" jsonb NULL,
|
||||
"created_at" timestamptz NULL,
|
||||
"updated_at" timestamptz NULL,
|
||||
PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- Create index "idx_apps_kb_id" to table: "apps"
|
||||
CREATE INDEX "idx_apps_kb_id" ON "public"."apps" ("kb_id");
|
||||
|
||||
-- Create "conversation_messages" table
|
||||
CREATE TABLE
|
||||
"public"."conversation_messages" (
|
||||
"id" text NOT NULL,
|
||||
"conversation_id" text NULL,
|
||||
"app_id" text NULL,
|
||||
"role" text NULL,
|
||||
"content" text NULL,
|
||||
"provider" text NULL,
|
||||
"model" text NULL,
|
||||
"prompt_tokens" bigint NULL DEFAULT 0,
|
||||
"completion_tokens" bigint NULL DEFAULT 0,
|
||||
"total_tokens" bigint NULL DEFAULT 0,
|
||||
"remote_ip" text NULL,
|
||||
"created_at" timestamptz NULL,
|
||||
PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- Create index "idx_conversation_messages_app_id" to table: "conversation_messages"
|
||||
CREATE INDEX "idx_conversation_messages_app_id" ON "public"."conversation_messages" ("app_id");
|
||||
|
||||
-- Create index "idx_conversation_messages_conversation_id" to table: "conversation_messages"
|
||||
CREATE INDEX "idx_conversation_messages_conversation_id" ON "public"."conversation_messages" ("conversation_id");
|
||||
|
||||
-- Create "conversation_references" table
|
||||
CREATE TABLE
|
||||
"public"."conversation_references" (
|
||||
"conversation_id" text NULL,
|
||||
"app_id" text NULL,
|
||||
"node_id" text NULL,
|
||||
"name" text NULL,
|
||||
"url" text NULL,
|
||||
"favicon" text NULL
|
||||
);
|
||||
|
||||
-- Create index "idx_conversation_references_conversation_id" to table: "conversation_references"
|
||||
CREATE INDEX "idx_conversation_references_conversation_id" ON "public"."conversation_references" ("conversation_id");
|
||||
|
||||
-- Create "conversations" table
|
||||
CREATE TABLE
|
||||
"public"."conversations" (
|
||||
"id" text NOT NULL,
|
||||
"nonce" text NULL,
|
||||
"kb_id" text NULL,
|
||||
"app_id" text NULL,
|
||||
"subject" text NULL,
|
||||
"remote_ip" text NULL,
|
||||
"created_at" timestamptz NULL,
|
||||
PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- Create index "idx_conversations_kb_id" to table: "conversations"
|
||||
CREATE INDEX "idx_conversations_kb_id" ON "public"."conversations" ("kb_id");
|
||||
|
||||
-- Create index "idx_conversations_app_id" to table: "conversations"
|
||||
CREATE INDEX "idx_conversations_app_id" ON "public"."conversations" ("app_id");
|
||||
|
||||
-- Create "nodes" table
|
||||
CREATE TABLE
|
||||
"public"."nodes" (
|
||||
"id" text NOT NULL,
|
||||
"kb_id" text NULL,
|
||||
"doc_id" text NULL,
|
||||
"type" smallint,
|
||||
"name" text NULL,
|
||||
"content" text NULL,
|
||||
"meta" jsonb NULL,
|
||||
"parent_id" text NULL,
|
||||
"position" float NULL,
|
||||
"created_at" timestamptz NULL,
|
||||
"updated_at" timestamptz NULL,
|
||||
PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- Create index "idx_nodes_kb_id" to table: "nodes"
|
||||
CREATE INDEX "idx_nodes_kb_id" ON "public"."nodes" ("kb_id");
|
||||
|
||||
-- Create index "idx_nodes_doc_id" to table: "nodes"
|
||||
CREATE INDEX "idx_nodes_doc_id" ON "public"."nodes" ("doc_id");
|
||||
|
||||
-- Create index "idx_nodes_parent_id" to table: "nodes"
|
||||
CREATE INDEX "idx_nodes_parent_id" ON "public"."nodes" ("parent_id");
|
||||
|
||||
-- Create "knowledge_bases" table
|
||||
CREATE TABLE
|
||||
"public"."knowledge_bases" (
|
||||
"id" text NOT NULL,
|
||||
"name" text NULL,
|
||||
"access_settings" jsonb NULL,
|
||||
"created_at" timestamptz NULL,
|
||||
"updated_at" timestamptz NULL,
|
||||
PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- Create "models" table
|
||||
CREATE TABLE
|
||||
"public"."models" (
|
||||
"id" text NOT NULL,
|
||||
"provider" text NULL,
|
||||
"model" text NULL,
|
||||
"api_key" text NULL,
|
||||
"api_header" text NULL,
|
||||
"base_url" text NULL,
|
||||
"api_version" text NULL,
|
||||
"prompt_tokens" bigint NULL DEFAULT 0,
|
||||
"completion_tokens" bigint NULL DEFAULT 0,
|
||||
"total_tokens" bigint NULL DEFAULT 0,
|
||||
"created_at" timestamptz NULL,
|
||||
"updated_at" timestamptz NULL,
|
||||
"is_active" boolean NULL DEFAULT false,
|
||||
PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- Create "users" table
|
||||
CREATE TABLE
|
||||
"public"."users" (
|
||||
"id" text NOT NULL,
|
||||
"account" text NULL,
|
||||
"password" text NULL,
|
||||
"created_at" timestamptz NULL,
|
||||
"last_access" timestamptz NULL,
|
||||
PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- Create index "idx_users_account" to table: "users"
|
||||
CREATE UNIQUE INDEX "idx_users_account" ON "public"."users" ("account");
|
||||
Reference in New Issue
Block a user