refactor(model): 重构模型实体和数据访问层
This commit is contained in:
28
update.sql
28
update.sql
@@ -40,9 +40,18 @@ CREATE TABLE IF NOT EXISTS asynch_models (
|
||||
retry_queue_max_seconds INT NOT NULL DEFAULT 600, -- 失败重试最大排队时间(秒 0=插队到队首;>0=排队超过该时间后插队,否则仍到队尾)
|
||||
auto_clean_seconds INT NOT NULL DEFAULT 86400, -- 已下载(state=4 后的保留时间(秒),到期清理)
|
||||
remark TEXT DEFAULT '' -- 备注
|
||||
token_mapping VARCHAR(128) NOT NULL DEFAULT ''; -- token 映射
|
||||
);
|
||||
|
||||
response_token_field VARCHAR(128) NOT NULL DEFAULT ''; -- 响应中消耗token的字段映射
|
||||
operator_name VARCHAR(64) NOT NULL DEFAULT '', -- 运营商名称
|
||||
token_config JSONB NOT NULL DEFAULT '{
|
||||
"zh_ratio": 1.0,
|
||||
"en_ratio": 1.3,
|
||||
"space_ratio": 0.1,
|
||||
"punctuation_ratio": 0.1,
|
||||
"max_window_size": 8192,
|
||||
"reserve_ratio": 0.2,
|
||||
"min_reserve": 512,
|
||||
}'::jsonb -- Token配置
|
||||
);
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS uk_asynch_models_tenant_creator_chat ON asynch_models(tenant_id, creator) WHERE is_chat_model = 1 AND deleted_at IS NULL;
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS uk_asynch_models_tenant_model_name ON asynch_models(tenant_id, creator, model_name);
|
||||
CREATE INDEX IF NOT EXISTS idx_asynch_models_tenant_id ON asynch_models(tenant_id);
|
||||
@@ -83,8 +92,17 @@ COMMENT ON COLUMN asynch_models.retry_times IS '失败重试次数';
|
||||
COMMENT ON COLUMN asynch_models.retry_queue_max_seconds IS '失败重试最大排队时间(秒 0=插队到队首;>0=排队超过该时间后插队,否则仍到队尾)';
|
||||
COMMENT ON COLUMN asynch_models.auto_clean_seconds IS '已下载(state=4 后的保留时间(秒),到期清理)';
|
||||
COMMENT ON COLUMN asynch_models.remark IS '备注';
|
||||
COMMENT ON COLUMN asynch_models.token_mapping IS 'token映射';
|
||||
|
||||
COMMENT ON COLUMN asynch_models.response_token_field IS '响应中消耗token的字段映射';
|
||||
COMMENT ON COLUMN asynch_models.operator_name IS '运营商名称';
|
||||
COMMENT ON COLUMN asynch_models.token_config IS '{
|
||||
"zh_ratio": 1.0, // 中文字符→token系数
|
||||
"en_ratio": 1.3, // 英文单词→token系数
|
||||
"space_ratio": 0.1, // 空格系数
|
||||
"punctuation_ratio": 0.1, // 标点系数
|
||||
"max_window_size": 8192, // 模型最大窗口
|
||||
"reserve_ratio": 0.2, // 预留回复空间比例
|
||||
"min_reserve": 512, // 最少预留token数
|
||||
}';
|
||||
|
||||
|
||||
-- =========================
|
||||
|
||||
Reference in New Issue
Block a user