【拥抱AI】Deer-Flow字节跳动开源的多智能体深度研究框架

[复制链接]
发表于 2025-9-2 10:06:31 | 显示全部楼层 |阅读模式
迩来发现一款可以对标甚至大概逾越GPT-Researcher的AI深度研究应用,Deer-Flow(Deep Exploration and Efficient Research Flow)作为字节跳动近期开源的重量级项目,正以其模块化、机动性和人机协同本领引发广泛关注。该项目基于 LangGraphLangChain 框架构建,旨在通过整合语言模子(LLM)与专业工具链(如网络搜索、爬虫代码执行),实现端到端的复杂研究流程自动化,同时为开辟者提供高度可扩展的二次开辟空间。
核心特点


  • 多智能体协作架构
    Deer-Flow采取模块化设计,将研究任务分解为和谐器、规划器、研究团队(研究员、编码员)和报告生成器等角色,各智能体通过界说良好的消息系统协同工作。这种架构不仅提升了任务执行服从,还支持动态调解研究路径。
  • 工具链深度集成
    支持 TavilyBrave Search 等搜索引擎,联合 Jina 爬虫Python REPL 工具,覆盖从数据收罗到代码分析的全流程。此外,通过 MCP 平台扩展私有数据访问本领,满意企业级需求。
  • 人机交互与内容生成
    用户可通过自然语言及时修改研究计划,并使用类 Notion 的块编辑功能优化报告。其 AI 辅助生成 本领支持播客脚本、PPT 及结构化报告的一键生成,联合火山引擎 TTS 实现多模态输出。
  • 开源与中文友好
    采取 MIT 允许证,支持本地化部署与私有数据接入,原生适配中文研究场景,低落技术门槛。
以下跟前段时间认识的 GPT-Researcher 简单的作一些对比

尽管两者均致力于自动化研究,Deer-FlowGPT-Researcher 在架构与应用场景上存在显著差异:


  • 架构设计
    GPT-Researcher 以 Plan-and-Solve 为核心,通过并行处理子任务提升服从,但依赖单一代理执行流程,最新的GPT-Researcher是支持多Agent执行任务,也是使用LangGraph,但总体流程照旧没有变;
    而 Deer-Flow 的 多智能体系统 通太过工协作(如研究员负责信息收集、编码员处理技术任务)加强了复杂任务的处理本领与可追溯性,过程有“反思”,中途可干预,结果可修正
  • 工具链与扩展性
    GPT-Researcher 虽支持多种 LLM 配置,但其工具集成相对有限,需依赖外部插件扩展功能。Deer-Flow 则内置 模块化工具链(如爬虫代码执行),并支持无缝集成企业级 MCP 平台,适用性更广。
  • 内容生成与交互
    GPT-Researcher 专注于生成文本报告,而 Deer-Flow 提供 多模态输出(音频、PPT)及交互式编辑功能,更贴近实际研究场景的多样性需求。
个人照旧比力看好Deer-Flow将来的发展,它依附其多智能体架构、工具链深度整合及开源生态,为学术研究、贸易分析等领域提供了高效且可定制的办理方案。相较于 GPT-Researcher,它在复杂任务处理、多模态输出及本土化适配方面更具优势,展现了开源框架在AI研究自动化中的独特价值。
废话就说到这里,下面我们一起来了解一下它。
以下引用DeerFlow 的官方网站内容。
视频演示

由于平台不支持github地址直接播放,只能请小伙伴自行前往观看。官方视频演示地址 https://github.com/user-attachments/assets/f3786598-1f2a-4d07-919e-8b99dfa1de3e
在官方的演示中,展示了如何使用 DeerFlow:


  • 无缝集成 MCP 服务
  • 举行深度研究过程并生成包罗图像的综合报告
  • 基于生成的报告创建播客音频
快速开始

DeerFlow 使用 Python 开辟,并配有用 Node.js 编写的 Web UI。为确保顺遂的设置过程,我们保举使用以下工具:
保举工具



  • uv:
    简化 Python 情况和依赖管理。uv会自动在根目次创建虚拟情况并为您安装所有必需的包—无需手动安装 Python 情况。
  • nvm:
    轻松管理多个 Node.js 运行时版本
  • pnpm:
    安装和管理 Node.js 项目标依赖。
情况要求

确保您的系统满意以下最低要求:

