在这里插入图片描述

Agent开发框架选型(2026版):从五大到十一大的框架地图

2024年Agent框架"四大金刚"(LangChain/LlamaIndex/AutoGen/CrewAI),2026年已经扩展到11个主流框架。新增的SDK/框架有些是模型厂商官方出品(Claude Agent SDK / OpenAI Agents SDK),有些是新设计哲学(Pydantic AI类型安全、Mastra TypeScript优先)。这篇文章帮你一次性搞清楚2026年的框架地图。


一句话总结

2026年没有"通用最佳"框架,只有"按生态/语言/复杂度"匹配的最佳

  • 生产首选:LangGraph(最成熟)
  • Anthropic生态:Claude Agent SDK
  • OpenAI生态:OpenAI Agents SDK
  • TypeScript团队:Mastra
  • 类型安全Python:Pydantic AI
  • 快速原型:CrewAI
  • 极简学习:smolagents
  • 不用框架:80%场景反而最优

1. 2026框架全景图

                生态维度
                   ▲
            Anthropic │ OpenAI
       Claude Agent SDK│OpenAI Agents SDK
                       │
   ────中立通用─────────┼─────────专业垂直────→
                       │
          LangGraph    │     LlamaIndex (RAG)
           CrewAI      │      Mastra (TS)
          Pydantic AI  │     smolagents
                       │
                生产成熟度
                   ▼

1.1 11大框架速览(2026.05)

框架 维护者 语言 月下载量 强项 何时用
LangGraph LangChain Python/TS 34.5M 状态图+可观测性 生产级Agent
Claude Agent SDK Anthropic Python/TS 高速增长 Claude Code同款 Anthropic生态
OpenAI Agents SDK OpenAI Python/TS 高速增长 handoffs+tracing OpenAI生态
CrewAI CrewAI Inc Python 8M+ 角色化多Agent 快速原型
AutoGen Microsoft Python 5M+ 多Agent对话 研究/Azure
Mastra Mastra TypeScript 上升中 TS优先+DX TS团队
Pydantic AI Pydantic Python 上升中 类型安全 Pydantic团队
smolagents HuggingFace Python 1M+ 极简+code-as-action 研究/学习
LangChain LangChain Python/TS 50M+ 生态最全 通用入门
LlamaIndex LlamaIndex Python/TS 15M+ RAG最强 知识库问答
Microsoft Agent Framework Microsoft Python/.NET 上升中 替代AutoGen .NET/Azure

1.2 三层分级

🥇 Tier 1(生产成熟): LangGraph / Claude Agent SDK / OpenAI Agents SDK
🥈 Tier 2(快速原型): CrewAI / Mastra / Pydantic AI
🥉 Tier 3(专业领域/学习): AutoGen / smolagents / LlamaIndex / LangChain(旧主力)

💡 2026年趋势:模型厂商自家SDK崛起。OpenAI、Anthropic、Google都推自家Agent SDK,对自家模型而言通常与第三方框架打平甚至更强。如果你只用一个供应商,直接从官方SDK开始。


2. Claude Agent SDK ⭐ Anthropic生态首选

2.1 定位

Anthropic 2025年9月开放的Agent基础设施——把Claude Code底层的Agent引擎(规划循环、工具调用、记忆管理、沙箱执行)封装成可直接调用的SDK。

💡 历史:最初叫Claude Code SDK(2025年9月),2025年底改名Claude Agent SDK,与Claude Code自身解耦,成为通用Agent框架。Boris Cherny用它做Claude Code完成100%日常编码——这是个实战磨过的SDK

2.2 设计哲学

工具即接口,不是抽象层。SDK内建工具集少而精:

工具 作用
Bash 执行shell命令
Edit/Read/Write 文件操作
Glob/Grep 文件搜索
WebFetch/WebSearch 网络访问
Task 开子Agent(一等公民)

“Claude Code做过的每一个正经coding任务都只是这些工具的组合。重点是——你不需要50个工具,你需要10个把某个领域覆盖干净的好工具,然后让模型去组合它们。”

2.3 核心特性

