摘要:字节跳动于2025 年 5 月 9 日正式开源其深度研究框架DeerFlow(全称Deep Exploration and Efficient Research Flow),旨在通过多智能体协作与模块化设计,将语言模型与专业工具(网络搜索、代码执行、数据爬取等
字节跳动于 2025 年 5 月 9 日正式开源其深度研究框架 DeerFlow(全称 Deep Exploration and Efficient Research Flow),旨在通过多智能体协作与模块化设计,将语言模型与专业工具(网络搜索、代码执行、数据爬取等)结合,实现自动化研究、报告生成及多媒体内容创作。该项目已发布至 GitHub 官方仓库,并配套提供详细部署指南和案例演示。
DeerFlow (Deep Exploration and Efficient Research Flow) 是一个社区驱动的深度研究框架,它建立在开源社区令人难以置信的工作之上。目标是将语言模型与用于 Web 搜索、爬网和 python 代码执行等任务的专用工具相结合,同时回馈使之成为可能的社区。
DeerFlow 是用 Python 开发的,并带有一个用 Node.js 编写的 Web UI。为确保设置过程顺利进行,建议使用以下工具:
确保您的系统满足以下最低要求:
蟒蛇:版本3.12+Node.js:版本22+# clone the repositorygit clone https://github.com/bytedance/deer-flow.gitcd deer-flow# Install dependencies, uv will take care of the python interpreter and venv creation, and install the required packagesuv sync# Configure .env with your API keys# Tavily: https://app.tavily.com/home# Brave_SEARCH: https://brave.com/search/api/# volcengine TTS: Add your TTS credentials if you have themcp .env.example .env# See the 'Supported Search Engines' and 'Text-to-Speech Integration' sections below for all available options# Configure conf.yaml for your LLM model and API keys# Please refer to 'docs/configuration_guide.md' for more detailscp conf.yaml.example conf.yaml# Install marp for ppt generation# https://github.com/marp-team/marp-cli?tab=readme-ov-file#use-package-managerbrew install marp-cli(可选)通过 pnpm 安装 Web UI 依赖项:
cd deer-flow/webpnpm install配置有关更多详细信息,请参阅配置指南。
注意
在开始项目之前,请仔细阅读指南,并更新配置以符合您的特定设置和要求。
控制台 UI运行项目的最快方法是使用控制台 UI。
# Run the project in a bash-like shelluv run main.pyWeb 用户界面该项目还包括一个 Web UI,提供更动态和引人入胜的交互式体验。
注意
您需要先安装 Web UI 的依赖项。
# Run both the backend and frontend servers in development mode# On macOS/Linux./bootstrap.sh -d# On Windowsbootstrap.bat -d打开浏览器并访问 http://localhost:3000 以浏览 Web UI。
在 Web 目录中探索更多详细信息。
DeerFlow 支持多个搜索引擎,可以使用变量在您的文件中配置这些搜索引擎:.envSEARCH_API
Tavily (默认):AI 应用程序的专用搜索 API文件中的 requiresTAVILY_API_KEY.env注册地址: https://app.tavily.com/homeDuckDuckGo:注重隐私的搜索引擎无需 API 密钥Brave Search:具有高级功能的注重隐私的搜索引擎文件中的 requiresBRAVE_SEARCH_API_KEY.env注册地址: https://brave.com/search/api/Arxiv:用于学术研究的科学论文搜索无需 API 密钥专门用于科学和学术论文要配置您的首选搜索引擎,请在文件中设置变量:SEARCH_API.env
# Choose one: tavily, duckduckgo, brave_search, arxivSEARCH_API=tavily特征核心能力LLM 集成它支持通过 litellm 集成大多数模型。支持 Qwen 等开源模型OpenAI 兼容 API 接口适用于不同任务复杂性的多层 LLM 系统️ 播客和演示文稿生成AI 驱动的播客脚本生成和音频合成自动创建简单的 PowerPoint 演示文稿用于定制内容的可定制模板DeerFlow 实现了一个模块化的多代理系统架构,专为自动化研究和代码分析而设计。该系统基于 LangGraph 构建,支持灵活的基于状态的工作流,其中组件通过定义明确的消息传递系统进行通信。
在 deerflow.tech 现场观看
该系统采用简化的工作流程,包括以下组件:
协调器:管理工作流生命周期的入口点根据用户输入启动研究流程在适当的时候将任务委派给规划者充当用户和系统之间的主要接口Planner:任务分解和规划的战略组件分析研究目标并创建结构化的执行计划确定是否有足够的上下文可用或是否需要更多研究管理研究流程并决定何时生成最终报告研究团队:执行计划的专业代理的集合:研究员:使用网络搜索引擎、爬虫甚至 MCP 服务等工具进行网络搜索和信息收集。Coder:使用 Python REPL 工具处理代码分析、执行和技术任务。 每个代理都可以访问针对其角色优化的特定工具,并在 LangGraph 框架内运行Reporter:研究成果的最终阶段处理器汇总研究团队的发现处理和构建收集的信息生成全面的研究报告DeerFlow 现在包括文本转语音 (TTS) 功能,允许您将研究报告转换为语音。此功能使用 volcengine TTS API 从文本生成高质量的音频。速度、音量和音高等功能也是可定制的。
您可以通过终端节点访问 TTS 功能:/api/tts
# Example API call using curlcurl --location 'http://localhost:8000/api/tts' \--header 'Content-Type: application/json' \--data '{"text": "This is a test of the text-to-speech functionality.","speed_ratio": 1.0,"volume_ratio": 1.0,"pitch_ratio": 1.0}' \--output speech.mp3发展测试运行测试套件:
# Run all testsmake test# Run specific test filepytest tests/integration/test_workflow.py# Run with coveragemake coverage代码质量# Run lintingmake lint# Format codemake formatDeerFlow 使用 LangGraph 作为其工作流架构。您可以使用 LangGraph Studio 实时调试和可视化工作流。
DeerFlow 包括一个配置文件,用于定义 LangGraph Studio 的图形结构和依赖项。此文件指向项目中定义的工作流图,并自动从该文件加载环境变量。langgraph.json.env
# Install uv package manager if you don't have itcurl -LsSf https://astral.sh/uv/install.sh | sh# Install dependencies and start the LangGraph serveruvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.12 langgraph dev --allow-blocking# Install dependenciespip install -e .pip install -U "langgraph-cli[inmem]"# Start the LangGraph serverlanggraph dev启动 LangGraph 服务器后,您将在终端中看到几个 URL:
API:http://127.0.0.1:2024工作室界面:https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024API 文档:http://127.0.0.1:2024/docs在浏览器中打开 Studio UI 链接以访问调试界面。
在 Studio UI 中,您可以:
可视化工作流程图并查看组件如何连接实时跟踪执行情况,了解数据如何流经系统检查工作流每个步骤的状态通过检查每个组件的输入和输出来调试问题在规划阶段提供反馈以完善研究计划当您在 Studio UI 中提交研究主题时,您将能够看到整个工作流程的执行情况,包括:
创建研究计划的规划阶段可在其中修改计划的反馈循环每个部分的研究和写作阶段最终报告生成要运行这些示例或创建自己的研究报告,您可以使用以下命令:
# Run with a specific queryuv run main.py "What factors are influencing AI adoption in healthcare?"# Run with custom planning parametersuv run main.py --max_plan_iterations 3 "How does quantum computing impact cryptography?"# Run in interactive mode with built-in questionsuv run main.py --interactive# Or run with basic interactive promptuv run main.py# View all available optionsuv run main.py --help交互模式启动交互模式:uv run main.py --interactive选择您的首选语言(英文或中文)从内置问题列表中进行选择,或选择选项以提出您自己的问题系统将处理您的问题并生成一份全面的研究报告来源:Ai滚球兽