安装

  1. # 克隆仓库
  2. git clone https://github.com/bytedance/deer-flow.git
  3. cd deer-flow
  4. # 安装依赖,uv将负责Python解释器和虚拟环境的创建,并安装所需的包
  5. uv sync
  6. # 使用您的API密钥配置.env
  7. # Tavily: https://app.tavily.com/home
  8. # Brave_SEARCH: https://brave.com/search/api/
  9. # 火山引擎TTS: 如果您有TTS凭证,请添加
  10. cp .env.example .env
  11. # 查看下方的"支持的搜索引擎"和"文本转语音集成"部分了解所有可用选项
  12. # 为您的LLM模型和API密钥配置conf.yaml
  13. # 请参阅'docs/configuration_guide.md'获取更多详情
  14. cp conf.yaml.example conf.yaml
  15. # 安装marp用于PPT生成
  16. # https://github.com/marp-team/marp-cli?tab=readme-ov-file#use-package-manager
  17. brew install marp-cli
复制代码
可选,通过pnpm安装 Web UI 依赖:
  1. cd deer-flow/web
  2. pnpm install
复制代码
配置

请参阅配置指南获取更多详情。
   [!留意]
在启动项目之前,请仔细阅读指南,并更新配置以匹配您的特定设置和要求。
  控制台 UI

运行项目标最快方法是使用控制台 UI。
  1. # 在类bash的shell中运行项目
  2. uv run main.py
复制代码
Web UI

本项目还包括一个 Web UI,提供更加动态和引人入胜的交互体验。
   [!留意]
您需要先安装 Web UI 的依赖。
  1. # 在开发模式下同时运行后端和前端服务器
  2. # 在macOS/Linux上
  3. ./bootstrap.sh -d
  4. # 在Windows上
  5. bootstrap.bat -d
复制代码
打开浏览器并访问http://localhost:3000探索 Web UI。
在web目次中探索更多详情。
支持的搜索引擎

DeerFlow 支持多种搜索引擎,可以在.env文件中通过SEARCH_API变量举行配置:


  • Tavily(默认):专为 AI 应用设计的专业搜索 API

    • 需要在.env文件中设置TAVILY_API_KEY
    • 注册地址:https://app.tavily.com/home

  • DuckDuckGo:注意隐私的搜索引擎

    • 无需 API 密钥

  • Brave Search:具有高级功能的注意隐私的搜索引擎

    • 需要在.env文件中设置BRAVE_SEARCH_API_KEY
    • 注册地址:https://brave.com/search/api/

  • Arxiv:用于学术研究的科学论文搜索

    • 无需 API 密钥
    • 专为科学和学术论文设计

要配置您首选的搜索引擎,请在.env文件中设置SEARCH_API变量:
  1. # 选择一个:tavily, duckduckgo, brave_search, arxiv
  2. SEARCH_API=tavily
复制代码
特性

核心本领



  • 🤖 LLM 集成

    • 通过litellm支持集成大多数模子
    • 支持开源模子如 Qwen
    • 兼容 OpenAI 的 API 接口
    • 多层 LLM 系统适用于不同复杂度的任务

工具和 MCP 集成



  • 🔍 搜索和检索

    • 通过 Tavily、Brave Search 等举行网络搜索
    • 使用 Jina 举行爬取
    • 高级内容提取

  • 🔗 MCP 无缝集成

    • 扩展私有域访问、知识图谱、网页浏览等本领
    • 促进多样化研究工具和方法的集成

人机协作



  • 🧠 人在环中

    • 支持使用自然语言交互式修改研究计划
    • 支持自动接受研究计划

  • 📝 报告后期编辑

    • 支持类 Notion 的块编辑
    • 答应 AI 优化,包括 AI 辅助润色、句子缩短和扩展
    • 由tiptap提供支持

内容创作



  • 🎙️ 播客和演示文稿生成

    • AI 驱动的播客脚本生成和音频合成
    • 自动创建简单的 PowerPoint 演示文稿
    • 可定制模板以满意个性化内容需求

架构

DeerFlow 实现了一个模块化的多智能体系统架构,专为自动化研究和代码分析而设计。该系统基于 LangGraph 构建,实现了机动的基于状态的工作流,其中组件通过界说良好的消息传递系统举行通信。