特性 说明
基于文件的权限+沙盒 默认agent跑在用户授权的环境,可阻挡破坏性操作
Subagents(子Agent) Task工具可开独立Claude实例,有独立上下文窗口和受限回报
基于文件的Memory Markdown记忆写进磁盘,跨session保留
Skills机制 可被名称呼叫的可重用提示片段
MCP原生支持 5000+ MCP Server即插即用

2.4 代码示例

from claude_agent_sdk import Agent, tool

@tool
def query_database(sql: str) -> str:
    """查询数据库"""
    return execute_sql(sql)

# 创建Agent
agent = Agent(
    model="claude-opus-4.7",
    system_prompt="你是一个数据分析师",
    tools=[query_database],
    permissions={"bash": "ask", "edit": "auto"},  # 文件级权限
)

# 运行
result = agent.run("分析过去一周的用户增长,生成报告")

2.5 优势与局限

优势 局限
Claude Code实战磨过,最稳定 锁定Claude,不支持其他模型
Subagents是生产唯一稳定的多Agent方案 MCP Server生态比OpenAI Tools年轻
文件-based权限+沙盒,安全性高 文档相对Anthropic风格"散"
Memory和Skills都是头等公民 TypeScript版本相对Python滞后

3. OpenAI Agents SDK ⭐ OpenAI生态首选

3.1 定位

OpenAI 2025年发布的轻量Agent SDK,是Swarm(实验项目)的精神继承者。

💡 OpenAI Swarm:OpenAI 2024年的实验性多Agent框架,验证了"handoffs"模式的可行性。Agents SDK把它产品化、稳定化。

3.2 核心概念

概念 说明
Runner Agent执行器,简单可控
Handoffs Agent间任务交接,类似函数调用
Guardrails 输入/输出验证,安全护栏
Tracing 内建trace到OpenAI Dashboard
Tools 函数自动转工具,无需JSON Schema

3.3 代码示例

from openai import OpenAI
from openai.agents import Agent, Runner, function_tool

@function_tool
def search_web(query: str) -> str:
    """搜索互联网"""
    return f"结果: {query}..."

# 主Agent
research_agent = Agent(
    name="研究员",
    instructions="你负责调研,把信息传给写作Agent",
    tools=[search_web],
    handoffs=["writer"],  # 可以handoff给writer
)

writer_agent = Agent(
    name="writer",
    instructions="你基于调研写报告",
)

# 运行
runner = Runner(agents=[research_agent, writer_agent])
result = runner.run("调研AI Agent市场并写报告")

3.4 优势与局限

优势 局限
体积最小,学习曲线最平 锁定OpenAI生态
Handoffs模式优雅,多Agent清晰 自定义复杂工作流不如LangGraph灵活
内建Tracing到OpenAI Dashboard Tracing数据在OpenAI云上
合规友好(企业版) 高级特性少

4. LangGraph ⭐ 生产级首选

4.1 定位

有状态Agent框架,2026年企业生产环境的事实标准——34.5M月下载量。

4.2 核心概念

概念 说明
StateGraph 用图结构定义Agent的状态流转
Node 图中的节点,每个节点是一个函数
Edge 节点间的边,可以是条件跳转
Checkpoint 状态持久化,支持暂停/恢复
Human-in-the-loop 人工介入点,2026企业必备
LangGraph Studio 可视化调试器(2026新增)

4.3 代码示例

from langgraph.graph import StateGraph, END
from typing import TypedDict, Annotated
import operator

class AgentState(TypedDict):
    messages: Annotated[list, operator.add]
    next_step: str

def research_node(state: AgentState) -> AgentState:
    return {"messages": ["研究完成"], "next_step": "write"}

def write_node(state: AgentState) -> AgentState:
    return {"messages": ["写作完成"], "next_step": "review"}

def review_node(state: AgentState) -> AgentState:
    quality = check_quality(state["messages"])
    return {
        "messages": ["审核通过"] if quality > 0.8 else ["需要修改"],
        "next_step": "end" if quality > 0.8 else "write"
    }

# 构建图
graph = StateGraph(AgentState)
graph.add_node("research", research_node)
graph.add_node("write", write_node)
graph.add_node("review", review_node)

graph.add_edge("research", "write")
graph.add_edge("write", "review")
graph.add_conditional_edges("review", lambda s: s["next_step"],
    {"write": "write", "end": END})

