Lesson 08 · 没有 prompt 版本管理 → 出错无法回滚定位¶
Problem¶
生产 AI 系统上线 3-6 个月: - 客户报"某类问题最近答错很多" - 工程师查, prompt 已经被 3 个人随手改过 5 次 - 谁改的? 什么改的? 什么时间改的? 都查不到 - 回滚? 不知道回到哪一版是好的 - SRE / QA 说"AI 系统不像代码, 无法灰度回滚" - 客户信任下降
Root Cause¶
Prompt 被当成"配置"随手改, 没纳入版本控制.
常见触发: - 工程师在 dashboard 上直接编辑 prompt - Prompt 存在环境变量或数据库配置 - 没有 PR / code review 流程 - 生产 vs 测试 vs 开发 prompt 混乱 - 没有 A/B 灰度机制 - 审计日志只记 "用户 query + 答案", 不记 prompt 版本
Fix¶
Prompt 独立版本库 · Git 化管理:
- Prompt 独立 git repo (或 monorepo 单独子目录)
- 每次改必 PR — code review · 描述改动理由 · benchmark 结果附上
- 版本号规范 — semver (v1.2.3), major=行为变化, minor=非兼容改进, patch=小调整
- A/B 灰度: 生产 5% → 20% → 50% → 100%, 每档观察 1-3 天
- 全量审计日志: 每个请求记录
{prompt_version, model_version, retrieval_version, timestamp} - 回滚机制: 30 秒内可回滚到任一历史版本
工具选择: - 简单: Git repo + Python dict / YAML 文件加载 - 中等: PromptLayer / Langfuse (可视化 + 版本 + A/B) - 复杂: 自建 prompt platform + feature flag 系统
How to Avoid¶
- 架构评审必含 prompt 版本管理方案
- 上线前必有 rollback 演练 (真实回滚一次)
- CI/CD 流水线加 prompt lint + benchmark 门槛
- 值班 SOP 中回滚流程明确 (30 秒内可执行)
- 观测 dashboard 展示 prompt 版本分布 / 版本切换时间线
Related cases¶
- Case 08 · SOE 4 层合同法审 Agent — 各层独立 prompt 版本
- Case 14 · AIOps 三源根因 — LLM 关联 prompt 全版本审计
- Case 15 · CI/CD LLM 代码审查 — 每次 PR 触发 prompt benchmark
Related how-tos¶
避坑成本估算: 无版本管理 = 生产事故上升到 CTO + 用户信任下降 + 6 个月内不敢再改 prompt (系统腐烂).
下一步: 30 min prompt 治理对齐