系统采取了精简的工作流程,包罗以下组件:

  • 和谐器:管理工作流生命周期的入口点

    • 根据用户输入启动研究过程
    • 在得其时候将任务委派给规划器
    • 作为用户和系统之间的主要接口

  • 规划器:负责任务分解和规划的战略组件

    • 分析研究目标并创建结构化执行计划
    • 确定是否有足够的上下文或是否需要更多研究
    • 管理研究流程并决定何时生成最终报告

  • 研究团队:执行计划的专业智能体集合:

    • 研究员:使用网络搜索引擎、爬虫甚至 MCP 服务等工具举行网络搜索和信息收集。
    • 编码员:使用 Python REPL 工具处理代码分析、执行和技术任务。
      每个智能体都可以访问针对其角色优化的特定工具,并在 LangGraph 框架内运行

  • 报告员:研究输出的最终阶段处理器

    • 汇总研究团队的发现
    • 处理和构造收集的信息
    • 生成全面的研究报告

开辟

测试

运行测试套件:
  1. # 运行所有测试
  2. make test
  3. # 运行特定测试文件
  4. pytest tests/integration/test_workflow.py
  5. # 运行覆盖率测试
  6. make coverage
复制代码
代码质量

  1. # 运行代码检查
  2. make lint
  3. # 格式化代码
  4. make format
复制代码
使用 LangGraph Studio 举行调试

DeerFlow 使用 LangGraph 作为其工作流架构。您可以使用 LangGraph Studio 及时调试和可视化工作流。
本地运行 LangGraph Studio

DeerFlow 包罗一个langgraph.json配置文件,该文件界说了 LangGraph Studio 的图结构和依赖关系。该文件指向项目中界说的工作流图,并自动从.env文件加载情况变量。
Mac

  1. # 如果您没有uv包管理器,请安装它
  2. curl -LsSf https://astral.sh/uv/install.sh | sh
  3. # 安装依赖并启动LangGraph服务器
  4. uvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.12 langgraph dev
  5. --allow-blocking
复制代码
Windows / Linux

  1. # 安装依赖
  2. pip install -e .
  3. pip install -U "langgraph-cli[inmem]"
  4. # 启动LangGraph服务器
  5. langgraph dev
复制代码
启动 LangGraph 服务器后,您将在终端中看到几个 URL:


  • API: http://127.0.0.1:2024
  • Studio UI: https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024
  • API 文档: http://127.0.0.1:2024/docs
在浏览器中打开 Studio UI 链接以访问调试界面。
使用 LangGraph Studio

在 Studio UI 中,您可以:

  • 可视化工作流图并查察组件如何毗连
  • 及时跟踪执行情况,了解数据如何在系统中流动
  • 检查工作流每个步调的状态
  • 通过检查每个组件的输入和输出来调试题目
  • 在规划阶段提供反馈以美满研究计划
当您在 Studio UI 中提交研究主题时,您将能够看到整个工作流执行过程,包括:


  • 创建研究计划的规划阶段
  • 可以修改计划的反馈循环
  • 每个部分的研究和写作阶段
  • 最终报告生成
启用 LangSmith 追踪

DeerFlow 支持 LangSmith 追踪功能,资助您调试和监控监控工作流。要启用 LangSmith 追踪:

  • 确保您的 .env 文件中有以下配置(参见 .env.example):
    1. LANGSMITH_TRACING=true
    2. LANGSMITH_ENDPOINT="https://api.smith.langchain.com"
    3. LANGSMITH_API_KEY="xxx"
    4. LANGSMITH_PROJECT="xxx"
    复制代码
  • 通过运行以下下令本地启动 LangSmith 追踪:
    1. langgraph dev
    复制代码
这将在 LangGraph Studio 中启用追踪可视化,并将您的追踪发送到 LangSmith 举行监控监控和分析。
Docker

您也可以使用 Docker 运行此项目。
起首,您需要阅读下面的配置部分。确保.env和.conf.yaml文件已预备停当。
其次,构建您自己的 Web 服务器 Docker 镜像:
  1. docker build -t deer-flow-api .
复制代码
最后,启动运行 Web 服务器的 Docker 容器
  1. # 将deer-flow-api-app替换为您首选的容器名称
  2. docker run -d -t -p 8000:8000 --env-file .env --name deer-flow-api-app deer-flow-api
  3. # 停止服务器
  4. docker stop deer-flow-api-app
复制代码
Docker Compose

您也可以使用 docker compose 设置此项目:
  1. # 构建docker镜像
  2. docker compose build
  3. # 启动服务器
  4. docker compose up
复制代码
文本转语音集成

DeerFlow 现在包罗一个文本转语音(TTS)功能,答应您将研究报告转换为语音。此功能使用火山引擎 TTS API 生成高质量的文本音频。速度、音量和音调等特性也可以自界说。
使用 TTS API

