建立有效的代理

2024-12-27 11:29  5

0
0
免费使用
# 建立有效的代理 ## 1. 什么是代理? ### 1.1 定义 #### 自主系统:完全独立运行,使用各种工具完成复杂任务。 #### 规范性实现:遵循预定义工作流程的系统。 ### 1.2 工作流 vs 代理 #### 工作流:通过预定义代码路径协调LLM和工具。 #### 代理:LLM动态指导其自身流程和工具使用。 ## 2. 何时(以及何时不使用)使用代理 ### 2.1 使用代理的时机 #### 复杂任务:需要大规模灵活性和模型驱动的决策。 #### 权衡:牺牲延迟和成本换取更好的任务性能。 ### 2.2 不使用代理的时机 #### 简单任务:使用检索和上下文示例优化单个LLM调用。 ## 3. 何时以及如何使用框架 ### 3.1 常用框架 #### LangChain的LangGraph #### Amazon Bedrock的AI Agent框架 #### Rivet #### Vellum ### 3.2 使用框架的建议 #### 直接使用LLM API:许多模式只需几行代码即可实现。 #### 了解底层代码:避免错误假设。 ## 4. 构建块、工作流和代理 ### 4.1 构建模块:增强型LLM #### 检索、工具和记忆:增强LLM功能。 #### 定制和界面:根据用例定制功能,提供简单、有据可查的界面。 ### 4.2 工作流:提示链接 #### 任务分解:将任务分解为一系列步骤。 #### 适用场景:可以轻松、干净地将任务分解为固定子任务。 ### 4.3 工作流:路由 #### 输入分类:将输入分类并定向到专门的后续任务。 #### 适用场景:复杂任务中存在不同的类别,最好分别处理。 ### 4.4 工作流:并行化 #### 分段和投票:将任务分解为并行运行的独立子任务,或多次运行相同的任务。 #### 适用场景:需要多个视角或尝试以获得更高置信度的结果。 ### 4.5 工作流:Orchestrator-workers #### 任务分解和综合:中央LLM动态地分解任务,委托给worker LLM,并综合结果。 #### 适用场景:无法预测所需子任务的复杂任务。 ### 4.6 工作流:评估器-优化器 #### 迭代改进:一个LLM生成响应,另一个提供评估和反馈。 #### 适用场景:有明确的评估标准,迭代改进提供可衡量的价值。 ### 4.7 代理 #### 自主性:独立规划和操作,可能返回人类获取更多信息或判断。 #### 适用场景:开放式问题,无法预测所需的步骤数。 ## 5. 组合和定制这些模式 ### 非规定性:开发人员可以塑造和组合以适应不同用例。 ### 关键:衡量性能和迭代实现。 ## 6. 概括 ### 核心原则: #### 保持代理设计的简单性。 #### 优先考虑透明度。 #### 精心设计代理-计算机接口 (ACI)。 ## 7. 附录 ### 7.1 附录1:实践中的代理人 #### 客户支持:通过工具集成增强聊天机器人界面。 #### 编码剂:通过自动化测试验证代码解决方案。 ### 7.2 附录2:快速设计你的工具 #### 工具定义:像整体提示一样受到及时工程的关注。 #### 建议: ##### 给予模型足够的标记来“思考”。 ##### 保持格式与模型在互联网上文本中自然出现的格式接近。 ##### 确保没有格式化“开销”。
作者其他创作

    AI脑图#362090

    去主页