Agent工程化
本目录面向已经准备把 Agent 从原型推进到生产环境的工程团队。重点不是解释 Agent 为什么有用,而是把“可部署、可回放、可观测、可控成本、可恢复失败、可审计安全”落到工程结构和运行机制上。
核对日期:2026-05-09。
1. 阅读顺序
| 顺序 | 文件 | 解决的问题 |
|---|---|---|
| 1 | Agent项目目录结构 | 一个 Agent 项目应该如何分层,哪些内容必须版本化。 |
| 2 | Prompt工程与版本管理 | Prompt 如何像代码一样评审、发布、回滚和评测。 |
| 3 | 状态管理 | Agent 执行中哪些状态要持久化,如何避免状态污染。 |
| 4 | 会话管理 | 多轮对话、长上下文、用户隔离和会话生命周期。 |
| 5 | 队列与异步任务 | 长任务、后台执行、削峰、任务状态和 worker 设计。 |
| 6 | 幂等性设计 | 重试、重复投递、回放时如何避免重复副作用。 |
| 7 | 缓存策略 | Prompt、检索、工具结果和模型响应的缓存边界。 |
| 8 | 成本控制 | token、模型、工具、批处理和预算护栏。 |
| 9 | 失败重试 | 超时、限流、退避、熔断、降级和补偿。 |
| 10 | 回放与调试 | trace、span、输入快照、确定性回放和事故复盘。 |
| 11 | 部署架构 | API、worker、状态库、队列、观测、安全边界。 |
| 12 | 生产上线清单 | 上线前逐项验收。 |
2. 工程化总原则
Agent 生产系统必须把模型调用当成不稳定外部依赖,把工具调用当成可能产生真实副作用的分布式事务,把上下文当成可能包含敏感数据的运行状态。一个可上线的 Agent 系统至少需要:
- 明确的代码、Prompt、工具 schema、评测集和配置分层。
- 所有外部副作用都有幂等键、审计日志和必要的人类在环审批。
- 会话、状态、trace、成本和安全事件可以关联到同一个
run_id。 - 对模型、工具、检索、队列、缓存都有超时、重试、降级和限流策略。
- 发布前通过离线评测、回归集、红队用例、灰度和回滚验证。
3. 推荐整体架构
4. 与其他目录的边界
- Agent 核心 loop、规划器和执行器的概念,参考
../02-Agent核心架构/与../07-规划与任务分解/。 - 工具调用、MCP、tool schema 的协议细节,参考
../04-工具调用体系/。 - 记忆、RAG、知识库治理,参考
../05-记忆系统/与../06-RAG与知识系统/。 - 离线评测、线上观测和运维告警,参考
../10-Agent评测体系/与../11-可观测性与运维/。 - prompt injection、数据外泄、权限治理,参考
../12-安全与治理/。
本目录只写工程化落地做法,不重复展开其他主题的完整理论。
5. 生产就绪的最低标准
| 维度 | 最低标准 |
|---|---|
| 可靠性 | 有超时、重试、幂等、任务恢复、降级路径。 |
| 可观测性 | 模型调用、工具调用、队列任务、缓存命中、成本都有 trace/span/metric。 |
| 安全 | 工具最小权限、敏感数据脱敏、prompt injection 防护、人类审批。 |
| 可维护性 | Prompt、工具 schema、评测集、配置均可版本化和回滚。 |
| 成本 | 有预算、限额、模型路由、上下文裁剪、缓存和批处理策略。 |
| 上线 | 有 staging、灰度、回滚、事故预案和上线清单。 |
6. 权威资料
- OpenAI Agents SDK 与生产文档: https://developers.openai.com/api/docs/guides/agents
- OpenAI Production best practices: https://developers.openai.com/api/docs/guides/production-best-practices
- OpenAI Deployment checklist: https://developers.openai.com/api/docs/guides/deployment-checklist
- OpenTelemetry Generative AI semantic conventions: https://opentelemetry.io/docs/specs/semconv/gen-ai/
- The Twelve-Factor App: https://12factor.net/
- OWASP Top 10 for LLM Applications: https://owasp.org/www-project-top-10-for-large-language-model-applications/
- NIST AI Risk Management Framework: https://www.nist.gov/itl/ai-risk-management-framework