graph.set_entry_point("research")
app = graph.compile(checkpointer=MemorySaver())  # 状态持久化

result = app.invoke({"messages": [], "next_step": "research"})

4.4 何时选LangGraph

  • 复杂状态流转(循环、条件跳转、人工介入)
  • 需要状态持久化和恢复
  • 工作流不是简单线性链
  • 需要LangSmith可观测性
  • 多模型混用(不锁定单一供应商)

5. Mastra ⭐ TypeScript生态首选

5.1 定位

TypeScript原生Agent框架——2026年TS生态的最佳选择。

💡 Mastra在生产应用:已部署在Marsh McLennan(75K员工)、SoftBank的Satto Workspace等大型企业。证明TypeScript Agent框架已经达到生产级别。

5.2 核心特性

特性 说明
TypeScript-first 类型安全贯穿全栈
Workflow + Agent 既能写工作流也能写Agent
Next.js友好 与Next.js应用同代码库
Vercel AI SDK兼容 流式输出无缝集成

5.3 代码示例

import { Mastra, Agent, createTool } from "@mastra/core";

const searchTool = createTool({
  name: "search",
  description: "搜索互联网",
  inputSchema: z.object({ query: z.string() }),
  execute: async ({ query }) => {
    return await fetch(`https://api.search.com?q=${query}`).then(r => r.json());
  },
});

const agent = new Agent({
  name: "researcher",
  model: { provider: "anthropic", name: "claude-opus-4.7" },
  tools: { search: searchTool },
  instructions: "你是一个市场研究员",
});

const result = await agent.generate("调研AI Agent市场");

5.4 何时选Mastra

  • 团队主用TypeScript
  • 与Next.js应用同代码库部署
  • 需要前端流式输出
  • Vercel云原生部署

6. CrewAI ⭐ 快速原型首选

6.1 定位

多Agent协作框架——用角色定义Agent,让它们像团队一样协作。

6.2 核心概念

概念 说明
Agent 有角色、目标、工具的智能体
Task 具体任务,有描述和预期输出
Crew Agent和Task的集合,定义协作流程
Process 协作方式:顺序/层级
内建Memory 2026 CrewAI唯一内建语义记忆的框架

6.3 代码示例

from crewai import Agent, Task, Crew, Process
from langchain_anthropic import ChatAnthropic

llm = ChatAnthropic(model="claude-opus-4.7")

researcher = Agent(
    role="市场研究员",
    goal="收集和分析市场数据",
    backstory="你是一位经验丰富的市场研究员",
    llm=llm,
    tools=[search_tool]
)

writer = Agent(
    role="内容作者",
    goal="撰写高质量的市场分析报告",
    backstory="你是一位专业的商业写作者",
    llm=llm
)

research_task = Task(
    description="调研AI Agent市场现状和趋势",
    agent=researcher,
    expected_output="市场调研数据和分析"
)

write_task = Task(
    description="基于调研数据撰写市场分析报告",
    agent=writer,
    expected_output="结构化的市场分析报告"
)

crew = Crew(
    agents=[researcher, writer],
    tasks=[research_task, write_task],
    process=Process.sequential,
    memory=True  # 启用内建语义记忆
)

result = crew.kickoff()

6.4 何时选CrewAI

  • 快速原型(最快从0到Demo)
  • 角色化协作很自然的场景(内容/研究)
  • 需要内建语义记忆但不想自建

7. Pydantic AI ⭐ 类型安全Python

7.1 定位

类型安全的Agent框架——Pydantic团队出品,把Pydantic的"类型即文档"理念带入Agent。

7.2 核心特性

特性 说明
类型安全 Agent输入输出全部Pydantic验证
Pydantic原生 Pydantic用户零学习成本
依赖注入 优雅的Context管理
流式响应 类型安全的streaming

7.3 代码示例

from pydantic import BaseModel
from pydantic_ai import Agent, RunContext

class WeatherInfo(BaseModel):
    city: str
    temperature: float
    condition: str

agent = Agent(
    'anthropic:claude-opus-4.7',
    result_type=WeatherInfo,  # 强类型输出
    system_prompt="你是一个天气查询助手",
)

@agent.tool
async def get_weather(ctx: RunContext, city: str) -> dict:
    """查询天气API"""
    return await weather_api.get(city)

