ai_skill.sql
1.64 KB
-- ai_skill:技能表(rearch3 §7)。技能 = 业务流程的权威步骤文本,模型用 useSkill 载入后照步骤执行。
--
-- 数据源切换开关 = **本表是否存在**(非行数):
-- 表存在 → SkillService 一律只读本表(空表 = 用户要的无技能场景;1 行 = 用户自定义),绝不读 war 包。
-- 表不存在 → 读 war 包内置 skills/*.md。
-- DB 瞬时故障 ≠ 回落 war 包(按无技能降级 + 告警,防止用户自定义被默默换回出厂版)。
-- 因此**建表必须与导入默认技能同一批执行**(建表瞬间即切断包读取)——种子由
-- sql/gen_ai_skill_sql.py 从 src/main/resources/skills/*.md 生成(见 ai_skill_seed.sql)。
--
-- bEnabled:true 载入 / false 不载入,用户可随意设置(与技能内容一样完全自助)。
-- 旧版 ai_skill(sWhenToUse/sInstructions/sSuggested 草稿,引用已删除的工具)已废弃:DROP 重建。
DROP TABLE IF EXISTS ai_skill;
CREATE TABLE ai_skill (
sId varchar(64) NOT NULL PRIMARY KEY,
sName varchar(64) NOT NULL, -- 技能名(useSkill 的入参,进 system prompt 索引)
sBrief varchar(255) NOT NULL, -- 一句话用途(进 system prompt 索引)
sBody text NOT NULL, -- 技能全文(useSkill 载入,≤600 token)
bEnabled tinyint NOT NULL DEFAULT 1,
sUpdatePerson varchar(64) NULL,
tCreateDate datetime NULL DEFAULT CURRENT_TIMESTAMP,
tUpdateDate datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
UNIQUE KEY uk_name (sName)
);