AI Agent 框架调研笔记
更新时间:2026-04-30
随着 AI Agent 技术的快速发展,各类 Agent 开发框架层出不穷。本文档对当前主流的 6 个 Agent 框架进行调研和对比分析,帮助开发者选择合适的工具。
目录
一、框架概览对比
| 维度 | LangGraph | CrewAI | LlamaIndex | Dify | OpenAI Agents SDK | Google ADK |
|---|---|---|---|---|---|---|
| 开发方 | LangChain Inc. | CrewAI Inc. | LlamaIndex Inc. | LangGenius | OpenAI | |
| 最新版本 | v1.1.10 | v1.14.3 | v0.14.6 | v1.6.0+ | v0.14.6 | v1.31.1 |
| 许可证 | MIT | MIT | MIT | Dify License (Apache 2.0+) | MIT | Apache 2.0 |
| 语言 | Python / JS | Python | Python / TS | 可视化(多语言 SDK) | Python / JS | Python / Java / Go / TS |
| 核心理念 | 图编排 | 角色扮演团队 | RAG + Agent | 低代码平台 | 极简多 Agent | 代码优先 |
| 模型支持 | 模型无关 | 模型无关 | 模型无关 | 模型无关 | 100+ LLM | 模型无关 |
| 学习曲线 | 较陡 | 中等 | 中等 | 低 | 低 | 中等 |
| 适合场景 | 复杂有状态工作流 | 多角色协作 | RAG + Agent | 快速原型/非技术用户 | OpenAI 生态应用 | Google 生态应用 |
二、LangGraph
2.1 简介
LangGraph 是由 LangChain 团队开发的底层编排框架,专门用于构建长时间运行的、有状态的 AI Agent。设计灵感来自 Google 的 Pregel 和 Apache Beam。
核心定位:不抽象化提示词或架构,提供底层基础设施,让开发者精细控制 Agent 工作流。已被 Klarna、Replit、Elastic 等公司用于生产环境。
| 项目信息 | 详情 |
|---|---|
| 最新版本 | v1.1.10(2026-04-27) |
| 许可证 | MIT |
| 安装 | pip install -U langgraph |
| GitHub | langchain-ai/langgraph |
| 文档 | docs.langchain.com/oss/python/langgraph |
2.2 核心架构
LangGraph 将 Agent 工作流建模为图(Graph),由三个核心组件构成:
- State(状态):共享数据结构,通常用
TypedDict或Pydantic Model定义 - Nodes(节点):编码 Agent 逻辑的函数,接收当前状态、返回更新后的状态
- Edges(边):决定下一个节点的函数,支持条件分支或固定转换
2.3 关键特性
- 持久化(Persistence):每个执行步骤将图状态保存为 checkpoint,支持内存、Redis 等后端
- 人机协作(Human-in-the-Loop):通过
interrupt()暂停执行,等待人工输入后恢复 - 流式输出(Streaming):支持 values、messages、updates 等多种流式模式
- 子图(Subgraphs):支持图嵌套,子图拥有独立的 checkpoint 和中断能力
- 时间旅行:可回溯到任意历史 checkpoint,支持 fork 和重放
- 可视化:编译后可生成 Mermaid 图形展示工作流结构
2.4 代码示例
1 | from typing import Literal |
2.5 优势与局限
优势: 精细化控制、有状态执行、原生人机协作、容错恢复、时间旅行调试、框架无关
局限: 学习曲线较陡、样板代码多、最佳体验需配合 LangSmith 生态、版本迭代快
三、CrewAI
3.1 简介
CrewAI 是一个用于编排多个自主 AI Agent 的 Python 框架,完全从零构建,不依赖 LangChain 或其他框架。核心理念是通过角色扮演模拟真实团队协作。
| 项目信息 | 详情 |
|---|---|
| 最新版本 | v1.14.3(2025-04-24) |
| 许可证 | MIT |
| 安装 | pip install 'crewai[tools]' |
| GitHub | crewAIInc/crewAI |
| 文档 | docs.crewai.com |
3.2 核心概念
- Agent(智能体):通过
role(角色)、goal(目标)、backstory(背景故事)定义身份和行为 - Task(任务):具体工作单元,可指定执行者、上下文依赖和输出格式
- Crew(团队):一组协作 Agent 的集合,定义执行流程和记忆配置
- Tools(工具):丰富的内置工具集(搜索、文件读写、代码执行等),支持 MCP 集成
- Process(流程):Sequential(顺序)或 Hierarchical(层级,自动创建 Manager Agent)
3.3 关键特性
- 角色扮演设计:直观的角色定义方式,贴近真实团队协作
- 协作工作流:Agent 间可委派任务、传递上下文
- 四种记忆系统:短期记忆、长期记忆、实体记忆、上下文记忆
- Flows(流程编排):企业级事件驱动工作流,支持
@start、@listen、@router装饰器 - Checkpoint & Fork:支持执行状态的保存、恢复和分支
- YAML 配置驱动:Agent 和 Task 可通过 YAML 文件定义
3.4 代码示例
1 | from crewai import Agent, Task, Crew, Process |
3.5 优势与局限
优势: 完全独立无依赖、角色扮演直观、四种记忆系统、YAML 配置驱动、活跃社区(10 万+ 认证开发者)
局限: 仅支持 Python、多 Agent 协作 API 开销大、调试复杂、企业功能需付费
四、LlamaIndex
4.1 简介
LlamaIndex(原名 GPT Index)是一个开源框架,最初专注于 RAG(检索增强生成),现已扩展为文档智能体和 OCR 平台。由 Jerry Liu 于 2022 年创立。
| 项目信息 | 详情 |
|---|---|
| 最新版本 | v0.14.6 |
| 许可证 | MIT |
| 安装 | pip install llama-index |
| GitHub | run-llama/llama_index |
| 文档 | developers.llamaindex.ai |
4.2 核心概念
- Workflow(工作流):事件驱动的编排机制,通过
@step装饰器定义步骤 - Context(上下文):全局运行时上下文,协调步骤间数据传递,支持持久化
- 事件驱动架构:
StartEvent→ 自定义事件 →StopEvent,形成有向图 - AgentWorkflow:高层封装,自动根据 LLM 能力选择合适的 Agent 类型
4.3 Agent 类型
| 类型 | 适用场景 | 特点 |
|---|---|---|
| FunctionAgent | LLM 支持函数调用时 | 直接使用原生 function calling,效率最高 |
| ReActAgent | LLM 不支持函数调用时 | 通过 ReAct(推理+行动)循环执行 |
| CodeActAgent | 需要执行代码的场景 | 通过 <execute> 标签生成并执行代码 |
4.4 关键特性
- RAG + Agent 一体化:RAG 是核心能力而非补充,130+ 数据格式接入
- 多智能体协作:原生支持多 Agent 交接(handoff)机制
- Context 持久化:工作流状态可序列化恢复,适合生产环境
- LlamaParse:企业级文档解析和 OCR
- 300+ 集成包:覆盖主流 LLM、向量数据库、数据源
4.5 代码示例
1 | from llama_index.core import VectorStoreIndex, SimpleDirectoryReader |
4.6 优势与局限
优势: RAG + Agent 深度集成、事件驱动架构灵活、300+ 生态集成、多智能体支持、LlamaParse 企业级解析
局限: 学习曲线较陡、框架较重、TS 版本功能覆盖不全、版本迭代快有 breaking changes、企业功能需付费
五、Dify
5.1 简介
Dify(Do It For You)是一个开源的 LLM 应用开发平台,定位为智能体工作流构建器。将 Backend-as-a-Service 与 LLMOps 结合,让非技术用户和开发者都能快速构建 AI 应用。
| 项目信息 | 详情 |
|---|---|
| 最新版本 | v1.6.0+ |
| 许可证 | Dify Open Source License (Apache 2.0+) |
| 部署 | docker compose up -d |
| GitHub | langgenius/dify |
| 文档 | docs.dify.ai |
5.2 核心功能
- 可视化工作流构建器:拖拽式画布,支持并行处理、条件分支、循环节点
- Agent 策略:支持 Function Calling、ReAct 和自定义策略插件
- RAG 管道:完整的数据源 → 处理 → 知识库 → 检索流程
- 模型管理:无缝集成数百种 LLM,支持模型切换和性能比较
- Prompt IDE:直观的提示词编写界面
- LLMOps:监控和分析应用日志和性能
5.3 Agent 策略
| 策略 | 适用场景 |
|---|---|
| Function Calling | 模型原生支持工具调用(如 GPT-4、Claude) |
| ReAct | 模型不支持原生函数调用,或需要显式推理追踪 |
| 自定义策略插件 | 需要多轮工具调用等复杂行为 |
5.4 创建 Agent 的方式
Dify 采用可视化/无代码方式:
- 在 Dify Studio 中创建 “Agent” 类型应用
- 选择 LLM 模型
- 设置 Agent 策略(自动检测 Function Calling 支持)
- 从 50+ 内置工具中选择或添加自定义工具
- 编写系统提示词
- 调试预览后一键发布
5.5 集成能力
- API:完整的 RESTful API,支持 SSE 流式响应
- SDK:Node.js、PHP、Java 客户端
- 插件系统:模型、工具、Agent 策略、扩展、数据源、触发器六类插件
- MCP 集成:原生支持 Model Context Protocol
- 部署:Docker Compose、Kubernetes、Terraform、AWS CDK
5.6 优势与局限
优势: 低代码/无代码、开箱即用(50+ 内置工具)、快速原型到生产、多模型支持、活跃社区(800+ 贡献者)
局限: 自定义灵活性受限(不如代码框架)、执行有步骤/时间限制、许可证非纯 Apache 2.0、平台锁定风险、高级推理模式不如专用框架成熟
六、OpenAI Agents SDK
6.1 简介
OpenAI Agents SDK 是 OpenAI 官方推出的轻量级多智能体框架,从内部 Swarm 实验项目演化而来。核心理念是极简设计——只用 Agent / Handoff / Guardrail / Tool 几个概念构建复杂工作流。
| 项目信息 | 详情 |
|---|---|
| 最新版本 | v0.14.6(2026-04-25) |
| 许可证 | MIT |
| 安装 | pip install openai-agents |
| GitHub | openai/openai-agents-python |
| 文档 | openai.github.io/openai-agents-python |
6.2 核心概念
- Agent:配置了指令、工具、护栏和交接能力的 LLM
- Runner:Agent 执行器,提供
run()(异步)、run_sync()(同步)、run_streamed()(流式) - Handoff:Agent 间的任务委托,被委托者继承完整对话历史
- Guardrails:安全护栏,分输入护栏、输出护栏、工具护栏三类
- Tools:支持函数工具、MCP 工具、OpenAI 托管工具、Agent as Tool
6.3 关键特性
- 极简设计:核心原语少,学习曲线平缓
- Provider 无关:通过 any-llm / LiteLLM 支持 100+ LLM
- 三层护栏:输入 → 输出 → 工具级别的安全校验
- 内置追踪(Tracing):可视化调试 Agent 运行流程
- Realtime Agents:支持构建语音 Agent(gpt-realtime-1.5)
- Sandbox Agents:v0.14.0 新增,在容器环境中执行代码
- 结构化输出:通过 Pydantic Model 定义 output_type
6.4 代码示例
1 | import asyncio |
6.5 优势与局限
优势: 官方维护、极简设计、Provider 无关、三层护栏、内置追踪、语音 Agent 支持
局限: 仍处 0.x 阶段 API 可能变动、深度依赖 OpenAI 生态、不支持并行 Agent 执行、无内置持久化记忆系统
七、Google ADK
7.1 简介
Google ADK(Agent Development Kit) 是 Google 推出的开源、代码优先的 Agent 开发框架。设计理念是让 AI Agent 开发更像传统软件开发,针对 Gemini 和 Google Cloud 优化,但保持模型无关和部署无关。
| 项目信息 | 详情 |
|---|---|
| 最新版本 | v1.31.1(2026-04-30) |
| 许可证 | Apache 2.0 |
| 安装 | pip install google-adk |
| GitHub | google/adk-python |
| 文档 | google.github.io/adk-docs |
7.2 核心概念
- LlmAgent(别名
Agent):核心构建块,组合 LLM 模型 + 指令 + 工具 - SequentialAgent:按顺序依次执行子 Agent(管道式)
- ParallelAgent:并发执行多个子 Agent
- LoopAgent:重复执行子 Agent,支持退出条件
- sub_agents:通过嵌套构建层级式多 Agent 架构
7.3 关键特性
- 多 Agent 编排:顺序、并行、循环和 LLM 驱动的动态路由
- 内置工具:Google Search、Vertex AI Search、代码执行器等
- Google 生态集成:原生 Gemini、Vertex AI Agent Engine、Cloud Run
- 灵活部署:本地、Agent Engine(全托管)、Cloud Run、GKE、Docker
- 内置评估:CLI 工具
adk eval系统化评估 Agent 性能 - A2A 协议:支持 Agent-to-Agent 远程通信
- 生命周期回调:
before/after_agent、before/after_model、before/after_tool钩子
7.4 代码示例
1 | import asyncio |
7.5 优势与局限
优势: 代码优先、强大编排能力(顺序/并行/循环)、Google 生态深度集成、内置评估、多语言支持(Python/Java/Go/TS)、Apache 2.0 开源
局限: 最佳体验需 Gemini 和 Google Cloud、框架较新社区生态初期、高频发布 API 可能变动、中国大陆访问 Google 服务受限
八、框架选型指南
按使用场景选择
| 场景 | 推荐框架 | 理由 |
|---|---|---|
| 复杂有状态工作流 | LangGraph | 底层图编排、持久化、时间旅行 |
| 多角色团队协作 | CrewAI | 角色扮演设计、委派机制、记忆系统 |
| RAG + Agent | LlamaIndex | RAG 深度集成、130+ 数据格式、文档解析 |
| 快速原型 / 非技术团队 | Dify | 可视化拖拽、低代码、开箱即用 |
| OpenAI 模型为主 | OpenAI Agents SDK | 官方维护、极简 API、追踪调试 |
| Google Cloud 部署 | Google ADK | Gemini 优化、Vertex AI 集成、内置评估 |
| 需要精细控制 | LangGraph / Google ADK | 底层 API、回调钩子 |
| 需要生产级护栏 | OpenAI Agents SDK | 三层 Guardrails |
按团队特点选择
| 团队特点 | 推荐 |
|---|---|
| 全栈开发团队 | LangGraph、Google ADK |
| Python 数据科学团队 | CrewAI、LlamaIndex |
| 产品经理 / 运营团队 | Dify |
| OpenAI 生态重度用户 | OpenAI Agents SDK |
| Google Cloud 用户 | Google ADK |
| 需要快速验证想法 | Dify、OpenAI Agents SDK |
注意:以上框架信息基于 2026 年 4 月的调研,各框架迭代较快,建议使用前查看官方文档获取最新信息。