result = await agent.run("北京今天天气")
print(result.data.temperature)  # 类型安全访问

7.4 何时选Pydantic AI

  • 团队已重度使用Pydantic
  • 需要类型安全保障
  • 喜欢Python现代异步风格

8. smolagents ⭐ 极简学习

8.1 定位

HuggingFace的极简Agent框架——核心代码~1000行,用代码而非JSON做工具调用。

8.2 核心创新:Code as Action

传统Agent: LLM输出JSON → 解析 → 调用工具
smolagents: LLM输出Python代码 → 沙箱执行 → 结果反馈

优势:更少的LLM调用次数(Python可以一次写多步),更透明(你能直接读代码)。

8.3 代码示例

from smolagents import CodeAgent, tool, HfApiModel

@tool
def search_web(query: str) -> str:
    """搜索互联网"""
    return f"结果: {query}..."

agent = CodeAgent(
    tools=[search_web],
    model=HfApiModel("meta-llama/Llama-4-Maverick"),
)

# Agent内部会生成Python代码并执行
result = agent.run("找出AI Agent市场前3名公司,对比它们的估值")

8.4 何时选smolagents

  • 想读完Agent源码理解原理
  • 单Agent简单任务
  • HuggingFace生态优先

9. AutoGen / Microsoft Agent Framework

9.1 定位变化

AutoGen正在被Microsoft Agent Framework取代(2026年)。但学术研究和Azure企业仍大量使用AutoGen。

9.2 何时选

  • 在Azure生态
  • 需要多Agent对话研究
  • 已有AutoGen代码库

10. LlamaIndex / LangChain:经典两位老将

10.1 LlamaIndex - RAG最强

核心定位:数据索引框架,RAG场景的最强选择。

from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, Settings
from llama_index.llms.anthropic import Anthropic

Settings.llm = Anthropic(model="claude-opus-4.7")

documents = SimpleDirectoryReader("./data").load_data()
index = VectorStoreIndex.from_documents(documents)
query_engine = index.as_query_engine(similarity_top_k=5)

response = query_engine.query("什么是GraphRAG?")

何时选:核心需求是RAG / 多数据源 / 检索质量是第一优先级。

10.2 LangChain - 老牌通用框架

2026年定位变化:从"通用框架"变成"LangSmith可观测性入口"。

“LangChain/LangGraph的定位已经变成’可观测性’。LangSmith出现后,用LangGraph的主要理由不再是抽象,而是tracing。”

何时选:需要LangSmith观测 / 团队已用LangChain / 需要50+ integrations。


11. 何时不用框架 ⚠️ 重要

80%场景不用框架反而更优

11.1 简单任务用直接API

# 不到20行的"增强LLM"模式
from anthropic import Anthropic

client = Anthropic()
tools = [search_tool, calc_tool]
messages = [{"role": "user", "content": "帮我..."}]

while True:
    response = client.messages.create(
        model="claude-opus-4.7",
        tools=tools,
        messages=messages,
    )
    
    if response.stop_reason == "tool_use":
        tool_result = execute_tool(response.content)
        messages.append({"role": "assistant", "content": response.content})
        messages.append({"role": "user", "content": tool_result})
    else:
        return response.content[0].text

11.2 框架的真实成本

隐性成本 说明
抽象层调试 框架越厚,bug越难定位
版本升级 LangChain breaking change频繁
性能损耗 每层抽象都有开销
锁定风险 切换框架需要重写

11.3 何时真正需要框架

  • ✅ 复杂状态机(多分支、循环、Human-in-the-loop)→ LangGraph
  • ✅ 多Agent协作 → CrewAI / Claude Subagents
  • ✅ RAG密集应用 → LlamaIndex
  • ✅ 团队多人协作(需要标准化)

12. 选型决策树(2026版)

