2.7 KiB
Prompt 管理中心
后台入口为“系统工具 → Prompt 中心”,用于在不重新发布应用的情况下管理 AI Prompt。
能力
- 模板管理:以稳定的
promptCode和生成类型标识业务 Prompt。 - 版本管理:System Prompt 与 User Prompt 模板均进入不可变版本,支持发布、退役和回滚,并保存 SHA-256 指纹。
- 模型配置:每个版本独立绑定 Provider 和 Model;调试时也可以临时选择可用网关与模型。
- 在线调试:草稿、已发布和已退役版本均可测试,记录输入、输出、模型、耗时、成功状态和人工评分。
- A/B 测试:同一模板下选择两个不可变版本,用相同输入运行对比,统计成功次数、平均耗时与人工评分。
初始化 V1
首次启用后,在 Prompt 中心点击“初始化 V1”。系统会把每个生成类型各自的业务 Prompt 写成 V1 并立即发布,包括对应任务、输出格式和业务约束的 System Prompt、Builder 合约、{{input}} User Prompt 模板和模型网关配置。
初始化是幂等的:处理完全没有版本的模板;早期由系统生成且内容同质化的唯一 V1 会被安全修复。已有人工草稿、后续版本或实验版本的模板都会跳过,不覆盖后台维护内容。
数据库升级
按顺序执行:
sql/factory_prompt_registry.sql- 如果 Prompt 表已在旧版本创建,执行
sql/factory_prompt_user_template_upgrade.sql sql/factory_prompt_lab.sqlsql/prompt_registry_menu.sql
然后将 factory.prompt-registry.database-enabled(环境变量 FACTORY_PROMPT_REGISTRY_DATABASE_ENABLED)设为 true,数据库中的已发布版本才会替代内置 Prompt。关闭时仍使用应用内置资源版本作为安全后备。
结构化上下文契约
前台 AI 生成入口只向 Prompt Registry 传递 JSON 动态上下文。角色设定、输出格式、字段约束、禁止项和纠错规则均由 Prompt 中心的 System Prompt 与 User Prompt 模板控制,User Prompt 模板必须保留 {{input}}。
当前可执行契约使用 context-json:<generateType>:v1。升级前发布的 legacy-builder:* 版本依赖 Java 内置规则,系统会将其视为过期版本并安全回退到资源模板;需要在 Prompt 中心基于新的 JSON 契约创建并发布新版本,才能重新由数据库版本接管。
权限
generator:prompt:list/query/add/editgenerator:prompt:version/publish/rollbackgenerator:prompt:debuggenerator:prompt:experiment
在线调试会真实调用模型并产生费用,也会保存测试输入和输出;生产环境应仅授予可信管理员,并避免输入密钥、个人信息等敏感数据。