ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

DeerFlow架构深度解析:LangGraph驱动的超级智能体引擎是如何运作的(Harness/App分层设计)

DeerFlow架构深度解析:LangGraph驱动的超级智能体引擎是如何运作的(Harness/App分层设计) DeerFlow架构深度解析LangGraph驱动的超级智能体引擎是如何运作的Harness/App分层设计【免费下载链接】deer-flowAn open-source long-horizon SuperAgent harness that researches, codes, and creates. With the help of sandboxes, memories, tools, skill, subagents and message gateway, it handles different levels of tasks that could take minutes to hours.项目地址: https://gitcode.com/GitHub_Trending/de/deer-flowDeerFlowDeepExploration andEfficientResearchFlow是一个开源的超级智能体引擎SuperAgent Harness它基于 LangGraph 构建能够自主完成调研、编码、内容创作等从几分钟到几小时不等的复杂任务。本文带你深入它的架构内核揭秘Harness/App 分层设计是如何让这套引擎既稳定又易扩展的——即使你是新手也能轻松看懂这张引擎图纸。DeerFlow 是什么从深度研究到超级智能体DeerFlow 2.0 是一次彻底的重写与 1.x 版无任何共享代码它不再只是一个深度研究框架而是一个开箱即用的智能体运行环境。官方文档docs/ARCHITECTURE.md给出了最精炼的定义单个 lead agent主智能体统一编排子智能体sub-agents、持久化记忆memory、沙箱化代码执行sandbox和可扩展的技能/工具skills/tools——全部按会话线程隔离。它的核心能力一句话总结给智能体一个可以真正干活的基础设施。官方称之为 harness挽具/框架即智能体所需的一切——文件系统、记忆、技能、沙箱执行、规划与派生子智能体——出厂即配齐。后端分层设计Harness 与 App 的双层架构这是 DeerFlow 架构最值得学习的部分。后端分为两层且依赖方向是严格单向的层路径导入前缀职责Harnessbackend/packages/harness/deerflow.*可发布的智能体框架编排、工具、沙箱、模型、MCP、技能、记忆、配置Appbackend/app/app.*不发布的应用代码FastAPI Gateway 网关 IM 渠道集成核心规则App 可以导入deerflow但deerflow永远不导入app。这条边界由 CI 测试 test_harness_boundary.py 强制执行——这意味着 Harness 可以被独立发布和复用而应用层Web 网关、飞书/Slack/Telegram 等 IM 接入可以随时替换。此外还有一个薄的第三包 deerflow-extension-api定义了插件实现所需的、与宿主无关的扩展契约。LangGraph 驱动主智能体引擎是如何组装的所有运行模式本地make dev、Docker、生产环境都通过 Gateway 中的嵌入运行时执行智能体入口函数是 make_lead_agent(){ graphs: { lead_agent: deerflow.agents:make_lead_agent } }见 backend/langgraph.json引擎的组装遵循一个清晰的三层结构中间件链Middleware Chain——在调用模型之前按顺序执行例如 ThreadData初始化工作区/上传/输出路径、Uploads注入上传文件列表、Sandbox获取沙箱、Summarization上下文压缩、Title自动生成会话标题、Clarification处理澄清提问等定义见 agents/middlewares/智能体核心——由模型Model Factory 从config.yaml创建、工具内置 配置 MCP 三源合并和系统提示词含技能内容组成线程状态ThreadState——扩展 LangGraph 的AgentState新增sandbox、artifacts、thread_data、title、todos、viewed_images字段见 thread_state.py值得注意的细节Nginx 会把/api/langgraph/*请求重写到 Gateway 原生的/api/*路由这样无需单独部署 LangGraph Server标准 LangGraph SDK 客户端就能直接对话 DeerFlow。工具、沙箱与 MCP智能体如何动手干活工具的来源有三类由get_available_tools()统一合并源码位于 tools/内置工具present_files、ask_clarification、view_image等配置工具config.yaml声明bash、read_file、write_file、str_replace、网页搜索/抓取MCP 工具通过 extensions_config.json 配置的外部 MCP 服务器如 GitHub、文件系统、数据库每个 MCP 服务器运行在独立进程中所有执行都发生在沙箱内sandbox/抽象为SandboxProvider接口LocalSandboxProvider——开发用直接执行AioSandboxProvider——生产用Docker 容器隔离沙箱通过虚拟路径映射让智能体看到自己的工作区例如/mnt/user-data/workspace实际指向backend/.deer-flow/threads/{thread_id}/user-data/workspace——每个会话线程的数据天然隔离。下面是智能体在沙箱中完成数据研究后的可视化产物可以看到调研→编码→产出这条完整链路技能与子智能体让引擎不断进化技能系统Skills是 DeerFlow 的扩展性核心。每个技能就是一个带SKILL.md的目录公开技能在 skills/public/用户自装技能在skills/custom/采用懒加载发现后按需注入智能体上下文而不是一次性塞满提示词。技能还内置了安全扫描与质量审核见 skills/review/。子智能体Sub-agents则由 SubagentExecutor 实现服务端后台委派主智能体遇到复杂任务时派生子智能体并行处理通过execution_id与工具调用关联进度以命名空间的 SSE 事件回传给前端主线程视图不受干扰。定时任务也复用同一套 Gateway 运行生命周期——调度器只决定何时不改变如何执行。一次请求的完整旅程把以上模块串起来一条消息的流转路径是浏览器→ Nginx端口 2026唯一公网入口Nginx 将/api/langgraph/threads/{id}/runs重写到Gateway API8001FastAPIGateway 嵌入的LangGraph 运行时加载线程状态执行中间件链模型开始推理模型按需调用工具工具在沙箱内执行结果回填消息流响应通过SSE 流式返回浏览器含逐块消息与有界状态快照整个流程的详细请求时序可阅读 backend/docs/ARCHITECTURE.md 中的 Request Flow 章节。新手上手路线从文档到源码如果你想继续深挖建议按这个顺序阅读目标推荐阅读全局架构鸟瞰docs/ARCHITECTURE.md后端组件细节backend/docs/ARCHITECTURE.md后端开发规范与分层边界backend/AGENTS.md配置参考模型/工具/沙箱/调度器config.example.yaml安装与部署指南Install.md中间件机制原理backend/packages/harness/deerflow/agents/middlewares/AGENTS.md核心收获DeerFlow 的架构精髓在于单向依赖的分层Harness 可复用、App 可替换、中间件链对模型调用的精细化治理以及沙箱 线程隔离带来的安全边界。理解这三点你就掌握了 LangGraph 驱动型智能体引擎的设计范式。【免费下载链接】deer-flowAn open-source long-horizon SuperAgent harness that researches, codes, and creates. With the help of sandboxes, memories, tools, skill, subagents and message gateway, it handles different levels of tasks that could take minutes to hours.项目地址: https://gitcode.com/GitHub_Trending/de/deer-flow创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表