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
112 lines
5.3 KiB
PL/PgSQL
112 lines
5.3 KiB
PL/PgSQL
-- 使用现有的deepdata数据库
|
||
\c deepdata;
|
||
|
||
-- 模型配置表
|
||
CREATE TABLE IF NOT EXISTS t_models
|
||
(
|
||
id VARCHAR(36) PRIMARY KEY,
|
||
model_name VARCHAR(100) NOT NULL,
|
||
provider VARCHAR(50) NOT NULL,
|
||
base_url VARCHAR(255) NOT NULL,
|
||
api_key VARCHAR(512) DEFAULT '',
|
||
type VARCHAR(50) NOT NULL,
|
||
is_enabled BOOLEAN DEFAULT TRUE,
|
||
is_default BOOLEAN DEFAULT FALSE,
|
||
is_deleted BOOLEAN DEFAULT FALSE,
|
||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||
created_by VARCHAR(255),
|
||
updated_by VARCHAR(255)
|
||
);
|
||
|
||
-- 添加注释
|
||
COMMENT ON TABLE t_models IS '模型配置表';
|
||
COMMENT ON COLUMN t_models.id IS '主键ID';
|
||
COMMENT ON COLUMN t_models.model_name IS '模型名称(如 qwen2)';
|
||
COMMENT ON COLUMN t_models.provider IS '模型提供商(如 Ollama、OpenAI、DeepSeek)';
|
||
COMMENT ON COLUMN t_models.base_url IS 'API 基础地址';
|
||
COMMENT ON COLUMN t_models.api_key IS 'API 密钥(无密钥则为空)';
|
||
COMMENT ON COLUMN t_models.type IS '模型类型(如 chat、embedding)';
|
||
COMMENT ON COLUMN t_models.is_enabled IS '是否启用:1-启用,0-禁用';
|
||
COMMENT ON COLUMN t_models.is_default IS '是否默认:1-默认,0-非默认';
|
||
COMMENT ON COLUMN t_models.is_deleted IS '是否删除:1-已删除,0-未删除';
|
||
COMMENT ON COLUMN t_models.created_at IS '创建时间';
|
||
COMMENT ON COLUMN t_models.updated_at IS '更新时间';
|
||
COMMENT ON COLUMN t_models.created_by IS '创建者';
|
||
COMMENT ON COLUMN t_models.updated_by IS '更新者';
|
||
|
||
-- 添加唯一约束
|
||
ALTER TABLE t_models
|
||
ADD CONSTRAINT uk_model_provider
|
||
UNIQUE (model_name, provider, created_by);
|
||
|
||
COMMENT ON CONSTRAINT uk_model_provider ON t_models
|
||
IS '避免同一提供商下模型名称重复';
|
||
|
||
-- 创建触发器用于自动更新 updated_at
|
||
CREATE OR REPLACE FUNCTION update_updated_at_column()
|
||
RETURNS TRIGGER AS $$
|
||
BEGIN
|
||
NEW.updated_at = CURRENT_TIMESTAMP;
|
||
RETURN NEW;
|
||
END;
|
||
$$ language 'plpgsql';
|
||
|
||
CREATE TRIGGER update_t_models_updated_at
|
||
BEFORE UPDATE ON t_models
|
||
FOR EACH ROW
|
||
EXECUTE FUNCTION update_updated_at_column();
|
||
|
||
-- 设置管理表
|
||
CREATE TABLE IF NOT EXISTS t_sys_param
|
||
(
|
||
id VARCHAR(100) PRIMARY KEY,
|
||
param_value TEXT NOT NULL,
|
||
param_type VARCHAR(50) DEFAULT 'string',
|
||
option_list TEXT,
|
||
description VARCHAR(255) DEFAULT '',
|
||
is_built_in BOOLEAN DEFAULT FALSE,
|
||
can_modify BOOLEAN DEFAULT TRUE,
|
||
is_enabled BOOLEAN DEFAULT TRUE,
|
||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||
created_by VARCHAR(255),
|
||
updated_by VARCHAR(255)
|
||
);
|
||
|
||
-- 添加注释
|
||
COMMENT ON TABLE t_sys_param IS '设置管理表';
|
||
COMMENT ON COLUMN t_sys_param.id IS '主键ID,设置项键';
|
||
COMMENT ON COLUMN t_sys_param.param_value IS '设置项值';
|
||
COMMENT ON COLUMN t_sys_param.param_type IS '设置项类型(仅 string、number、boolean 三种类型)';
|
||
COMMENT ON COLUMN t_sys_param.option_list IS '选项列表(逗号分隔,仅对 enum 类型有效)';
|
||
COMMENT ON COLUMN t_sys_param.description IS '设置项描述';
|
||
COMMENT ON COLUMN t_sys_param.is_built_in IS '是否内置:1-是,0-否';
|
||
COMMENT ON COLUMN t_sys_param.can_modify IS '是否可修改:1-可修改,0-不可修改';
|
||
COMMENT ON COLUMN t_sys_param.is_enabled IS '是否启用:1-启用,0-禁用';
|
||
COMMENT ON COLUMN t_sys_param.created_at IS '创建时间';
|
||
COMMENT ON COLUMN t_sys_param.updated_at IS '更新时间';
|
||
COMMENT ON COLUMN t_sys_param.created_by IS '创建者';
|
||
COMMENT ON COLUMN t_sys_param.updated_by IS '更新者';
|
||
|
||
-- 创建触发器
|
||
DROP TRIGGER IF EXISTS update_t_sys_param_updated_at ON t_sys_param;
|
||
CREATE TRIGGER update_t_sys_param_updated_at
|
||
BEFORE UPDATE ON t_sys_param
|
||
FOR EACH ROW
|
||
EXECUTE FUNCTION update_updated_at_column();
|
||
|
||
-- 插入初始数据
|
||
INSERT INTO t_sys_param (id, param_value, param_type, option_list, description, is_built_in,
|
||
can_modify, is_enabled, created_by, updated_by)
|
||
VALUES
|
||
('sys.knowledge.base.count', '200', 'number', '10,200,500', '知识库最大数量', true, true, true, 'system', 'system'),
|
||
('SEARCH_API', 'tavily', 'string', 'tavily,infoquest,duckduckgo,brave_search,arxiv', 'deepflow使用的搜索引擎', true, true, true, 'system', 'system'),
|
||
('TAVILY_API_KEY', 'tvly-dev-xxx', 'string', '', 'deepflow使用的搜索引擎所需的apiKey', true, true, true, 'system', 'system'),
|
||
('BRAVE_SEARCH_API_KEY', 'api-xxx', 'string', '', 'deepflow使用的搜索引擎所需的apiKey', true, true, true, 'system', 'system'),
|
||
('JINA_API_KEY', '', 'string', '', 'deepflow使用的JINA搜索引擎所需的apiKey', true, true, true, 'system', 'system'),
|
||
('sys.management.dataset.pvc.name', 'deepdata-dataset-pvc', 'string', '', '数据集所在pvc名称', true, false,true, 'system', 'system'),
|
||
('DATA_JUICER_EXECUTOR', 'default', 'string', 'default,ray', 'data-juicer使用的执行器', true, true, true, 'system', 'system'),
|
||
('sys.home.page.url', '', 'string', '', '首页URL,访问根路径时自动重定向到此URL(为空则不重定向)', true, true, true, 'system', 'system')
|
||
ON CONFLICT (id) DO NOTHING;
|