你的核心约束是什么?
│
├── 单一模型供应商
│   ├── Anthropic为主 → Claude Agent SDK
│   ├── OpenAI为主 → OpenAI Agents SDK
│   └── Google为主 → Google ADK
│
├── 语言栈
│   ├── TypeScript → Mastra
│   ├── Python + 类型安全 → Pydantic AI
│   ├── .NET / Azure → Microsoft Agent Framework
│   └── Python通用 → 看下面
│
├── 任务复杂度
│   ├── 简单单Agent → 不用框架,直接API
│   ├── 复杂状态机 → LangGraph
│   ├── 多Agent协作 → CrewAI / Claude Subagents
│   └── RAG密集 → LlamaIndex
│
└── 团队成熟度
    ├── 学习/研究 → smolagents
    ├── 快速原型 → CrewAI
    └── 生产级 → LangGraph + LangSmith

13. 框架组合实践

实际项目中,经常组合多个框架:

组合 场景
LangGraph + LlamaIndex 复杂工作流 + RAG后端
Claude Agent SDK + Subagents Anthropic生态多Agent
Mastra + Vercel AI SDK TS全栈+流式
CrewAI + LangChain Tools 多Agent + 丰富工具集
自研Pipeline + 直接API 80%生产场景
# 示例:LangGraph + LlamaIndex组合
from langgraph.graph import StateGraph
from llama_index.core import VectorStoreIndex

# LlamaIndex做RAG
index = VectorStoreIndex.from_documents(documents)
rag_engine = index.as_query_engine()

# LangGraph做流程编排
def rag_node(state):
    answer = rag_engine.query(state["question"])
    return {"answer": str(answer)}

graph = StateGraph(AgentState)
graph.add_node("rag", rag_node)
# ... 添加更多节点

14. 面试高频问题

Q1:为什么2026年模型厂商SDK崛起?

模型厂商最了解自家模型的最佳实践——Claude的tool_use细节、OpenAI的Responses API特性,第三方框架往往用最大公约数实现,损失了模型特定的能力。生产场景用官方SDK质量更高。

Q2:LangChain和LangGraph的区别?

LangChain是通用框架,链式调用为主;LangGraph是LangChain的扩展,用图结构定义复杂状态流转。2026年LangChain自身价值下降(很多场景被LangGraph和直接API替代),主要价值变成"LangSmith可观测性入口"。

Q3:Mastra为什么能跑出来?

2026年TypeScript生态的Agent需求被严重忽视。Next.js应用想加Agent,过去要用Python BFF——Mastra把全栈TS Agent做成一等公民。Marsh McLennan、SoftBank等大企业的生产部署证明它够稳。

Q4:什么场景不该用框架?

简单线性Pipeline(搜集→打分→输出)、单Agent + 少量工具、对延迟极敏感的场景、团队不愿持续维护框架版本升级。“框架demo一周搞定,生产版要6个月”——这个gap是framework没解决的。

Q5:CrewAI的内建Memory和别的框架有什么区别?

大部分框架的"记忆"只是把对话历史塞进Prompt。CrewAI内建语义记忆——会自动embedding存储+检索相关历史。LangGraph需要自己加Memory层,Claude Agent SDK有文件-based memory但不做语义检索。


总结

框架 定位 最适合 学习难度
Claude Agent SDK Anthropic生态 Claude优先团队
OpenAI Agents SDK OpenAI生态 OpenAI优先团队
LangGraph 状态机框架 生产级Agent 中高
Mastra TypeScript框架 TS团队
Pydantic AI 类型安全框架 Pydantic团队
CrewAI 多Agent框架 快速原型
smolagents 极简框架 学习/研究
LlamaIndex RAG框架 知识库问答
LangChain 老牌通用 LangSmith入口
AutoGen 多Agent对话 Azure/研究
不用框架 直接API 80%场景

框架选择的核心原则

  1. 先想清楚要解决什么问题,再选框架——不是反过来
  2. 生态决定大于功能差异——你用Claude就用Claude SDK,别强行通用
  3. 简单场景拒绝过度工程——20行直接API比300行框架更靠谱
  4. 看真实生产案例——Marsh McLennan用Mastra、Anthropic自己用Claude Agent SDK,这些是最强背书
  5. 关注95%→99%的可靠性gap——这个差距是工程量5-10倍的鸿沟,框架解决不了

2026年的Agent框架已经过了"百花齐放"阶段,进入"按生态分化"阶段。不存在万能框架,只存在最适合你团队和场景的框架。


路易乔布斯 © 2026 | AI Agent & RAG学习计划 · 模块01-Agent · 第六篇

参考资源:

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