乐于分享
好东西不私藏

「从零玩转 AI Agent」【第十篇】主流 Agent 框架横评——LangChain、Crew、AutoGen 怎么选?

「从零玩转 AI Agent」【第十篇】主流 Agent 框架横评——LangChain、Crew、AutoGen 怎么选?

上一篇文章我们自己手写了 Agent。写到后面你会发现:消息管理、工具注册、记忆维护……有很多重复劳动。于是就有了框架。今天来聊聊市面上最主流的几个,帮你选一个接着玩。

上一篇:「从零玩转 AI Agent」【第九篇】用 Python 从零写一个 Agent(下)——记忆与实战

一、为什么需要框架?

自己写 Agent 到后面会变成这样:

# 你需要手写很多东西- messages 管理(追加、截断、压缩)- 工具注册和匹配- 多轮 Function Calling 循环- 错误重试- 记忆持久化- 多 Agent 通信- 流式输出- ...

而框架把这些封装好了,你只需要关心两件事:定义 Agent 的行为 + 配置工具


二、四大框架速览

框架
一句话
适合谁
GitHub Stars
LangChain
Agent 界的"乐高积木"
爱拼装、要灵活的人
100K+
CrewAI
多 Agent 协作的最佳入门
想搞"团队协作"Agent
25K+
AutoGen
微软出品,企业级多 Agent
企业开发者
38K+
Agno
新锐轻量框架,极简好用
新手,追求简单
20K+

三、LangChain —— Agent 界的"乐高"

3.1 它是什么?

LangChain 不是一个"Agent 框架",而是一个LLM 应用的万能工具箱

  • 想做 RAG?有 RAG 模块
  • 想做 Agent?有 Agent 模块
  • 想做 Chains(链式调用)?有 Chains 模块
  • 想要记忆?有 Memory 模块

优点就是缺点——太灵活了,灵活到你不知道从哪开始。

3.2 用 LangChain 写 Agent 有多简单?

from langchain_openai import ChatOpenAIfrom langchain.agents import create_tool_calling_agent, AgentExecutorfrom langchain.tools import tool# 1. 定义工具@tooldefget_weather(city: str) -> str:"""获取城市天气"""returnf"{city}:晴天 25°C"# 2. 创建 LLMllm = ChatOpenAI(    model="deepseek-chat",    api_key="sk-...",    base_url="https://api.deepseek.com")# 3. 创建 Agent(一行代码!)agent = create_tool_calling_agent(llm, [get_weather], prompt)# 4. 执行(一行代码!)executor = AgentExecutor(agent=agent, tools=[get_weather])result = executor.invoke({"input""北京天气怎么样?"})

跟手写 Agent 比,代码量少了至少一半。

3.3 适合谁?

  • ✅ 你想深度定制 Agent 的每个环节
  • ✅ 你想把 Agent 嵌入 Web 应用、API 服务
  • ❌ 零基础新手——学习曲线陡
  • ❌ 你只需要简单功能——用 LangChain 是杀鸡用牛刀

四、CrewAI —— 多 Agent 协作入门首选

4.1 它是什么?

CrewAI 的核心概念:让多个 Agent 像团队一样协作。

每个 Agent 有独立的角色、目标和工具。多个 Agent 组成一个 Crew(团队),按流程协作。

4.2 一个例子:写一篇市场分析报告

from crewai import Agent, Task, Crew# 研究员 Agentresearcher = Agent(    role="市场研究员",    goal="搜集市场最新数据并整理成结构化信息",    tools=[search_tool],    llm="deepseek-chat")# 分析师 Agentanalyst = Agent(    role="数据分析师",    goal="基于研究数据生成洞察和建议",    llm="deepseek-chat")# 写手 Agentwriter = Agent(    role="报告撰写人",    goal="将分析结果写成专业报告",    llm="deepseek-chat")# 定义任务research_task = Task(description="调研中国 AI 市场 2026 年趋势", agent=researcher)analysis_task = Task(description="分析数据并给出 5 个关键洞察", agent=analyst)writing_task  = Task(description="写成 2000 字市场分析报告", agent=writer)# 组建团队crew = Crew(    agents=[researcher, analyst, writer],    tasks=[research_task, analysis_task, writing_task])# 一键启动result = crew.kickoff()print(result)

