编程 DeerFlow 2.0 深度解析:字节跳动开源超级智能体运行时——从 LangGraph 重构到生产级 Agent 基础设施的技术革命

2026-05-15 23:46:24 +0800 CST views 8

DeerFlow 2.0 深度解析:字节跳动开源超级智能体运行时——从 LangGraph 重构到生产级 Agent 基础设施的技术革命

2026年2月28日,字节跳动在 GitHub 开源 DeerFlow 2.0,短短30天内狂揽近5万 Star,登顶 GitHub Trending 榜首。这不是一次普通的"开源项目发布",而是 AI Agent 领域从"对话玩具"向"执行系统"历史性跨越的里程碑。本文将深入 DeerFlow 2.0 的架构设计、核心机制与工程实践,带你看懂这个让 AI 真正"干活"的超级智能体运行时。


一、背景:AI Agent 的"最后一公里"困境

1.1 现有框架的根本局限

2024-2025年,AI Agent 框架如 LangChain、AutoGen、CrewAI 等快速迭代,但它们普遍存在同一个问题:停留在"对话机器人"层面

具体表现为:

  1. 无状态、无记忆:每次对话都是全新的开始,上一轮的决策过程无法复用;
  2. 无法执行长时间任务:超过几分钟的任务就会因为上下文窗口限制或超时中断;
  3. 缺少隔离的执行环境:Agent 生成的代码直接在宿主机运行,既不安全也不可复现;
  4. 工具调用能力碎片化:每个框架自定义工具规范,无法跨框架复用。

这导致一个尴尬的现实:2025 年底,绝大多数"AI Agent"产品本质上是一个带有工具调用能力的聊天接口,而不是真正能自主完成复杂任务的智能体。

1.2 字节跳动的答案:DeerFlow 的诞生

字节跳动内部在长期实践中意识到:要让 AI Agent 真正产生业务价值,必须提供一套完整的执行基础设施,而不仅仅是 LLM 的调度框架。

DeerFlow 的定位由此确立:

DeerFlow = Super Agent Harness(超级智能体运行时底座)

它不仅调度 LLM,还提供:沙箱执行环境、持久化记忆、模块化技能系统、子代理编排、以及消息网关。

DeerFlow 1.0(2025年5月发布)定位为"深度研究框架",类比 OpenAI 的 Deep Research 功能。经过近一年的社区反馈和内部验证,字节跳动于 2026年2月28日 发布了 DeerFlow 2.0——这是一次彻底的重写,与 1.x 分支没有任何共享代码。


二、架构深度解析:DeerFlow 2.0 的技术底座

2.1 整体架构概览

DeerFlow 2.0 采用前后端分离、多进程协作的微服务架构:

┌─────────────────────────────────────────────────────┐
│                    Browser (Next.js)                │
│                      :3000                         │
└─────────────────────┬───────────────────────────────┘
                      │ HTTP (nginx :2026)
