什么是 AI Agent
AI Agent 是能够自主感知环境、制定计划、调用工具、执行行动的 AI 系统。和传统的”输入-输出”LLM 不同,Agent 是多轮交互的——它会在思考和行动之间循环,直到完成任务。
graph TD
T[🤔 Think 思考] --> A[🔧 Act 行动]
A --> O[👁 Observe 观察]
O --> T
模式一:ReAct
ReAct(Reasoning + Acting)是最经典的 Agent 模式。每轮先思考下一步做什么,再执行工具调用,观察结果进入下一轮:
def react_agent(query, tools, max_steps=5):
history = [{"role": "user", "content": query}]
for step in range(max_steps):
response = llm.chat(history, tools=tools)
if response.tool_call:
result = execute(response.tool_call)
history.append({"role": "tool", "content": result})
else:
return response.content # 任务完成
return "达到最大步数"
优点:实现简单,适合多步骤任务。缺点:容易在中间步骤跑偏。
模式二:Plan-and-Execute
先让 LLM 生成完整计划,再逐步执行。适合复杂的多步骤任务:
def plan_execute(query):
plan = llm.generate(f"为以下任务制定详细计划:{query}")
results = []
for step in plan.steps:
result = execute_step(step)
results.append(result)
if should_replan(results): # 执行中根据结果调整计划
plan = llm.replan(query, completed=results)
return synthesize(results)
优点:全局规划减少跑偏。缺点:初始计划可能不完善,需要重新规划。
模式三:Multi-Agent 协作
多个 Agent 扮演不同角色,协同完成复杂任务:
- AutoGen(微软):多个 Agent 通过对话协作,支持人工介入
- CrewAI:角色扮演式 Agent 团队——研究员、写手、审阅员各司其职
- MetaGPT:模拟软件公司 SOP——PM 写 PRD,架构师做设计,工程师写代码
选型建议
| 场景 | 推荐模式 |
|---|---|
| 简单的多步操作(查天气→订餐厅) | ReAct |
| 复杂分析任务(写研究报告) | Plan-and-Execute |
| 需要多人协作的项目 | Multi-Agent |
当前 Agent 可靠性仍是最大挑战——建议关键操作加人工确认。Agent 可以调用的工具集越丰富越强大,接入 RAG 检索增强生成实战 知识库是常见增强方式。关于被增强的个人知识管理参见 搭建个人 AI 第二大脑。