您可以通过/api/tts端点访问 TTS 功能:
  1. # 使用curl的API调用示例
  2. curl --location 'http://localhost:8000/api/tts' \
  3. --header 'Content-Type: application/json' \
  4. --data '{
  5.     "text": "这是文本转语音功能的测试。",
  6.     "speed_ratio": 1.0,
  7.     "volume_ratio": 1.0,
  8.     "pitch_ratio": 1.0
  9. }' \
  10. --output speech.mp3
复制代码
示例

以下示例展示了 DeerFlow 的功能:
研究报告


  • OpenAI Sora 报告 - OpenAI 的 Sora AI 工具分析

    • 讨论功能、访问方式、提示工程、限定和伦理思量
    • 查察完整报告

  • Google 的 Agent to Agent 协议报告 - Google 的 Agent to Agent (A2A)协议概述

    • 讨论其在 AI 智能体通信中的作用及其与 Anthropic 的 Model Context Protocol (MCP)的关系
    • 查察完整报告

  • 什么是 MCP? - 对"MCP"一词在多个上下文中的全面分析

    • 探究 AI 中的 Model Context Protocol、化学中的 Monocalcium Phosphate 和电子学中的 Micro-channel Plate
    • 查察完整报告

  • 比特币价格波动 - 迩来比特币价格走势分析

    • 研究市场趋势、监管影响和技术指标
    • 基于历史数据提供建议
    • 查察完整报告

  • 什么是 LLM? - 对大型语言模子的深入探索

    • 讨论架构、练习、应用和伦理思量
    • 查察完整报告

  • 医疗保健中的 AI 采取:影响因素 - 影响医疗保健中 AI 采取的因素分析

    • 讨论 AI 技术、数据质量、伦理思量、经济评估、构造预备度和数字底子办法
    • 查察完整报告

  • 量子计算对暗码学的影响 - 量子计算对暗码学影响的分析

    • 讨论经典暗码学的漏洞、后量子暗码学和抗量子暗码办理方案
    • 查察完整报告

要运行这些示例或创建您自己的研究报告,您可以使用以下下令:
  1. # 使用特定查询运行
  2. uv run main.py "哪些因素正在影响医疗保健中的AI采用?"
  3. # 使用自定义规划参数运行
  4. uv run main.py --max_plan_iterations 3 "量子计算如何影响密码学?"
  5. # 在交互模式下运行,带有内置问题
  6. uv run main.py --interactive
  7. # 或者使用基本交互提示运行
  8. uv run main.py
  9. # 查看所有可用选项
  10. uv run main.py --help
复制代码
交互模式

应用程序现在支持带有英文和中文内置题目的交互模式:

  • 启动交互模式:
    1. uv run main.py --interactive
    复制代码
  • 选择您偏好的语言(English 或中文)
  • 从内置题目列表中选择或选择提出您自己题目的选项
  • 系统将处理您的题目并生成全面的研究报告
人在环中

DeerFlow 包罗一个人在环中机制,答应您在执行研究计划前查察、编辑和答应:

  • 计划查察:启用人在环中时,系统将在执行前向您展示生成的研究计划
  • 提供反馈:您可以:

    • 通过回复[ACCEPTED]接受计划
    • 通过提供反馈编辑计划(例如,[EDIT PLAN] 添加更多关于技术实现的步调)
    • 系统将整合您的反馈并生成修订后的计划

  • 自动接受:您可以启用自动接受以跳过查察过程:

    • 通过 API:在哀求中设置auto_accepted_plan: true

  • API 集成:使用 API 时,您可以通过feedback参数提供反馈:
    1. {
    2.   "messages": [{ "role": "user", "content": "什么是量子计算?" }],
    3.   "thread_id": "my_thread_id",
    4.   "auto_accepted_plan": false,
    5.   "feedback": "[EDIT PLAN] 包含更多关于量子算法的内容"
    6. }
    复制代码
下令行参数

应用程序支持多个下令行参数来自界说其举动:


  • query:要处理的研究查询(可以是多个词)
  • –interactive:以交互模式运行,带有内置题目
  • –max_plan_iterations:最大规划周期数(默认:1)
  • –max_step_num:研究计划中的最大步调数(默认:3)
  • –debug:启用详细调试日记
感谢您的阅读,以上就是本期的全部内容啦,感兴趣的小伙伴可以自行前往DeerFlow 的官方网站了解更多详情。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

×
登录参与点评抽奖,加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表