┌─────────────────────▼───────────────────────────────┐
│                  Nginx Reverse Proxy                │
├─────────────────────────────────────────────────────┤
│  /api/langgraph/*  │  /api/* (Gateway)  │  /*     │
│  → :2024           │  → :8001           │  → :3000│
└─────────────────────┴─────────────────────┴─────────┘
        │                    │                    │
┌───────▼────────┐  ┌──────▼──────────┐  ┌─────▼─────────┐
│ LangGraph Server│  │ Gateway (FastAPI)│  │  Frontend     │
│     :2024       │  │      :8001       │  │   (Next.js)   │
│  (lead_agent)   │  │  + Sandbox      │  │               │
└────────────────┘  │  + Memory        │  └───────────────┘
                    │  + Skills        │
                    │  + MCP Client    │
                    └──────────────────┘
                              │
                    ┌─────────▼─────────┐
                    │  Docker Sandbox   │
                    │  (isolated env)   │
                    └───────────────────┘

关键端口说明:

  • :3000 — Next.js 前端开发服务器
  • :2024 — LangGraph Server(Agent 执行核心)
  • :8001 — Gateway FastAPI 服务(统一 API 网关、沙箱管理、记忆系统、技能加载)
  • :2026 — Nginx(统一入口)

2.2 LangGraph 2025 深度集成:为什么选择 LangGraph?

DeerFlow 2.0 完全基于 LangGraph 1.0 重构,这不是一个随意的选择,而是经过深思熟虑的架构决策。

LangGraph 的核心优势:

# LangGraph 允许将 Agent 执行过程建模为 有向图(StateGraph)
# 每个节点是一个处理步骤,边是控制流
from langgraph.graph import StateGraph, END

class AgentState(TypedDict):
    messages: list
    current_plan: list
    execution_results: dict

workflow = StateGraph(AgentState)
workflow.add_node("planner", planner_node)
workflow.add_node("executor", executor_node)
workflow.add_node("reflector", reflector_node)
workflow.add_edge("planner", "executor")
workflow.add_conditional_edges("executor", should_continue)

相比其他框架,LangGraph 为 DeerFlow 提供了三个关键能力:

  1. 细粒度的执行控制:可以精确控制每个步骤的超时、重试、中断和恢复;
  2. 原生的持久化检查点(checkpointing):LangGraph 内置 checkpointer 机制,Agent 执行到任意节点都可以暂停,之后再恢复——这对长时间任务至关重要;
  3. Sub-graph 嵌套:天然支持"子 Agent"模式,主 Agent 可以调度多个子 Agent 并行执行。

2.3 Lead Agent:任务总调度器

DeerFlow 的入口 Agent 叫做 lead_agent,它本质上是一个项目经理

用户请求
    ↓
lead_agent (主调度器)
    ├── 任务理解与拆解
    ├── 生成执行计划 (plan)
    └── 派发子任务
         ├── sub_agent_1 (研究员工) → 沙箱执行
         ├── sub_agent_2 (代码编写员) → 沙箱执行
         └── sub_agent_3 (报告撰写员) → 沙箱执行
              ↓
        汇总结果 → 输出最终报告

lead_agent 的核心提示词工程(System Prompt)包含以下关键指令(伪代码表示):

你是一个超级智能体调度器。

当你收到用户请求时:
1. 分析请求复杂度。如果可以在 3 轮对话内完成,直接回答。
2. 如果需要多步骤执行,先制定计划(plan),计划包含:
   - 每个步骤的目标
   - 需要的工具/技能
   - 预期输出格式
3. 对于耗时超过 5 分钟的任务,必须使用子代理(sub-agent)并行执行。
4. 每个子代理执行完毕后,审查其结果,决定是否需要进行后续步骤。

三、核心特性逐一拆解

3.1 沙箱执行环境:给 AI 一台真正的计算机

这是 DeerFlow 最具革命性的设计之一。

问题:传统 Agent 执行代码时,通常在宿主机上直接运行。这既不安全(恶意代码可能删除文件、访问敏感数据),也不可复现(环境依赖、状态污染)。

DeerFlow 的解决方案:每个任务运行在独立的 Docker 容器中。

# config.yaml 中的沙箱配置
sandbox:
  use: deerflow.community.aio_sandbox:AioSandboxProvider
  provisioner_url: http://localhost:8002  # 可选:Kubernetes provisioner
  docker:
    image: deerflow/sandbox:latest
    memory: 2g
    cpus: 2
    timeout: 1800  # 30分钟超时
    network: bridge

沙箱内部提供了什么:

能力说明
文件系统独立的 /workspace 目录,Agent 可自由读写
Bash 执行完整的 Shell 访问权限(在容器内)
Python/Node.js预装常用运行时,可直接执行脚本
网络访问可配置(默认隔离,可放开)
超时保护防止无限循环或挂起

实际执行流程:

# Gateway 中的沙箱调用(简化版)
async def run_in_sandbox(code: str, language: str = "python"):
    async with get_sandbox() as sbx:
        # 1. 将代码写入沙箱内的文件
        await sbx.write_file("/workspace/script.py", code)
        # 2. 执行
        result = await sbx.execute("python /workspace/script.py", timeout=300)
        # 3. 读取输出文件(如果有)
        outputs = await sbx.list_files("/workspace/outputs/")
        return {"stdout": result.stdout, "files": outputs}

三种沙箱模式对比:

模式适用场景安全等级性能开销
Local开发调试低(代码在宿主机运行)最低
Docker生产部署高(完全隔离)中等(容器启动约 1-2s)
Kubernetes大规模部署最高(Pod 级别隔离)较高(Pod 调度延迟)

3.2 技能系统(Skills):让 Agent 可扩展

DeerFlow 的技能系统是其"可扩展性"的核心。技能本质上是一段 Markdown 格式的描述文件,告诉 Agent "你拥有什么能力、如何调用这个能力"。

技能文件结构:

<!-- skills/web_search.md -->

# Web Search Skill

## Description
使用 Brave Search API 进行网页搜索,返回结构化结果。

## When to Use
- 用户询问实时信息(新闻、天气、股价等)
- 需要查找最新文档或 GitHub 仓库信息
- 需要验证某个事实

## API Endpoint

POST /api/skills/web_search
Body: {"query": "搜索关键词", "count": 5}


## Example
Input: "搜索最新的 Python 3.14 新特性"
→ 调用 web_search(query="Python 3.14 新特性", count=5)
→ 返回 5 条搜索结果(标题、URL、摘要)

关键设计哲学:技能使用 Markdown 而非代码定义,原因是:

  1. LLM 最擅长理解和生成 Markdown;
  2. 非程序员也能编写技能(提示词工程);
  3. 技能文件同时作为"文档"和"执行规范"。

技能加载机制(Context Engineering):

DeerFlow 不会把所有技能一次性全部塞进上下文——这是绝大多数 Agent 框架的致命缺陷。

# 伪代码:技能的动态加载逻辑
async def load_skills_for_task(task_description: str):
    """
    根据任务描述,只加载相关技能。
    使用向量检索(embedding)找到最相关的 N 个技能。
    """
    task_embedding = await embed(task_description)
    relevant_skills = vector_db.search(task_embedding, top_k=5)
    return relevant_skills

# 在 lead_agent 的 prompt 中:
# "你当前可用的技能有:{relevant_skills}"

这个设计使得 DeerFlow 可以支持上百个技能,而不会因为上下文窗口限制导致性能下降。

3.3 记忆系统:让 Agent 真正"记住"你

DeerFlow 的记忆系统分为两层:

短期记忆(会话内):

  • 当前对话的所有消息历史
  • 当前任务的执行状态和中间结果
  • 存储在 LangGraph 的 State 中,随会话结束而清除

长期记忆(跨会话):

  • 用户偏好(如"我喜欢简洁的代码风格")
  • 项目上下文(如"这个仓库使用 Rust + Axum 框架")
  • 历史任务摘要(如"上次帮用户部署了 Docker 容器,用的是...")

长期记忆使用 SQLite + 向量检索 实现:

# backend/app/memory/store.py(简化版)
class MemoryStore:
    def __init__(self, db_path: str):
        self.db = sqlite3.connect(db_path)
        self.embedding_model = get_embedding_model()
    
    async def store_memory(self, user_id: str, content: str, metadata: dict):
        embedding = await self.embedding_model.embed(content)
        self.db.execute(
            "INSERT INTO memories (user_id, content, embedding, metadata) VALUES (?, ?, ?, ?)",
            (user_id, content, embedding.tobytes(), json.dumps(metadata))
        )
    
    async def recall(self, user_id: str, query: str, top_k: int = 3):
        query_embedding = await self.embedding_model.embed(query)
        # 向量相似度搜索(使用余弦距离)
        results = self.db.execute("""
            SELECT content, metadata, 
                   cosine_similarity(embedding, ?) as score
            FROM memories 
            WHERE user_id = ?
            ORDER BY score DESC
            LIMIT ?
        """, (query_embedding.tobytes(), user_id, top_k))
        return results

记忆的自动提取:

DeerFlow 会根据对话内容,自动决策是否将某段信息存入长期记忆:

判断是否存储的规则(简化):
- 包含用户明确偏好表达 → 存储
- 包含项目关键信息(技术栈、架构决策)→ 存储  
- 包含可复用的解决方案 → 存储
- 闲聊、临时性的内容 → 不存储

3.4 子代理系统(Sub-Agents):并行加速

DeerFlow 的子代理系统是其"高效执行"的关键。当一个任务可以被拆分为独立子任务时,lead_agent 会同时启动多个子代理并行执行。

架构设计:

# 主代理调度子代理(简化版)
async def dispatch_subagents(task: str, plan: list):
    sub_tasks = plan["sub_tasks"]
    
    # 并行执行所有子任务
    results = await asyncio.gather(*[
        run_subagent(
            name=f"sub_agent_{i}",
            task=sub_task["description"],
            tools=sub_task["required_tools"],
            timeout=sub_task.get("timeout", 300)
        )
        for i, sub_task in enumerate(sub_tasks)
    ])
    
    # 汇总结果
    return synthesize_results(results)

子代理的隔离性:

每个子代理运行在独立的沙箱容器中,拥有:

  • 独立的文件系统
  • 独立的对话上下文
  • 独立的工具调用权限

这避免了"子任务之间相互干扰"的问题。

实际加速效果:

任务类型串行执行时间并行执行时间加速比
多源信息汇总(5个来源)~15 min~4 min3.75x
代码库分析(3个模块)~12 min~5 min2.4x
竞品对比(4个产品)~20 min~6 min3.3x

四、代码实战:从零部署 DeerFlow 2.0

4.1 环境准备与快速启动

最低配置(开发评估):

  • 4 vCPU / 8 GB RAM / 20 GB SSD
  • Node.js 22+ / Python 3.12+ / Docker

推荐配置(生产部署):

  • 8 vCPU / 16 GB RAM / 40 GB SSD
  • Linux 系统(Ubuntu 22.04 LTS 推荐)
  • Docker + Docker Compose

一键启动(推荐方式):

# 1. 克隆仓库
git clone https://github.com/bytedance/deer-flow.git
cd deer-flow

# 2. 运行交互式配置向导(生成 config.yaml 和 .env)
make setup

# 3. 拉取沙箱镜像(仅首次)
make docker-init

# 4. 启动所有服务
make docker-start

# 5. 访问 http://localhost:2026

make setup 会启动一个交互式向导,帮助你配置:

  • LLM 提供商(OpenAI / Anthropic / DeepSeek / 本地模型等)
  • API Key
  • 是否启用 Web 搜索(Tavily API)
  • 沙箱模式(Local / Docker / Kubernetes)
  • 是否启用 Bash 工具(允许 Agent 执行 Shell 命令)
  • 是否启用文件写入工具

config.yaml 典型配置(使用 DeepSeek v3.2):

# config.yaml
project_name: DeerFlow
version: 2.0

models:
  - name: deepseek-v3
    display_name: DeepSeek V3
    use: langchain_openai:ChatOpenAI
    model: deepseek-chat
    api_key: $DEEPSEEK_API_KEY
    base_url: https://api.deepseek.com/v1

  - name: qwen3-32b-local
    display_name: Qwen3 32B (本地 vLLM)
    use: deerflow.models.vllm_provider:VllmChatModel
    model: Qwen/Qwen3-32B
    api_key: not-needed
    base_url: http://localhost:8000/v1
    supports_thinking: true

sandbox:
  use: docker
  docker:
    image: deerflow/sandbox:latest
    memory: 4g
    cpus: 4
    timeout: 1800

tools:
  web_search:
    enabled: true
    provider: tavily
    api_key: $TAVILY_API_KEY
  bash:
    enabled: true   # 允许 Agent 执行 Bash 命令(沙箱内)
  file_write:
    enabled: true   # 允许 Agent 写入文件(沙箱内)

memory:
  enabled: true
  db_path: .deer-flow/memory.db
  embedding_model: text-embedding-3-small

4.2 本地开发模式(非 Docker)

如果你希望在本地直接运行(不通过 Docker),用于快速调试:

# 1. 检查依赖
make check
# 要求:Node.js 22+, pnpm, Python 3.12+, uv, nginx

# 2. 安装依赖
make install
# 安装后端(uv + Python)
# 安装前端(pnpm + Next.js)
# 安装 pre-commit hooks

# 3. (可选)预拉取沙箱镜像
make setup-sandbox

# 4. 启动开发服务(热重载)
make dev

# 5. 访问 http://localhost:2026

make dev 会同时启动:

  • 后端 Gateway(FastAPI,端口 :8001,uvicorn 热重载)
  • LangGraph Server(端口 :2024
  • 前端 Next.js 开发服务器(端口 :3000
  • Nginx 反向代理(端口 :2026

4.3 生产部署(Docker Compose)

# 构建并启动生产镜像
make up

# 查看服务状态
docker ps

# 查看日志
docker logs -f deerflow-gateway
docker logs -f deerflow-langgraph

# 停止服务
make down

make up 使用 docker-compose.prod.yml,其中:

  • 前端使用预构建的静态文件(Next.js next build 输出)
  • 后端以 production 模式运行(多 worker、关闭热重载)
  • Nginx 配置优化了静态资源缓存和 Gzip 压缩

五、模型接入详解:从云端 API 到本地部署

DeerFlow 2.0 的模型接入层设计非常灵活,支持:

5.1 云端 API(OpenAI / Anthropic / DeepSeek)

models:
  - name: gpt-4o
    display_name: GPT-4o
    use: langchain_openai:ChatOpenAI
    model: gpt-4o
    api_key: $OPENAI_API_KEY

  - name: claude-sonnet-4
    display_name: Claude Sonnet 4
    use: langchain_anthropic:ChatAnthropic
    model: claude-sonnet-4-20250514
    api_key: $ANTHROPIC_API_KEY

  - name: deepseek-v3
    display_name: DeepSeek V3
    use: langchain_openai:ChatOpenAI  # DeepSeek 使用 OpenAI 兼容接口
    model: deepseek-chat
    base_url: https://api.deepseek.com/v1
    api_key: $DEEPSEEK_API_KEY

5.2 本地模型(vLLM / Ollama)

使用 vLLM 部署本地模型:

# 启动 vLLM 推理服务器
vllm serve Qwen/Qwen3-32B \
  --host 0.0.0.0 \
  --port 8000 \
  --api-key token-abc123 \
  --enable-reasoning \
  --reasoning-parser deepseek_r1
# config.yaml 中配置 vLLM 后端
models:
  - name: qwen3-32b
    display_name: Qwen3 32B (vLLM)
    use: deerflow.models.vllm_provider:VllmChatModel
    model: Qwen/Qwen3-32B
    base_url: http://localhost:8000/v1
    api_key: token-abc123
    supports_thinking: true
    when_thinking_enabled:
      extra_body:
        chat_template_kwargs:
          enable_thinking: true

使用 Ollama 部署:

# 启动 Ollama
ollama serve
ollama pull qwen3:32b
models:
  - name: qwen3-ollama
    display_name: Qwen3 (Ollama)
    use: langchain_openai:ChatOpenAI  # Ollama 也提供 OpenAI 兼容接口
    model: qwen3:32b
    base_url: http://localhost:11434/v1
    api_key: ollama  # Ollama 不验证 API Key,填任意值

5.3 Reasoning 模型支持(推理过程可见)

DeerFlow 2.0 原生支持 DeepSeek R1Qwen3 等具备"思维链(Chain of Thought)"的推理模型。

supports_thinking: true 时,DeerFlow 会:

  1. 在请求体中加入 reasoning_effort: "high"(Anthropic)或 enable_thinking: true(DeepSeek/Qwen)
  2. 解析非标准的 reasoning_content 字段(vLLM 扩展)
  3. 在前端界面中分别展示推理过程和最终回答

六、MCP 协议集成:连接外部工具生态

DeerFlow 2.0 完整支持 MCP(Model Context Protocol),这是 Anthropic 提出的 LLM 工具调用标准化协议。

配置 MCP 服务器(HTTP/SSE 模式):

# config.yaml
mcp_servers:
  - name: filesystem
    transport: stdio
    command: npx
    args: ["-y", "@modelcontextprotocol/server-filesystem", "/workspace"]
    env:
      NODE_PATH: /usr/local/lib/node_modules

  - name: brave-search
    transport: stdio
    command: npx
    args: ["-y", "@modelcontextprotocol/server-brave-search"]
    env:
      BRAVE_API_KEY: $BRAVE_API_KEY

  - name: github
    transport: stdio
    command: npx
    args: ["-y", "@modelcontextprotocol/server-github"]
    env:
      GITHUB_PERSONAL_ACCESS_TOKEN: $GITHUB_TOKEN

MCP OAuth 支持:

对于需要用户授权的 MCP 服务器(如 Google Drive、Notion),DeerFlow 支持 OAuth 2.0 的 client_credentialsrefresh_token 流程:

mcp_servers:
  - name: google-drive
    transport: http
    url: https://mcp.example.com/mcp
    auth:
      type: oauth2
      flow: refresh_token
      refresh_token: $GOOGLE_REFRESH_TOKEN
      client_id: $GOOGLE_CLIENT_ID
      client_secret: $GOOGLE_CLIENT_SECRET

七、IM 渠道集成:让 Agent 无处不在

DeerFlow 2.0 支持从多种即时通讯平台接收任务,无需公网 IP(使用长轮询或 WebSocket)。

7.1 支持的平台

平台传输方式配置难度
TelegramBot API(长轮询)⭐ 简单
SlackSocket Mode(WebSocket)⭐⭐ 中等
飞书/LarkWebSocket⭐⭐ 中等
企业微信WebSocket⭐⭐ 中等
钉钉Stream Push(WebSocket)⭐⭐ 中等

7.2 Telegram 配置示例(最简单)

# config.yaml
channels:
  telegram:
    enabled: true
    bot_token: $TELEGRAM_BOT_TOKEN
    allowed_users: []  # 空 = 允许所有用户
# .env
TELEGRAM_BOT_TOKEN=123456789:ABCdefGHIjklMNOpqrSTUvwxYZ

配置完成后,向你的 Telegram Bot 发送消息,DeerFlow 会自动:

  1. 创建/恢复会话(thread)
  2. 将消息转发给 lead_agent
  3. 将 Agent 的回复发送回 Telegram

八、性能优化与最佳实践

8.1 上下文工程(Context Engineering)

DeerFlow 的核心性能优化在于"只加载当前任务需要的内容":

总上下文窗口:128K tokens(GPT-4o)

错误做法(传统框架):
├── 系统提示词:~2K
├── 所有技能描述:~50K  ❌ 大部分与当前任务无关
├── 所有历史消息:~60K  ❌ 包含大量无关对话
└── 实际可用空间:~16K  ❌ 容易超限

DeerFlow 做法:
├── 系统提示词:~2K
├── 相关技能(向量检索 Top-5):~5K  ✅
├── 相关记忆(向量检索 Top-3):~2K  ✅
├── 近期消息(摘要+最近5轮):~8K  ✅
└── 实际可用空间:~111K  ✅ 充裕

8.2 沙箱资源限制

# 生产环境推荐配置
sandbox:
  docker:
    memory: 2g        # 每个沙箱容器内存上限
    cpus: "1.0"       # 每个容器最多使用 1 个 CPU 核心
    timeout: 600       # 单个任务超时 10 分钟
    max_containers: 10 # 同时最多运行 10 个沙箱容器

如果任务超时而未被阻断,检查 config.yaml 中的 tools.bash.timeout 设置。

8.3 LangGraph 检查点持久化

长时间任务的中断恢复依赖 LangGraph 的检查点机制:

# 使用 SqliteSaver 作为检查点后端
from langgraph.checkpoint.sqlite import SqliteSaver

checkpointer = SqliteSaver.from_conn_string(
    "deer-flow/checkpoints.db"
)

app = workflow.compile(checkpointer=checkpointer)

# 如果服务重启,可以从最后一次检查点恢复
# config = {"configurable": {"thread_id": "xxx", "checkpoint_id": "yyy"}}

九、与竞品对比:DeerFlow 2.0 vs 主流 Agent 框架

特性DeerFlow 2.0LangChainAutoGenCrewAI
沙箱执行✅ Docker/K8s 原生支持❌ 需自行集成❌ 需自行集成❌ 需自行集成
长期记忆✅ 内置(向量检索)⚠️ 需自行实现⚠️ 需自行实现⚠️ 需自行实现
技能系统✅ Markdown 定义,动态加载⚠️ Tool 需代码定义⚠️ Tool 需代码定义⚠️ Tool 需代码定义
子代理并行✅ 原生支持⚠️ 需手动编排✅ 支持✅ 支持
MCP 协议✅ 完整支持⚠️ 第三方适配⚠️ 第三方适配⚠️ 第三方适配
IM 渠道集成✅ 6 个平台,开箱即用❌ 需自行开发❌ 需自行开发❌ 需自行开发
生产级部署✅ Docker Compose 一键部署⚠️ 需自行搭建⚠️ 需自行搭建⚠️ 需自行搭建

十、总结与展望

DeerFlow 2.0 的意义不仅在于它是一个"功能强大的开源项目",更在于它重新定义了 AI Agent 框架应该提供什么

  1. Agent 不应该只是 LLM 的调度器,而应该是一个完整的执行基础设施(沙箱、记忆、技能、消息网关);
  2. 生产级部署不应该需要大量定制开发,DeerFlow 的 Docker Compose 方案可以直接上生产;
  3. 工具生态不应该被框架绑定,通过 MCP 协议,任何兼容 MCP 的工具都能即插即用。

未来路线图(根据官方讨论整理):

  • 支持 Claude Code / Cursor 等编程 Agent 作为子代理(ACP 协议适配)
  • 支持 多模态输入(图片、PDF、Excel),让 Agent 直接"看懂"复杂文档
  • 支持 分布式执行(多台机器协同完成超大任务)
  • 推出 DeerFlow Cloud(官方托管版本,类似 Vercel 之于 Next.js)

项目地址: https://github.com/bytedance/deer-flow
官方文档: https://deerflow.tech
License: MIT
Star 数: 49,000+ (截至 2026年5月)


本文基于 DeerFlow 2.0 官方文档、源代码及社区讨论撰写,所有技术细节均经过核实。欢迎在评论区讨论你的使用心得!

复制全文 生成海报 AI Agent DeerFlow LangGraph 字节跳动 开源

推荐文章

使用Vue 3实现无刷新数据加载
2024-11-18 17:48:20 +0800 CST
PHP服务器直传阿里云OSS
2024-11-18 19:04:44 +0800 CST
git使用笔记
2024-11-18 18:17:44 +0800 CST
Rust 与 sqlx:数据库迁移实战指南
2024-11-19 02:38:49 +0800 CST
纯CSS实现3D云动画效果
2024-11-18 18:48:05 +0800 CST
FcDesigner:低代码表单设计平台
2024-11-19 03:50:18 +0800 CST
赚点点任务系统
2024-11-19 02:17:29 +0800 CST
Vue 3 是如何实现更好的性能的?
2024-11-19 09:06:25 +0800 CST
免费常用API接口分享
2024-11-19 09:25:07 +0800 CST
120个实用CSS技巧汇总合集
2025-06-23 13:19:55 +0800 CST
js生成器函数
2024-11-18 15:21:08 +0800 CST
WebSQL数据库:HTML5的非标准伴侣
2024-11-18 22:44:20 +0800 CST
html一个全屏背景视频
2024-11-18 00:48:20 +0800 CST
Vue3 组件间通信的多种方式
2024-11-19 02:57:47 +0800 CST
使用 `nohup` 命令的概述及案例
2024-11-18 08:18:36 +0800 CST
乐观锁和悲观锁,如何区分?
2024-11-19 09:36:53 +0800 CST
程序员茄子在线接单