ai agent
关键要点
- AI Agent 是一种基于大语言模型(LLM)的智能系统,能够调用工具、执行任务,区别于仅生成文本的 LLM。
- 研究表明,Agent 核心包括 LLM、记忆、规划和工具使用,常见框架如 ModelScope-Agent、Langchain、MetaGPT。
- Prompt 工程和测试优化是开发的关键,涉及结构化 Prompt 和知识库验证。
- 应用场景广泛,如天气助手、旅行规划和客服系统,需收集用户需求并设计工作流。
AI Agent 的概念与功能
什么是 AI Agent?
AI Agent 是一种智能系统,基于大语言模型(LLM),不仅能生成自然语言文本,还能调用外部工具(如 API)执行任务。它被视为“人造大脑”,能自主理解、规划决策和执行复杂任务。研究表明,AI Agent 与 LLM 的根本区别在于工具调用能力:LLM 仅限于生成文本,而 AI Agent 能通过函数调用(如 FunctionCall)主动调用外部 API,扩展功能。例如,证据显示,AI Agent 的最大区别是“具有调用外部工具的能力,LLM 不具备”。
根据 OpenAI 研究主管 Lilian Weng 在 2023 年 6 月 23 日的博客《LLM Powered Autonomous Agents》中的定义,AI Agent 由以下核心组件组成:
- LLM(语言模型):作为 Agent 的大脑,负责理解和生成自然语言。
- Memory(记忆):包括短期记忆(如上下文学习)和长期记忆(如外部向量存储),用于存储和回忆信息。研究指出,AI Agent 的记忆不包括“用户在其他窗口的会话内容”,以保护隐私和避免干扰。
- Planning(规划):任务分解、自我反思和决策能力,支持复杂任务的处理。
- Tool Use(工具使用):调用外部 API 或工具,扩展功能。
AI Agent 可以被理解为“一颗能自主使用工具、执行任务的‘人造大脑’”,也适用于客服、旅行规划等场景,展现其多面性。
与 LLM 的区别
- LLM 的能力:生成自然语言文本,理解固定上下文窗口(如 GPT-4 的 4096 令牌),执行翻译、总结和问答等任务。
- AI Agent 的额外能力:能调用外部 API 或工具执行动作,如搜索网页、执行代码或访问数据库;能自主执行多步任务;管理记忆以保持交互连续性;基于推理和规划进行决策,适应新情况。
本质上,LLM 擅长语言生成,而 AI Agent 扩展了这些能力,包括与世界交互和自主行为,使其更具通用性和强大性。
调查报告:AI Agent 的全面解析
引言
在 2025 年的 AI 技术浪潮中,AI Agent(人工智能代理)已成为研究和应用的热点。AI Agent 不仅能生成自然语言文本,还能调用工具、执行任务和与环境交互,展现出强大的自治性。本报告基于 40 道 AI Agent 相关单选题的答案,系统总结其概念、功能、开发框架、工具使用、记忆能力、Prompt 工程、测试策略和应用场景,为读者提供全面的知识指南。
一、AI Agent 的基本概念
AI Agent 是一种基于大语言模型(LLM)的智能体,能够通过调用外部工具、执行任务和与环境交互,实现更复杂的功能。研究表明,Agent 与 LLM 的根本区别在于工具调用能力:LLM 仅限于生成文本,而 Agent 能通过函数调用(如 FunctionCall)主动调用外部 API,扩展功能。例如,答案显示,Agent 的最大区别是“具有调用外部工具的能力,LLM 不具备”。
根据 OpenAI 研究主管 Lilian Weng 在 2023 年 6 月 23 日的博客《LLM Powered Autonomous Agents》(Lilian Weng's Blog: LLM Powered Autonomous Agents)中的定义,Agent 由以下核心组件组成:
- LLM(语言模型):作为 Agent 的大脑,负责理解和生成自然语言。
- Memory(记忆):包括短期记忆(如上下文学习)和长期记忆(如外部向量存储),用于存储和回忆信息。答案指出,Agent 的记忆不包括“用户在其他窗口的会话内容”,以保护隐私和避免干扰。
- Planning(规划):任务分解、自我反思和决策能力,支持复杂任务的处理。
- Tool Use(工具使用):调用外部 API 或工具,扩展功能。
Agent 可以被理解为“一颗能自主使用工具、执行任务的‘人造大脑’”,也适用于客服、旅行规划等场景,展现其多面性。
二、Agent 的工具使用
工具使用是 Agent 的核心能力,使其能够突破 LLM 的局限性。答案显示,Agent 使用工具的主要方式是“函数调用 (FunctionCall) 主动调用外部 API”。例如,在 ModelScope-agent 框架中,工具调用需要以 JSON 格式输出,并使用特殊标记如 <|startoftool|> 和 <|endoftool|> 来指示,方便系统解析和执行。
工具使用的能力包括:
- 评估任务需求,识别所需工具。
- 从可用工具中选择最合适的工具。
- 生成符合工具调用格式的请求。
在开发中,工具注册是关键步骤,需包含名称、描述、参数和调用方式(如 _local_call/_remote_call),但不需要 tool_result,因为结果由工具调用返回。
根据 Lilian Weng 的博客(Lilian Weng's Blog: LLM Powered Autonomous Agents),工具使用扩展了 LLM 的能力,允许 Agent 调用外部 API 获取实时信息、执行代码或访问专有数据源。框架和方法包括 MRKL、TALM、Toolformer、HuggingGPT、ChatGPT Plugins 和 OpenAI function calling。API-Bank 基准测试包括 264 个对话和 568 个 API 调用,评估工具使用的三个级别:API 调用(Level-1)、API 检索(Level-2)和规划多个 API 调用(Level-3)。ChemCrow 案例研究使用 13 个专家设计的工具,应用于有机合成、药物发现和材料设计,实现在 LangChain 中。
| 工具使用框架 | 描述 |
|---|---|
| MRKL | 集成检索和生成的多模态任务。 |
| TALM | 增强 LLM 的工具使用能力。 |
| Toolformer | 训练 LLM 生成 API 调用,使用外部工具。 |
| HuggingGPT | 构建可使用工具的对话代理框架。 |
| ChatGPT Plugins | 允许 ChatGPT 与外部工具和服务交互。 |
| OpenAI Function Calling | 启用 LLM 调用开发者定义的函数。 |
三、Agent 的开发框架
开发 AI Agent 需要选择合适的框架,以下是常见的框架及其比较:
| 框架 | 关键焦点 | 优势 | 最适合的应用 |
|---|---|---|---|
| Langchain | LLM-powered 应用 | 通用性、外部集成 | 通用 AI 开发 |
| LangGraph | 状态化多代理系统 | 复杂工作流、代理协调 | 交互式、适应性 AI 应用 |
| CrewAI | 角色扮演 AI 代理 | 协作问题解决、团队动态 | 模拟复杂组织任务 |
| Microsoft Semantic Kernel | 企业 AI 集成 | 安全性、合规性、现有代码库集成 | 增强企业应用的 AI |
| Microsoft AutoGen | 多代理对话系统 | 鲁棒性、模块化、对话管理 | 高级对话 AI 和任务自动化 |
| Smolagents | 智能协作系统 | 轻量级、模块化、自定义 | 多样化 AI 应用和工作流 |
| AutoGPT | 自主 AI 代理 | 灵活性、适应性学习、最小干预 | 自动化内容创建和任务管理 |
这些框架降低了开发门槛,尤其适合零代码开发平台如支付宝百宝箱,支持一键生成小程序,适合快速验证产品 Demo。
四、Agent 的 Prompt 工程
Prompt 工程是 AI Agent 开发的核心,优质的 Prompt 设计直接影响 Agent 的性能。优化 Prompt 的方法包括:
- 使用 AI 优化功能对 Prompt 进行自动优化和展开。
- 提供典型案例(如客户投诉处理流程)作为参考,快速提升效果。
- 通过多轮测试和迭代优化,直到输出达到预期。
Prompt 结构化是关键,使用分隔符(如 ###)的主要目的是让人类更清晰地表达需求,同时让智能体更方便地区分和处理不同内容。例如,在虚拟女友 Agent 开发中,使用精细化的 Prompt 定义角色设定、对话风格和行为准则,避免跑题。
根据 PromptHub Blog(PromptHub Blog: Prompt Engineering for AI Agents),Prompt 工程的原则包括:
- 保持简单:简单胜过复杂。
- 提供上下文:确保 Agent 有所有必要的信息。
- 具体明确:更多词语并不总是有帮助,但具体性很重要。
- 测试和迭代:根据性能不断优化。
示例:
-
Cline(VS Code 编码 Agent):
- 系统提示长度:11,000 字符
- 特征:结构化工具使用(如 XML 标签),逐步确认,每条消息一个工具,计划模式与行动模式,包含详细环境上下文(如操作系统、目录),安全性:确认动作与用户。
- 完整系统消息
-
Bolt(浏览器编码 Agent):
- 系统提示长度:较短
- 特征:约束(如 WebContainer,没有 pip、Git、原生二进制文件),代码格式化(2 个空格缩进),差异规范(GNU 统一差异),工件创建(使用
<boltArtifact>/<boltAction>标签),14 条规则(如整体规划、全内容)。 - 完整系统消息
这些示例说明了详细且结构化的 Prompt 如何引导 Agent 有效执行复杂任务。
五、Agent 的记忆与规划能力
记忆和规划是 Agent 实现自治性的关键。
-
记忆:
- 短期记忆:通过上下文学习实现,存储当前任务相关信息,但受 Transformer 模型上下文窗口的限制。
- 长期记忆:通过外部存储(如向量数据库)实现,支持长时间信息的存储和检索,使用快速检索方法如 LSH、ANNOY、HNSW、FAISS 和 ScaNN。
-
规划:
- 涉及任务分解和自我反思,技术如 Tree of Thoughts 探索多条路径,ReAct 结合推理和行动,Reflexion 从过去经验中学习。
| 记忆类型 | 描述 |
|---|---|
| 短期记忆 | 利用上下文学习,存储当前任务信息,受 Transformer 上下文窗口限制。 |
| 长期记忆 | 使用外部向量存储,支持长时间信息存储,检索方法包括 LSH、FAISS 等。 |
六、Agent 的实际应用
AI Agent 在多个领域有广泛应用,包括:
- 天气助手:提供实时天气查询和穿衣建议。
- 旅行规划助手:根据用户偏好生成个性化旅行计划。
- 客服 Agent:通过工作流设计,先进行情感分析插件节点,再根据情绪分支选择知识库召回或 LLM 响应。
- AI 绘画:在提示词中加入负面限定词(如“无血腥、无暴力”)和正面限定词(如“清晰、明亮”),引导模型生成符合预期的图像。
这些应用场景体现了 Agent 的灵活性和实用性,需根据用户需求设计 Prompt 和工作流。
七、Agent 的测试与优化
测试 AI Agent 包括:
- 单元测试:验证记忆、规划和工具使用等组件。
- 集成测试:确保所有组件协同工作。
- 端到端测试:模拟真实场景,评估性能。
优化涉及迭代 Prompt、调整模型参数,并根据性能指标进行微调。例如,在开发虚拟女友 Agent 时,通过对话示例和开场白优化 Prompt,避免跑题。
八、构建和部署 Agent 系统
构建完整的 Agent 系统包括:
- 定义任务:明确 Agent 的目标。
- 选择组件:选择合适的 LLM、记忆系统、规划机制和工具。
- 设计 Prompt:创建有效的 Prompt 指导 Agent 行为。
- 整合工具:设置外部工具和 API。
- 实现记忆:配置短期和长期记忆系统。
- 测试和迭代:持续测试和优化性能。
部署可通过平台如 Langbase 实现,支持无服务器 AI Agent 部署,优化最新模型。
九、Agent 的级别与框架
根据 ZhenFund 的分类,Agent 是高度自治的 AI 产品,能够“完全无需人类监督,自主拆解目标,寻找资源,选择并使用工具,完成全部工作,人类只需给出初始目标”。
ReAct 框架是一种 Agent 行为设计方法,输出格式为 Thought(思考)、Action(行动)、Observation(观察),用于解析 LLM 输出和指导行为。尽管 ReAct 曾是重要进展,但已被 OpenAI、Anthropic、Mistral 和 Google 等模型支持的原生函数调用技术所取代,推荐使用函数或工具调用来实现生产就绪功能。根据 Klu 的信息(Klu: ReAct Agent Model),ReAct 仅在 30% 的时间有效,适合复杂多步任务,但因令牌消耗和依赖外部工具而受限。
结论
AI Agent 代表了人工智能发展的一个重要里程碑,结合 LLM 的语言能力、工具调用的扩展性和记忆规划的自治性,为构建智能助手提供了可能。从概念到应用,AI Agent 的开发涉及 Prompt 工程、工作流设计、测试策略等多个方面,需要开发者综合考虑各组件的协同作用。未来,随着技术的进步,AI Agent 将在更多领域发挥重要作用,带来更便捷的用户体验和更高的工作效率。

浙公网安备 33010602011771号