Reference: DataWhale wow agent 课程https://github.com/datawhalechina/wow-agent
Agents 的核心组件#
一个完整的 Agent 主要由三个核心组件构成:
1. 模型 (Model):
- 角色:作为 Agent 的 “大脑”,负责理解用户输入,进行推理和规划,并选择合适的工具进行执行。
- 类型:常用的模型包括 ReAct、Chain-of-Thought、Tree-of-Thought 等,它们提供不同的推理框架,帮助 Agent 进行多轮交互和决策。
- 重要性:模型是 Agent 的核心,其推理能力决定了 Agent 的行动效率和准确性。
2. 工具 (Tools): - 角色:作为 Agent 与外界交互的 “桥梁”,允许 Agent 访问外部数据和服务,执行各种任务。
- 类型:工具可以是各种 API,例如数据库查询、搜索引擎、代码执行器、邮件发送器等。
- 重要性:工具扩展了 Agent 的能力,使其能够执行更复杂的任务。
3. 编排层 (Orchestration Layer): - 角色:负责管理 Agent 的内部状态,协调模型和工具的使用,并根据目标指导 Agent 的行动。
- 类型:编排层可以使用各种推理框架,例如 ReAct、Chain-of-Thought 等,帮助 Agent 进行规划和决策。
- 重要性:编排层是 Agent 的 “指挥中心”,负责协调各个组件,确保 Agent 的行动符合目标。
Agents 的运作机制:从输入到输出#
Agent 的运作过程可以概括为以下几个步骤:
- 接收输入:Agent 接收用户的指令或问题。
- 理解输入:模型理解用户的意图,并提取关键信息。
- 推理规划:模型根据用户输入和当前状态,进行推理和规划,确定下一步行动。
- 选择工具:模型根据目标选择合适的工具。
- 执行行动:Agent 使用工具执行行动,例如查询数据库、发送邮件等。
- 获取结果:Agent 获取工具执行的结果。
- 输出结果:Agent 将结果输出给用户,或进行下一步行动。
Agents 的应用:从智能客服到虚拟助手#
Agents 的应用范围非常广泛,例如:
- 智能客服:Agent 可以自动回答用户问题,处理订单,解决客户问题,提高客户满意度。
- 个性化推荐:Agent 可以根据用户的兴趣和行为,推荐商品、内容、服务等,提升用户体验。
- 虚拟助手:Agent 可以帮助用户管理日程、预订行程、发送邮件等,提高工作效率。
- 代码生成:Agent 可以根据用户的需求,自动生成代码,提高开发效率。
- 智能创作:Agent 可以根据用户的需求,创作诗歌、小说、剧本等,激发创作灵感。
- 知识图谱构建:Agent 可以从文本中提取知识,构建知识图谱,用于知识管理和推理。
Agents 的开发工具:从 LangChain 到 Vertex AI#
为了方便开发 Agents,Google 提供了多种工具和平台,例如:
- LangChain:一个开源库,可以帮助开发者构建和部署 Agents。LangChain 提供了一套 API,方便开发者将 LLMs 与工具和编排层结合,构建功能强大的 Agents。
- LangGraph:一个开源库,可以帮助开发者构建和可视化 Agents。LangGraph 提供了一套图形化界面,方便开发者设计和测试 Agents。
- Vertex AI:一个云平台,提供各种 AI 工具和服务,例如 Vertex Agent Builder、Vertex Extensions、Vertex Function Calling 等,可以帮助开发者快速构建和部署 Agents。Vertex AI 提供了强大的基础设施和工具,方便开发者进行 Agent 开发、测试、部署和管理。