Files
deepdata/scripts/db/data-evaluation-init.sql
T
figmar 7bbc9d4ef0
CodeQL Advanced / Analyze (actions) (push) Canceled after 0s
CodeQL Advanced / Analyze (java-kotlin) (push) Canceled after 0s
CodeQL Advanced / Analyze (javascript-typescript) (push) Canceled after 0s
CodeQL Advanced / Analyze (python) (push) Canceled after 0s
Docker Image Build & Push / manifest (push) Canceled after 0s
Docker Image Build & Push / manifest (push) Canceled after 0s
Docker Image Build & Push / manifest (push) Canceled after 0s
Docker Image Build & Push / build-and-push-arm (push) Canceled after 0s
Docker Image Build & Push / build-and-push-amd (push) Canceled after 0s
Docker Image Build & Push / build-and-push-arm (push) Canceled after 0s
Docker Image Build & Push / build-and-push-amd (push) Canceled after 0s
Docker Image Build & Push / build-and-push-arm (push) Canceled after 0s
Docker Image Build & Push / build-and-push-amd (push) Canceled after 0s
Deer Flow Docker Image CI / build-and-push-amd (push) Canceled after 0s
Deer Flow Docker Image CI / build-and-push-arm (push) Canceled after 0s
Deer Flow Docker Image CI / manifest (push) Canceled after 0s
Docker Image Build & Push / manifest (push) Canceled after 0s
Docker Image Build & Push / build-and-push-arm (push) Canceled after 0s
Docker Image Build & Push / build-and-push-amd (push) Canceled after 0s
Docker Image Build & Push / manifest (push) Canceled after 0s
Docker Image Build & Push / build-and-push-arm (push) Canceled after 0s
Docker Image Build & Push / build-and-push-amd (push) Canceled after 0s
Docker Image Build & Push / manifest (push) Canceled after 0s
Docker Image Build & Push / build-and-push-arm (push) Canceled after 0s
Docker Image Build & Push / build-and-push-amd (push) Canceled after 0s
Docker Image Build & Push / manifest (push) Canceled after 0s
Docker Image Build & Push / build-and-push-arm (push) Canceled after 0s
Docker Image Build & Push / build-and-push-amd (push) Canceled after 0s
Python Backend Docker Image CI / Build and Push Backend Python Docker Image (push) Canceled after 0s
Backend Docker Image CI / Build and Push Backend Docker Image (push) Canceled after 0s
Database Docker Image CI / Build and Push Database Docker Image (push) Canceled after 0s
Frontend Docker Image CI / Build and Push Frontend Docker Image (push) Canceled after 0s
Gateway Docker Image CI / Build and Push Gateway Docker Image (push) Canceled after 0s
Label Studio Docker Image CI / Build and Push Label Studio Docker Image (push) Canceled after 0s
Runtime Docker Image CI / Build and Push Runtime Docker Image (push) Canceled after 0s
deepdata: delivery stack (docker compose, helm, CI, build scripts)
2026-08-30 19:23:42 +08:00

152 lines
6.3 KiB
PL/PgSQL

