DeerFlow:基于LangChain和LangGraph框架的一款智能研究助手
DeerFlow是什么?
DeerFlow是字节跳动开源的一款基于 LangChain 和 LangGraph 框架的智能研究助手。它支持动态任务迭代、MCP无缝集成、自动生成研究计划、人机协作,甚至是播客、ppt生成它把语言模型与网络搜索、爬虫和Python代码执行等工具结合在一起,以快速提供深入且全面的报告。它还实现了与字节跳动内部的 MCP(模型控制平台)无缝集成,提升了自动化和精确性。此外,DeerFlow 优化了人机协作体验,用户可以随时介入调整研究计划,确保结果符合预期。
DeerFlow核心架构
多智能体架构:基于 LangGraph 架构,采用模块化多智能体系统设计。系统由协调器、规划器、研究团队和报告生成器等角色组成。协调器管理研究流程的生命周期,规划器负责任务分解和研究计划的生成,研究团队包括研究者、代码分析者等,负责具体的信息收集和技术任务,报告生成器则将研究结果整理成报告。
基于 LangStack 的开源框架:构建于 LangChain 和 LangGraph 的开源框架之上,代码结构清晰、逻辑简洁,降低了学习门槛。
DeerFlow主要功能
动态任务迭代:能够根据研究需求自动生成并优化任务计划,确保研究过程高效且灵活。
多工具集成:支持网络搜索、Arxiv 学术资源检索、爬虫以及 Python 代码执行,对科研工作者在学术文献搜集与分析方面提供强大支持。
多模态内容生成:不仅能生成深度研究报告,还支持生成播客脚本、PPT 等多样化内容,满足不同场景需求。
MCP 无缝集成:通过与字节跳动内部的 MCP(模型控制平台)结合,实现更高的自动化与精确性。
LLM 集成:通过 litellm 支持集成大多数模型,支持开源模型如 Qwen,兼容 OpenAI 的 API 接口,多层 LLM 系统适用于不同复杂度的任务。
人机协作:支持使用自然语言交互式修改研究计划,也支持自动接受研究计划;支持类 Notion 的块编辑,允许 AI 优化,包括 AI 辅助润色、句子缩短和扩展。
DeerFlow应用场景
学术研究:对于科研工作者,DeerFlow 在学术文献搜集与分析方面提供了强大支持。其 Arxiv 搜索功能能够快速定位高质量学术资源,节省研究人员的时间。研究人员可以利用它高效地完成从研究计划制定到内容生成的全流程自动化,显著减少人力成本。
内容创作:内容创作者可以利用 DeerFlow 生成播客脚本和音频,自动创建 PowerPoint 演示文稿,提供可定制模板,极大地简化了内容创作和呈现过程。
企业内部知识管理与研究:通过与字节跳动内部的 MCP(模型控制平台)结合,DeerFlow 实现了更高的自动化与精确性,企业可以利用它进行内部知识的整理、分析和研究,提升知识管理效率。
DeerFlow 安装步骤
环境准备
确保系统满足以下最低要求:
Python:版本需为3.12+。
Node.js:版本需为22+。
安装步骤
克隆仓库:
git clone https://github.com/bytedance/deer-flow.git cd deer-flow
安装依赖:
uv sync
这一步会自动创建虚拟环境并安装所有必需的包。
配置环境变量:
cp .env.example .env
根据需要在.env文件中添加你的API密钥,如Tavily、Brave SEARCH、火山引擎TTS等。
配置模型和API密钥:
cp conf.yaml.example conf.yaml
根据需求在conf.yaml文件中配置LLM模型和API密钥,具体配置可参考docs/configuration_guide.md。
安装PPT生成工具:
brew install marp-cli
如果你使用的是其他操作系统,可参考Marp CLI的官方文档进行安装。
安装Web UI依赖(可选):
cd deer-flow/web pnpm install
如果你没有安装pnpm,可使用npm install或yarn install代替。
启动项目
运行项目:
uv run main.py
这将使用控制台UI运行项目。
启动Web UI(如果安装了Web UI依赖):
在macOS/Linux上:
./bootstrap.sh -d
在Windows上:
bootstrap.bat -d
然后在浏览器中访问http://localhost:3000查看Web UI。
开发与调试
如果需要进行开发或调试,可以使用LangGraph Studio:
本地运行LangGraph Studio:
在Mac上:
curl -LsSf https://astral.sh/uv/install.sh | sh uvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.12 langgraph dev --allow-blocking
在Windows/Linux上:
pip install -e . pip install -U "langgraph-cli[inmem]" langgraph dev
启动后,访问Studio UI链接(如https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024)进行调试。
相关链接
项目官网:https://deerflow.tech
GitHub仓库:https://github.com/bytedance/deer