1. 什么是 AI Agent?
AI Agent(智能体)是一个能够自主感知环境、制定计划、执行行动并从反馈中学习的系统。与传统的 ChatBot(被动回答问题)不同,Agent 能:
① 分解目标:将复杂任务拆解为可执行的子步骤
② 使用工具:调用 API、读写文件、执行代码、搜索网络
③ 自主决策:根据执行结果动态调整策略
④ 多轮迭代:在 Agent 循环(感知→思考→行动→观察)中持续运作直到任务完成
while not done:
observation = perceive(environment)
thought = reason(observation, memory, goal)
action = decide(thought, available_tools)
result = execute(action)
memory.update(result)
2. Agent 关键能力模块
🧠 规划(Planning)
将高层目标分解为可执行子任务。方法:ReAct(边推理边行动)、Chain-of-Thought、Tree-of-Thought、Plan-and-Execute。
🔧 工具使用(Tool Use)
调用外部 API、执行代码、读写文件系统。关键:Function Calling、MCP 协议、工具描述的准确性。
💾 记忆(Memory)
短期记忆(对话上下文)+ 长期记忆(向量数据库/文件存储)。RAG 是当前最实用的长期记忆方案。
🔄 反思(Reflection)
评估执行结果、发现错误、调整策略。Reflexion(Shinn et al.)将反思机制形式化为 Agent 的自我改进循环。
3. 代表性 Agent 框架
| 框架/产品 | 类型 | 核心特点 |
|---|---|---|
| ReAct (2022) | 范式 | 交替进行 Reasoning(推理)和 Acting(行动),大幅提升决策质量 |
| AutoGPT (2023.3) | 自主 Agent | 首个引爆公众关注的自主 Agent,完全自主执行(但可靠性低) |
| LangChain | 框架 | 最流行的 Agent 开发框架,提供 Chain / Agent / Tool 抽象 |
| LangGraph | 框架 | 基于图的 Agent 编排,支持复杂的状态机和循环 |
| CrewAI | 多Agent框架 | 基于角色的多Agent协作("AI团队") |
| Claude Code (2025) | 编程 Agent | 终端驻留的 agentic 编码工具,15+ 内置工具,分层权限 |
| Devin (2024) | 编程 Agent | "AI 软件工程师",全环境自主开发 |
| OpenAI Agents SDK | 框架 | Handoff + Guardrails + Tracing 原生支持 |
4. Function Calling 与 MCP
Function Calling(2023.6,OpenAI 首推):让 LLM 结构化地调用外部函数——模型输出 JSON 格式的函数名+参数,由客户端执行函数并将结果返回模型。这是 Agent 工具使用的基础。
MCP(Model Context Protocol)(2024.11,Anthropic):为 AI 模型与外部工具/数据源交互定义的开放标准协议。被称为"AI 的 USB 标准"。
• Server: 提供 Tools(工具)/ Resources(资源)/ Prompts(模板)
• Client: 嵌入在 AI 应用中(VS Code Copilot、Claude Desktop 等)
• Transport: stdio(本地进程)或 SSE(远程 HTTP)
• Protocol: JSON-RPC 2.0 消息格式
MCP 解决了"每个 AI 应用都需要为每个外部服务写定制集成"的 M×N 问题——MCP Server 只需写一次,所有支持 MCP 的客户端均可使用。至 2025 年中,GitHub Copilot、Cursor、Windsurf、Claude Desktop 等主流工具均已支持 MCP。
5. 多 Agent 协作
单 Agent 的局限:上下文窗口有限、复杂任务中容易"迷路"、工具调用链过长导致错误累积。解决方案——多 Agent 系统。
| 模式 | 说明 | 示例 |
|---|---|---|
| Orchestrator + Workers | 主 Agent 分配任务,子 Agent 执行 | Claude Code 的 subagent、OpenAI Swarm |
| Debate / 辩论 | 多个 Agent 辩论求解,提升推理准确性 | ChatEval、自洽性投票 |
| Pipeline / 流水线 | 按顺序传递,每个 Agent 负责一个阶段 | 代码审查链(编写→审查→测试→部署) |
| Specialist / 专家 | 不同 Agent 擅长不同领域,按需调度 | CrewAI 角色分工 |
Claude Code 实现了实用的多 Agent 模式:主 Agent 通过 subagent 工具派生只读子 Agent 执行搜索/分析任务,子 Agent 继承上下文但权限受限,执行完毕后向主 Agent 返回结果。
6. Agent 的挑战与前沿
可靠性:当前 Agent 在长链任务中的成功率仍不理想。SWE-bench(软件工程基准)上最好的 Agent 仅解决约 50% 的真实 GitHub Issue。每步 95% 的成功率,经过 20 步后整体成功率降至 36%。
安全与权限:Agent 拥有执行能力(文件操作、代码运行、网络请求),权限控制至关重要。Claude Code 的分层权限模型(allow/deny/ask)是业界最佳实践。
评估困难:Agent 行为路径不确定,传统的输入→输出评估不适用。需要针对目标完成度、路径效率、安全合规等多维度评估。
Computer Use / GUI Agent:让 Agent 像人类一样操作图形界面——Claude 3.5 的 Computer Use、OpenAI 的 Operator 正在验证这一方向。直接操作 GUI 的 Agent 可以使用任何现有软件,无需 API 集成。
Agent-to-Agent 协议:Google 提出的 A2A(Agent-to-Agent)协议定义了不同 Agent 之间的通信标准,与 MCP(模型-工具)互补,共同构成 Agent 生态系统的基础协议层。