-- 使用现有的deepdata数据库
\c deepdata;
-- 评估任务表
CREATE TABLE IF NOT EXISTS t_de_eval_task (
id VARCHAR(36) PRIMARY KEY,
name VARCHAR(255) NOT NULL,
description TEXT,
task_type VARCHAR(50) NOT NULL,
source_type VARCHAR(36),
source_id VARCHAR(36),
source_name VARCHAR(255),
status VARCHAR(50) DEFAULT 'PENDING',
eval_method VARCHAR(50) DEFAULT 'AUTO',
eval_process DOUBLE PRECISION NOT NULL DEFAULT 0,
eval_prompt TEXT,
eval_config TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
created_by VARCHAR(255),
updated_by VARCHAR(255)
);
-- 添加注释
COMMENT ON TABLE t_de_eval_task IS '评估任务表(UUID 主键)';
COMMENT ON COLUMN t_de_eval_task.id IS 'UUID';
COMMENT ON COLUMN t_de_eval_task.name IS '评估任务名称';
COMMENT ON COLUMN t_de_eval_task.description IS '评估任务描述';
COMMENT ON COLUMN t_de_eval_task.task_type IS '评估任务类型:QA';
COMMENT ON COLUMN t_de_eval_task.source_type IS '待评估对象类型:DATASET/SYNTHESIS';
COMMENT ON COLUMN t_de_eval_task.source_id IS '待评估对象ID';
COMMENT ON COLUMN t_de_eval_task.source_name IS '待评估对象名称';
COMMENT ON COLUMN t_de_eval_task.status IS '状态:PENDING/RUNNING/COMPLETED/STOPPED/FAILED';
COMMENT ON COLUMN t_de_eval_task.eval_method IS '评估方式:AUTO/MANUAL';
COMMENT ON COLUMN t_de_eval_task.eval_process IS '评估进度';
COMMENT ON COLUMN t_de_eval_task.eval_prompt IS '评估提示词';
COMMENT ON COLUMN t_de_eval_task.eval_config IS '评估配置';
COMMENT ON COLUMN t_de_eval_task.created_at IS '创建时间';
COMMENT ON COLUMN t_de_eval_task.updated_at IS '更新时间';
COMMENT ON COLUMN t_de_eval_task.created_by IS '创建者';
COMMENT ON COLUMN t_de_eval_task.updated_by IS '更新者';
-- 创建索引
CREATE INDEX IF NOT EXISTS idx_de_eval_task_status ON t_de_eval_task(status);
CREATE INDEX IF NOT EXISTS idx_de_eval_task_created_at ON t_de_eval_task(created_at);
CREATE INDEX IF NOT EXISTS idx_de_eval_task_source_id ON t_de_eval_task(source_id);
-- 评估文件表
CREATE TABLE IF NOT EXISTS t_de_eval_file (
id VARCHAR(36) PRIMARY KEY,
task_id VARCHAR(36) NOT NULL,
file_id VARCHAR(36),
file_name VARCHAR(255),
total_count INTEGER DEFAULT 0,
evaluated_count INTEGER DEFAULT 0,
error_message TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
created_by VARCHAR(255),
updated_by VARCHAR(255)
);
-- 添加注释
COMMENT ON TABLE t_de_eval_file IS '评估文件表(UUID 主键)';
COMMENT ON COLUMN t_de_eval_file.id IS 'UUID';
COMMENT ON COLUMN t_de_eval_file.task_id IS '评估任务ID';
COMMENT ON COLUMN t_de_eval_file.file_id IS '文件ID';
COMMENT ON COLUMN t_de_eval_file.file_name IS '文件名';
COMMENT ON COLUMN t_de_eval_file.total_count IS '总数';
COMMENT ON COLUMN t_de_eval_file.evaluated_count IS '已评估数';
COMMENT ON COLUMN t_de_eval_file.error_message IS '错误信息';
COMMENT ON COLUMN t_de_eval_file.created_at IS '创建时间';
COMMENT ON COLUMN t_de_eval_file.updated_at IS '更新时间';
COMMENT ON COLUMN t_de_eval_file.created_by IS '创建者';
COMMENT ON COLUMN t_de_eval_file.updated_by IS '更新者';
-- 创建索引
CREATE INDEX IF NOT EXISTS idx_de_eval_file_task_id ON t_de_eval_file(task_id);
CREATE INDEX IF NOT EXISTS idx_de_eval_file_file_id ON t_de_eval_file(file_id);
-- 评估条目表
CREATE TABLE IF NOT EXISTS t_de_eval_item (
id VARCHAR(36) PRIMARY KEY,
task_id VARCHAR(36) NOT NULL,
file_id VARCHAR(36),
item_id VARCHAR(36) NOT NULL,
eval_content TEXT,
eval_score DOUBLE PRECISION NOT NULL DEFAULT 0,
eval_result TEXT,
status VARCHAR(50) DEFAULT 'PENDING',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
created_by VARCHAR(255),
updated_by VARCHAR(255)
);
-- 添加注释
COMMENT ON TABLE t_de_eval_item IS '评估条目表(UUID 主键)';
COMMENT ON COLUMN t_de_eval_item.id IS 'UUID';
COMMENT ON COLUMN t_de_eval_item.task_id IS '评估任务ID';
COMMENT ON COLUMN t_de_eval_item.file_id IS '文件ID';
COMMENT ON COLUMN t_de_eval_item.item_id IS '评估条目ID';
COMMENT ON COLUMN t_de_eval_item.eval_content IS '评估内容';
COMMENT ON COLUMN t_de_eval_item.eval_score IS '评估分数';
COMMENT ON COLUMN t_de_eval_item.eval_result IS '评估结果';
COMMENT ON COLUMN t_de_eval_item.status IS '状态:PENDING/EVALUATED';
COMMENT ON COLUMN t_de_eval_item.created_at IS '创建时间';
COMMENT ON COLUMN t_de_eval_item.updated_at IS '更新时间';
COMMENT ON COLUMN t_de_eval_item.created_by IS '创建者';
COMMENT ON COLUMN t_de_eval_item.updated_by IS '更新者';
-- 创建索引
CREATE INDEX IF NOT EXISTS idx_de_eval_item_task_id ON t_de_eval_item(task_id);
CREATE INDEX IF NOT EXISTS idx_de_eval_item_file_id ON t_de_eval_item(file_id);
CREATE INDEX IF NOT EXISTS idx_de_eval_item_status ON t_de_eval_item(status);
CREATE INDEX IF NOT EXISTS idx_de_eval_item_item_id ON t_de_eval_item(item_id);
-- 创建外键约束
ALTER TABLE t_de_eval_file ADD CONSTRAINT fk_de_eval_file_task FOREIGN KEY (task_id)
REFERENCES t_de_eval_task(id) ON DELETE CASCADE;
ALTER TABLE t_de_eval_item ADD CONSTRAINT fk_de_eval_item_task FOREIGN KEY (task_id)
REFERENCES t_de_eval_task(id) ON DELETE CASCADE;
-- 创建触发器用于自动更新 updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $$
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP;
RETURN NEW;
END;
$$ language 'plpgsql';
-- 为各个表创建触发器
DROP TRIGGER IF EXISTS update_de_eval_task_updated_at ON t_de_eval_task;
CREATE TRIGGER update_de_eval_task_updated_at
BEFORE UPDATE ON t_de_eval_task
FOR EACH ROW
EXECUTE FUNCTION update_updated_at_column();
DROP TRIGGER IF EXISTS update_de_eval_file_updated_at ON t_de_eval_file;
CREATE TRIGGER update_de_eval_file_updated_at
BEFORE UPDATE ON t_de_eval_file
FOR EACH ROW
EXECUTE FUNCTION update_updated_at_column();
DROP TRIGGER IF EXISTS update_de_eval_item_updated_at ON t_de_eval_item;
CREATE TRIGGER update_de_eval_item_updated_at
BEFORE UPDATE ON t_de_eval_item
FOR EACH ROW
EXECUTE FUNCTION update_updated_at_column();