一、 重新定义:什么是 AI Agent?
如果把 LLM(大语言模型) 比作一个拥有海量知识但被困在房间里的天才,AI Agent(智能体) 就是给了他眼睛、手脚和工具,让他能走出房间去解决实际问题的系统。
LLM vs Agent:本质区别:
维度 |
传统 LLM 对话 |
AI Agent |
执行方式 |
被动响应指令,一问一答 |
主动循环,自主规划执行步骤 |
工具使用 |
无法调用外部 API |
可调用搜索、代码执行、数据库等 |
记忆 |
无状态,每次独立 |
具备短期 + 长期记忆 |
知识范围 |
训练截止日期 |
可实时检索最新信息 |
适用任务 |
单轮简单问答 |
多步骤、跨工具、长周期复杂任务 |
2026 年主流 Agent 框架对比
工欲善其事,必先利其器。以下是目前最主流的开发框架对比:
框架 |
语言 |
优势 |
适用场景 |
LangChain |
Python/JS |
生态最丰富,工具链完整 |
生产级 Agent 应用 |
LangGraph |
Python |
有状态工作流,循环支持好 |
复杂多步骤 Agent |
OpenAI Swarm |
Python |
轻量级,多 Agent 简洁 |
快速原型验证 |
CrewAI |
Python |
角色驱动,协作直观 |
多 Agent 角色协作 |
Vercel AI SDK |
TypeScript |
前端友好,流式输出 |
Web 应用集成 |
Microsoft AutoGen |
Python |
企业级,代码执行强 |
代码自动化场景 |
一个成熟的 Agent 系统,通常由以下四个核心模块构成(这也是面试必考点):
决定了 Agent 的智商上限。
GPT-4o:工具调用(Function Calling)最稳,综合能力最强。
Claude 3.5/4:长上下文(200k+),适合读长篇文档、做分析。
DeepSeek-V3:性价比之王,中文场景极佳,成本比 GPT 系列低一个数量级。
2.2 Memory(记忆系统)
解决“金鱼记忆”问题。
短期记忆:利用 Context Window 存储当前对话历史(Buffer Memory)。
长期记忆:通过 RAG + Vector DB(如 Chroma/Pinecone)存储用户画像和历史知识。
# 短期记忆:利用 Context Window 存储会话历史messages = [{"role": "system", "content": "你是一个任务执行助手"},{"role": "user", "content": "帮我分析这份数据"},{"role": "assistant", "content": "好的,我先..."}, # 历史对话]# 长期记忆:通过 RAG 检索相关知识from langchain_community.vectorstores import Chromafrom langchain_openai import OpenAIEmbeddingsvectorstore = Chroma(embedding_function=OpenAIEmbeddings())relevant_docs = vectorstore.similarity_search("用户的查询", k=3)
2.3 Planning(任务规划)
将复杂目标拆解的能力。
目标:帮我调研 2026 年 AI Agent 框架现状并生成报告
Agent 的拆解过程:
Step 1:搜索掘金/知乎/Google 最新文章。
Step 2:抓取 Top 5 文章正文内容。
Step 3:提炼各框架优劣势,制作对比表格。
Step 4:生成结构化 Markdown 报告并保存。
2.4 Tools(工具集)
Agent 的双手。通过 Function Calling 定义工具描述,让 LLM 决定何时调用。
# 定义工具 Schema(告诉 LLM 有哪些工具可用)tools = [{"type": "function","function": {"name": "web_search","description": "搜索互联网获取最新信息","parameters": {"type": "object","properties": {"query": {"type": "string", "description": "搜索关键词"}},"required": ["query"]}}}]
3.灵魂机制:ReAct 框架
ReAct = Reason(推理) + Act(行动)
这是目前 Agent 最核心的决策逻辑:思考 -> 行动 -> 观察 -> 再思考。
案例演示:北京今天适合去颐和园吗?
Question: 北京今天天气如何,适合去颐和园吗?Thought: 我需要先获取北京今天的天气信息Action: web_searchAction Input: "北京今天天气 2026-06-02"Observation: 北京今天晴天,气温 28°C,微风Thought: 天气不错,但我需要确认颐和园是否开放Action: web_searchAction Input: "颐和园今日开放时间"Observation: 颐和园正常开放,营业时间 6:30-18:00Thought: 已获得所有信息,可以给出建议Final Answer: 北京今天天气晴好,气温 28°C,颐和园正常开放。适合出行,建议上午前往以避开人流高峰。
4.实战:5 分钟用 LangChain 跑通你的第一个 Agent
下面是可直接运行的 Python 代码。我们构建一个能查天气、会计算的简单 Agent。
from langchain_openai import ChatOpenAIfrom langchain.agents import create_react_agent, AgentExecutorfrom langchain.tools import toolfrom langchain import hub# 1. 定义工具def get_weather(city: str) -> str:"""获取指定城市的当前天气"""# 实际场景替换为真实 APIreturn f"{city}: 晴天,气温 28°C"def calculate(expression: str) -> str:"""计算数学表达式"""try:return str(eval(expression))except Exception as e:return f"计算错误: {e}"# 2. 初始化模型与工具llm = ChatOpenAI(model="gpt-4o", temperature=0)tools = [get_weather, calculate]# 3. 加载 ReAct Prompt(官方提供)prompt = hub.pull("hwchase17/react")# 4. 创建 Agentagent = create_react_agent(llm, tools, prompt)agent_executor = AgentExecutor(agent=agent,tools=tools,verbose=True, # 打印思考过程max_iterations=5 # 防止无限循环)# 5. 运行result = agent_executor.invoke({"input": "北京今天天气好吗?如果气温超过 25 度,帮我算一下 35 × 12 是多少"})print(result["output"])
写在最后
Agent 开发不是简单的 Prompt 堆叠,而是一门系统工程。后续我们会继续深入了解LangGraph,聊聊如何实现带“人机回环(Human-in-the-loop)”的复杂 Agent 工作流。
本文仅作学术信息分享,如有侵犯请联系删除

