1、立项背景和目标
真实研究任务常需判断信息源、联网检索、查数据库、查知识库、读附件并汇总生成报告,单次模型调用或搜索问答无法满足。本项目用 DeepAgents 组织主智能体与专家子智能体,打通多智能体规划、工具接入、上下文隔离、接口交付与前端联调的完整链路,并配套免费教程便于学习。
2、软件功能、核心功能模块的介绍
主智能体负责任务规划、调度、汇总与交付(读附件、生成 Markdown、转 PDF);网络搜索助手用 Tavily 检索公开资料;数据库查询助手通过 SQL 查结构化数据;RAGFlow 助手查私有知识库;FastAPI 提供任务、上传、文件、下载、WebSocket 接口;monitor 实时推送事件;React 前端提供对话式界面。
3、业务流程、功能路径描述
用户输入任务 → 后端创建会话目录并启动后台 Agent;主智能体规划后分派专家助手检索多来源信息、读取上传附件;汇总后调用文件工具生成 Markdown/PDF 到工作目录;全程通过 WebSocket 推送执行事件,用户可实时查看并下载产物。
1、整体架构和设计思路,不同模块使用的技术栈
采用 DeepAgents 的 Orchestrator-Workers 模式,create_deep_agent 组装一主三从智能体,文件类工具归主智能体;LangGraph InMemorySaver 按 thread_id 保存会话;LangChain 走 OpenAI 兼容协议接入模型;FastAPI + asyncio 后台执行,ContextVar 隔离会话,monitor 投递事件到 WebSocket 循环;前端 React + Vite + Ant Design;技术栈含 DeepAgents/LangChain/LangGraph/Tavily/MySQL/RAGFlow/ReportLab,uv 管理依赖。
2、我的负责模块和结果
独立完成主智能体与三个子智能体组装、9 个工具(检索/查库/查知识库/读文件/Markdown/PDF)、FastAPI 接口层、monitor 事件推送与 ContextVar 上下文隔离、React 前端,实现从任务下发到事件流展示、报告交付与文件下载的完整闭环。
3、我遇到的难点、坑,和解决方案
跨协程推送 WebSocket 报错:绑定主事件循环到 ConnectionManager,用 run_coroutine_threadsafe 投递解决;工具深层拿不到会话身份:用 ContextVar 入口写入、finally 重置,避免串台;模型误用绝对路径:提示词仅给相对路径并约束工作目录;取消任务卡住:cancel 后限时等待返回 cancelling。