1. DeepResearch项目概述
Spring AI Alibaba DeepResearch是一个基于Spring AI框架构建的智能体研究项目,由SAA社区发起并维护。这个项目通过多节点Graph架构实现了一个完整的智能体系统,能够执行复杂的信息搜索、分析和结构化报告生成任务。
作为一个典型的AI Agent实现,DeepResearch项目融合了当前最前沿的多项AI技术,包括:
- 多Agent协作架构
- 任务规划与执行(Plan and Execute)
- LLM反思机制(Reflection)
- 混合检索增强生成(Hybrid RAG)
- 人类反馈循环(HITL)
- 自进化记忆系统(Self-evolution Memory)
项目采用Java语言开发,基于Spring Boot框架,充分利用了Spring生态系统的优势,特别是Spring AI提供的AI能力集成。这使得DeepResearch既保持了Java企业级应用的稳定性,又能方便地集成各类AI能力。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心架构解析
2.1 整体架构设计
DeepResearch采用Graph架构设计,整个系统由14个核心节点组成,通过有向边连接形成工作流。这种设计有以下几个显著优势:
- 模块化:每个节点职责单一,便于独立开发和测试
- 灵活性:节点间关系可动态调整,支持多种任务流程
- 可观测性:每个节点的输入输出清晰可见,便于调试
- 并行处理:支持多个节点并行执行,提高效率
架构中的关键组件包括:
- 节点(Node):执行特定任务的独立单元
- 边(Edge):定义节点间的流转关系
- 状态(State):在节点间传递的上下文信息
- 执行引擎:驱动Graph运行的底层机制
2.2 节点类型与功能
DeepResearch的14个核心节点可以分为以下几类:
2.2.1 控制流节点
- CoordinatorNode:任务协调器,识别用户意图并路由到合适流程
- PlannerNode:任务规划器,将复杂任务分解为可执行的步骤
- ParallelExecutorNode:并行执行控制器,管理任务步骤的并行执行
- ResearchTeamNode:研究团队调度器,协调研究者和编码者的工作
2.2.2 记忆与反馈节点
- ShortUserRoleMemoryNode:短期用户角色记忆,实现个性化交互
- HumanFeedbackNode:人类反馈接口,支持人工干预流程
2.2.3 信息处理节点
- RewriteAndMultiQueryNode:查询优化器,重写并扩展用户查询
- BackgroundInvestigationNode:背景调查器,执行初步信息检索
- InformationNode:信息充足性评估器,判断是否需要进一步研究
2.2.4 专业能力节点
- ResearcherNode:研究者,执行专业领域的信息检索和分析
- CoderNode:编码者,处理数据分析和编程任务
- ProfessionalKbDecisionNode:专业知识库决策器,判断是否需要查询专业库
- RagNode:检索增强生成器,整合多源信息生成内容
- ReporterNode:报告生成器,整合所有信息生成最终报告
2.3 关键技术实现
2.3.1 多模型协作
DeepResearch支持同时使用多个大语言模型,每个节点可以配置不同的模型。这种设计允许:
- 根据任务特点选择最适合的模型
- 实现模型间的优势互补
- 提高系统的容错能力
模型配置通过model-config.json文件管理,支持动态加载和切换。
2.3.2 工具调用机制
项目实现了完善的工具调用(Tool Calling)机制,关键特性包括:
- 工具的动态绑定:可根据上下文动态加载所需工具
- 工具执行隔离:通过Docker容器实现代码执行的沙箱环境
- 工具结果标准化:统一工具
