12-Factor Agents - 构建可靠LLM应用的设计原则
12-Factor Agents - 构建可靠LLM应用的设计原则 12-Factor Agents 构建可靠LLM应用的设计原则 12-Factor Agents是一套方法论,就像软件开发领域的"12-Factor App"原则一样,它把传统软件工程里经过验证的最佳实践,创造性地用到了大模型驱动的Agent开发里。其核心目标是弥补Agent从原型开发到生产级应用的鸿沟,让Agent在可靠性、可伸缩性、可维护性、可调试性和安全性上,达到企业级应用的标准。 psychology settings integration_instructions 1 自然语言到工具调用 将用户自然语言指令结构化转换为API调用,利用LLM的意图识别能力 2 掌控你的提示词 开发者应完全控制LLM的提示词,提示词应像代码一样被设计、版本控制和测试 3 掌控你的上下文窗口 主动管理和构建传递给LLM的上下文信息,包含LLM决策所需的一切信息 4 工具只是结构化输出 Agent中工具调用的本质是LLM生成的结构化数据,触发确定性代码执行 5 统一执行状态和业务状态 简化并统一执行状态和业务状态,Agent执行状态可从上下文窗口推断 6 通过简单API启动/暂停/恢复 为Agent提供简单、直观的API接口,方便各种系统轻松交互 7 通过工具调用联系人工 LLM通过工具调用明确与人工交互,而不是直接输出自然语言请求 8 掌控你的控制流 开发者应完全控制Agent的控制流,而不是依赖框架的预设流程 9 将错误压缩到上下文窗口 将错误信息压缩并整合到上下文窗口中,以便LLM能够理解和处理错误 10 小而专注的Agent 构建小型、专注的Agent,每个Agent负责特定任务,而不是大型多功能Agent 11 从任何地方触发,在用户所在的地方与他们见面 Agent应能从各种渠道触发,并在用户所在的地方交互 12 使你的Agent成为一个无状态的reducer Agent应设计为无状态的reducer,接收输入状态并返回新状态 这套原则不是一个像LangChain这样可以直接拿来用的"工具箱",而是一套"方法论",帮助开发者构建生产级的LLM应用。