2026 年 AI Agent 框架选谁:LangGraph / Mastra / PydanticAI 对比

2026 年做 AI Agent / 自动化助手 / 工具编排,可选的框架不少。按技术栈和使用场景推荐。

一句话选型

场景 / 栈首选
生产级多 Agent、复杂流程LangGraph
Next.js / TypeScript 栈Mastra
Python + 类型安全PydanticAI
多角色协作模拟CrewAI
微软生态AutoGen
轻量 + 只用 OpenAIOpenAI Agents SDK

LangGraph(生产级首推)

LangGraph 是 LangChain 团队的新一代框架——基于状态机而不是 chain,比传统 LangChain Agent 稳定很多。

核心概念:一个 Agent 是一张有向图,节点是”要做什么”,边是”下一步去哪儿”。

from langgraph.graph import StateGraph

def planner(state):
    return {"plan": llm(state["query"])}

def executor(state):
    return {"result": tool_call(state["plan"])}

graph = StateGraph(dict)
graph.add_node("plan", planner)
graph.add_node("execute", executor)
graph.add_edge("plan", "execute")
graph.set_entry_point("plan")
app = graph.compile()

app.invoke({"query": "帮我订机票"})

优势

  • 显式状态机、执行流程可视化
  • 支持 Human-in-the-Loop(中断、审核、恢复)
  • 支持 checkpoint 持久化
  • 复杂 workflow 也能表达
  • 生产环境案例最多——很多公司已经从 LangChain Agent 迁到 LangGraph

缺点:学习曲线不低,Python + TS 双语言。

Mastra(Next.js 生态首选)

Mastra 是全 TypeScript 的 Agent 框架,跟 Vercel AI SDK 生态贴合。

import { Agent } from "@mastra/core";
import { openai } from "@ai-sdk/openai";

const agent = new Agent({
  name: "Assistant",
  model: openai("gpt-5"),
  tools: [webSearch, calculator],
});

const result = await agent.text("北京今天多少度?");

优势

  • TS 全栈,类型贯穿
  • Agent / Workflow / Memory / RAG 一站式
  • 部署到 Vercel / Cloudflare Workers 都方便
  • 学习曲线比 LangGraph 低

适合:Next.js 项目里直接嵌 Agent、Vercel/Cloudflare 部署、快速迭代。

PydanticAI(Python 类型党)

PydanticAI 是 Pydantic 团队做的——Structured Output 特别强,走类型驱动。

from pydantic_ai import Agent
from pydantic import BaseModel

class Answer(BaseModel):
    city: str
    temp: float
    condition: str

agent = Agent("openai:gpt-5", result_type=Answer)

result = agent.run_sync("北京今天多少度?")
print(result.data.city, result.data.temp)   # 强类型输出

优势

  • 输出直接是 Pydantic 模型,编辑器自动补全
  • 支持 OpenAI / Anthropic / Google / Ollama
  • 依赖注入优雅
  • 适合科研 / 数据分析 / 代码 Agent

CrewAI(多 Agent 协作)

CrewAI 把 Agent 组织成”团队”,每个 Agent 有角色:

from crewai import Agent, Task, Crew

researcher = Agent(role="研究员", goal="找资料")
writer = Agent(role="写作", goal="写报告")
reviewer = Agent(role="审校", goal="审核")

task1 = Task(description="研究 xxx", agent=researcher)
task2 = Task(description="写报告", agent=writer)
task3 = Task(description="审核", agent=reviewer)

crew = Crew(agents=[researcher, writer, reviewer], tasks=[task1, task2, task3])
crew.kickoff()

适合:复杂业务流程模拟——产品-开发-测试-运维流水线;市场调研 → 分析 → 报告。

缺点:抽象层多、开销较大、生产环境案例不如 LangGraph。

AutoGen(微软)

AutoGen 强项在多 Agent 对话

from autogen import AssistantAgent, UserProxyAgent

assistant = AssistantAgent("assistant", llm_config={...})
user = UserProxyAgent("user", code_execution_config={...})

user.initiate_chat(assistant, message="写个爬虫爬 GitHub trending")

Agent 之间”对话”完成任务,还能自动执行代码。学习曲线较高,生产环境案例相对少。

OpenAI Agents SDK

OpenAI Agents SDK 是 OpenAI 官方的轻量 Agent 框架:

from agents import Agent, Runner

agent = Agent(
    name="Helper",
    instructions="回答问题",
    tools=[web_search, calculator],
)

result = Runner.run_sync(agent, "北京今天多少度?")

适合:只用 OpenAI 模型 + 简单场景。想接 Claude / Gemini 就得考虑其它。

对比矩阵

框架语言状态管理多 Agent生产案例学习曲线
LangGraphPython/TS状态机最多中偏难
MastraTypeScript简单
PydanticAIPython简单有限
CrewAIPython简单
AutoGenPython对话
OpenAI SDKPython简单有限极低

建议

  • 一开始就要上生产、多 Agent、需要审核流程 → LangGraph
  • 和 Next.js 网站集成、要部署到 Vercel → Mastra
  • 科研 / 数据分析、追求类型安全 → PydanticAI
  • 只做 demo / 内部工具、就用 OpenAI → OpenAI Agents SDK
  • 要模拟一个团队协作 → CrewAI

MCP 生态

不管选哪个,都建议同时接入 MCP(Model Context Protocol)——一层协议,让所有 Agent 框架能共享工具(Context7、Playwright MCP、Slack MCP 等)。所有主流框架都有 MCP client 支持。

一句话总结

LangGraph 是当前生产 Agent 的最佳选择。TS 栈用 Mastra、Python 类型党用 PydanticAI、多角色模拟用 CrewAI。Agent 生态在 MCP 出来后开始有统一入口,选框架同时接 MCP 是长期正确的方向。