研究员 → 分析师 → 写手,三个人自动流水线作业。

4.3 适合谁?

  • ✅ 想探索多 Agent 协作
  • ✅ 任务流程明确、可以线性拆解
  • ❌ 只有一个 Agent 的场景(用 CrewAI 牛刀杀鸡)

五、AutoGen —— 微软出品的企业级方案

5.1 它是什么?

AutoGen 是微软研究院推出的多 Agent 对话框架。核心理念:Agent 之间通过"对话"来协作。

5.2 跟 CrewAI 的区别

CrewAI
AutoGen
协作方式
任务流水线(A → B → C)
自由对话(A ⇄ B 来回聊)
适合场景
流程固定的任务
需要讨论、协商的任务
上手难度
★★☆
★★★
生态
Python
Python + .NET
谁在用
个人开发者、创业团队
微软内部、大型企业

5.3 一个例子

from autogen import AssistantAgent, UserProxyAgent# 用户代理(代表你,执行代码)user_proxy = UserProxyAgent(    name="user",    code_execution_config={"work_dir""coding"})# AI 助手代理assistant = AssistantAgent(    name="assistant",    llm_config={"config_list": [{"model""deepseek-chat", ...}]})# 发起对话user_proxy.initiate_chat(    assistant,    message="写一个 Python 脚本,爬取百度热搜前 10 条")# AutoGen 会自动多轮对话:# assistant 提议方案 → user_proxy 执行 → 报错了 →# assistant 修正 → user_proxy 再执行 → 成功!

六、Agno —— 新锐轻量选手

6.1 它是什么?

Agno 是 2024 年冒出来的新框架,口号是"最轻量的 Agent 框架"。代码极简,学习成本低。

6.2 一个例子

from agno import Agentfrom agno.tools import search_webagent = Agent(    model="deepseek-chat",    tools=[search_web],    instructions="你是一个新闻助手")agent.print_response("今天 AI 领域有什么大新闻?")

真的只需要几行代码。

6.3 适合谁?

  • ✅ 新手入门,想先跑起来再说
  • ✅ 快速原型验证
  • ❌ 复杂的多 Agent 协作场景(功能还在追赶)

七、终极选择指南

你是零基础新手?  ├─ 是 → 用 Agno 或 扣子/Dify(零代码)  └─ 不是 → 继续你需要多 Agent 协作?  ├─ 是 → 任务流程固定?  │        ├─ 是 → CrewAI  │        └─ 不是(需要自由讨论)→ AutoGen  └─ 不需要 → 需要深度定制?               ├─ 是 → LangChain               └─ 不是 → Agno 或手写你是企业级开发?  ├─ 是 → AutoGen(微软生态)或 LangChain(开源生态)  └─ 不是 → CrewAI 或 Agno

一图总结:

简单  ←──────────────────────────────→  强大  │                                          │Agno    CrewAI    AutoGen    LangChain  │        │          │           │适合新手  多Agent入门  企业级    万能工具箱

八、我的推荐

如果你是看这个系列一路走来的零基础读者:

  1. 先玩扣子/Dify
    (第 7 篇),不写代码感受 Agent
  2. 再手写 Python Agent
    (第 8、9 篇),理解底层原理
  3. 然后用 Agno
    ,享受框架的便利但不会被框架的复杂度淹没
  4. 想探索多 Agent 时,上 CrewAI

千万别一上来就 LangChain——它的学习曲线会让零基础读者劝退。


九、下篇预告

搭建篇结束,进阶篇开始——第一个话题:《多 Agent 协作:为什么一个 Agent 不够用?》带你理解"团队作战"的 Agent 能做什么单个 Agent 做不到的事。

关注本号,不错过更新。


下一篇:《多 Agent 协作——为什么一个 Agent 不够用?》

上一篇:「从零玩转 AI Agent」【第九篇】用 Python 从零写一个 Agent(下)——记忆与实战