Anthropic的研究报告指出,在AI代理(AIAgents)的开发中,“Less is More”原则更为有效。报告基于与数十个行业团队的实践合作,发现最成功的AI代理系统并非依赖复杂框架,而是采用简单、可组合的设计模式。
核心观点与关键洞察:
- AI代理的本质:AI代理是“AI代理人”或“AI执行者”,其核心是代表人类执行特定任务的数字化代理人。真正的AI代理应从实际工作流程出发,解决手动流程中的痛点,实现从手动到自动的转变,并注重投资回报率。
- 代理的类型:代理系统分为工作流和代理两种。工作流通过预定义的代码路径编排LLM和工具,而代理则允许LLM动态指导自身的处理过程和工具使用。
- 何时使用代理:建议先寻找最简单的解决方案,仅在必要时增加复杂性。对于明确定义的任务,工作流能提供更好的可预测性和一致性;而对于需要大规模灵活性和模型驱动决策的任务,代理则是更好的选择。
构建模块与工作流:
- 增强型LLM:作为代理系统的基本构建模块,具备检索、工具使用和记忆等功能。
- 工作流类型:
- 提示链:将任务分解为一系列步骤,每个LLM调用处理前一个调用的输出。
- 路由:对输入进行分类,并将其引导至专门的后续任务。
- 并行化:包括分段和投票两种变体,适用于需要多个视角或尝试的场景。
- 编排者-执行者:中央LLM动态分解任务,分配给执行者LLM,并综合结果。
- 评估者-优化者:一个LLM调用生成响应,另一个在循环中提供评估和反馈。
代理的应用场景:
- 客户支持:结合聊天机器人界面与工具集成,适用于需要对话和行动相结合的场景。
- 编码代理:在软件开发领域展现巨大潜力,适用于问题空间定义明确且输出质量可客观衡量的场景。
工具的提示工程:
- 工具定义和规范应得到与整体提示同等的提示工程关注。
- 建议给模型足够的词元来“思考”,保持格式接近模型在互联网上自然遇到的文本,并确保没有格式“开销”。
- 站在模型的角度思考工具定义,测试模型如何使用工具,并对工具进行防错设计。
研究结论:
在LLM领域取得成功的关键在于构建最适合需求的系统。从简单的提示开始,通过全面的评估来优化它们,只有在更简单的解决方案不足以满足需求时,才添加多步骤的代理系统。遵循保持代理设计的简单性、确保透明度、精心设计代理-计算机接口等原则,可以创建既强大又可靠、可维护,并能获得用户信任的代理系统。