Assistant Agent 项目采用渐进式发展策略,分三个阶段逐步完善,从开发者框架演进为开箱即用的企业级智能助手平台。
┌─────────────────────────────────────────────────────────────────────────────┐
│ 发展路径总览 │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 第一阶段 第二阶段 第三阶段 │
│ (当前) │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 半集成 │ → │ 能力下沉 │ → │ 可视化 │ │
│ │ 框架 │ │ 场景丰富 │ │ 配置 │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ 开发者友好 生产就绪 零代码接入 │
│ 快速二开 开箱即用 快速部署 │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
目标:提供一个架构完整、扩展性强的半集成框架,供开发者快速进行二次开发,搭建专属的 Assistant Agent。
| 模块 | 状态 | 说明 |
|---|---|---|
| 核心引擎 | ✅ 已完成 | Code-as-Action 执行引擎、GraalVM 沙箱 |
| 评估模块 | ✅ 已完成 | 多维度意图识别、评估图 |
| Prompt Builder | ✅ 已完成 | 动态 Prompt 组装 |
| 学习模块 | ✅ 已完成 | 经验提取与积累 |
| 经验模块 | ✅ 已完成 | 经验复用与快速意图 |
| 触发器 | ✅ 已完成 | 定时、延迟、回调触发 |
| 工具扩展 | ✅ 已完成 | MCP、HTTP API 支持 |
| 搜索模块 | ✅ 已完成 | 统一搜索 SPI |
| 回复渠道 | ✅ 已完成 | 多渠道 SPI |
- SPI 扩展机制:所有核心能力均提供 SPI 接口,开发者可自由扩展
- Mock 实现:提供演示用的 Mock 实现,便于快速体验和测试
- 配置驱动:通过 YAML 配置灵活控制各模块行为
- 文档完善:详细的模块文档和示例代码
┌─────────────────────────────────────────────────────────────────┐
│ 开发者二次开发清单 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 必须实现: │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ • SearchProvider - 接入企业知识库/向量数据库 │ │
│ │ • 经验存储 - 实现持久化存储(当前为内存) │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
│ 可选实现: │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ • ReplyChannelDefinition - 接入钉钉/飞书/企微等 │ │
│ │ • 自定义 CodeactTool - 扩展业务工具 │ │
│ │ • 自定义评估项 - 增加业务相关的意图识别 │ │
│ │ • 自定义 PromptBuilder - 定制 Prompt 逻辑 │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
目标:将公共能力下沉到 Spring AI Alibaba,提供更多开箱即用的推荐场景实现。
将通用的、与业务无关的能力贡献到 Spring AI Alibaba 社区:
| 能力 | 下沉说明 |
|---|---|
| Prompt Builder | 动态 Prompt 组装框架,支持模板化、条件渲染、多模型适配 |
| Evaluation | 评估框架核心,评估图执行引擎,多维度意图识别 |
| CodeAct Agent | Code-as-Action 执行引擎、GraalVM 沙箱安全执行环境 |
| 经验模块 | 经验提取、存储、复用的通用框架 |
提供生产就绪的官方实现,降低开发者接入成本:
┌─────────────────────────────────────────────────────────────────────────────┐
│ 官方推荐场景 │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 【存储层】 │
│ ┌────────────────┐ ┌────────────────┐ ┌────────────────┐ │
│ │ MySQL 存储 │ │ PostgreSQL │ │ Redis 缓存 │ │
│ │ • 经验存储 │ │ • 向量检索 │ │ • 快速意图缓存 │ │
│ │ • 触发器持久化 │ │ • 知识存储 │ │ • 会话状态 │ │
│ │ • 学习记录 │ │ │ │ │ │
│ └────────────────┘ └────────────────┘ └────────────────┘ │
│ │
│ 【回复渠道】 │
│ ┌────────────────┐ ┌────────────────┐ ┌────────────────┐ │
│ │ 钉钉 │ │ 飞书 │ │ 企业微信 │ │
│ │ • 消息推送 │ │ • 消息推送 │ │ • 消息推送 │ │
│ │ • 卡片交互 │ │ • 卡片交互 │ │ • 卡片交互 │ │
│ │ • 机器人接入 │ │ • 机器人接入 │ │ • 机器人接入 │ │
│ └────────────────┘ └────────────────┘ └────────────────┘ │
│ │
│ 【搜索数据源】 │
│ ┌────────────────┐ ┌────────────────┐ ┌────────────────┐ │
│ │ Elasticsearch │ │ 阿里云向量检索 │ │ 语雀/Notion │ │
│ │ • 全文检索 │ │ • 语义检索 │ │ • 文档同步 │ │
│ │ • 日志搜索 │ │ • 相似度匹配 │ │ • 知识库对接 │ │
│ └────────────────┘ └────────────────┘ └────────────────┘ │
│ │
│ 【触发器调度】 │
│ ┌────────────────┐ ┌────────────────┐ │
│ │ Quartz │ │ XXL-Job │ │
│ │ • 分布式调度 │ │ • 分布式调度 │ │
│ │ • 持久化任务 │ │ • 可视化管理 │ │
│ └────────────────┘ └────────────────┘ │
│ │
│ 【用户系统】 │
│ ┌────────────────┐ ┌────────────────┐ ┌────────────────┐ │
│ │ 用户 SPI │ │ 权限 SPI │ │ 默认实现 │ │
│ │ • 自定义用户源 │ │ • 自定义权限体系 │ │ • 内置用户管理 │ │
│ │ • 对接企业系统 │ │ • 工具级权限 │ │ • RBAC 权限 │ │
│ │ • 多租户支持 │ │ • 数据级权限 │ │ • OAuth2 集成 │ │
│ └────────────────┘ └────────────────┘ └────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Before(第一阶段):
// 开发者需要自己实现 SearchProvider
@Component
public class MyKnowledgeSearchProvider implements SearchProvider {
// 自己对接向量数据库...
}After(第二阶段):
# 只需配置即可使用官方实现
spring:
ai:
alibaba:
codeact:
extension:
search:
elasticsearch:
enabled: true
hosts: localhost:9200
index: knowledge
reply:
dingtalk:
enabled: true
app-key: xxx
app-secret: xxx
storage:
mysql:
enabled: true
# 复用 Spring DataSource 配置目标:接入 Admin 管理后台,提供页面化的快速配置能力,实现零代码接入。
┌─────────────────────────────────────────────────────────────────────────────┐
│ Admin 管理后台 │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ 导航栏 │ │
│ │ [概览] [知识库] [工具] [经验] [触发器] [渠道] [评估] [监控] [设置] │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ 📚 知识库管理 │ │
│ │ ┌─────────────────────────────────────────────────────────────────┐ │ │
│ │ │ [+ 新建知识库] [导入文档] [同步语雀] │ │ │
│ │ │ │ │ │
│ │ │ 名称 类型 文档数 最后更新 │ │ │
│ │ │ ──────────────────────────────────────────── │ │ │
│ │ │ 产品FAQ 向量库 1,234 2小时前 [编辑] [删除] │ │ │
│ │ │ 技术文档 ES索引 567 1天前 [编辑] [删除] │ │ │
│ │ └─────────────────────────────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ 🛠️ 工具配置 │ │
│ │ ┌─────────────────────────────────────────────────────────────────┐ │ │
│ │ │ [+ 添加MCP] [+ 添加API] [+ 添加自定义] │ │ │
│ │ │ │ │ │
│ │ │ 工具名 类型 状态 调用次数 │ │ │
│ │ │ ──────────────────────────────────────── │ │ │
│ │ │ 订单查询 HTTP ✅ 12,345 [配置] [禁用] │ │ │
│ │ │ GitHub MCP ✅ 2,345 [配置] [禁用] │ │ │
│ │ └─────────────────────────────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ 📊 运行监控 │ │
│ │ ┌─────────────────────────────────────────────────────────────────┐ │ │
│ │ │ 今日会话: 1,234 成功率: 98.5% 平均响应: 2.3s │ │ │
│ │ │ │ │ │
│ │ │ [会话趋势图] [工具调用分布] [经验命中率] │ │ │
│ │ └─────────────────────────────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
| 模块 | 功能描述 |
|---|---|
| 知识库管理 | 可视化创建/管理知识库,支持文档上传、在线编辑、批量导入、第三方同步 |
| 工具配置 | 图形化配置 MCP Server、HTTP API,在线测试工具调用 |
| 经验管理 | 查看/编辑/删除经验,配置快速意图规则,经验效果分析 |
| 触发器管理 | 可视化创建定时任务,管理回调触发器,执行历史查看 |
| 渠道配置 | 一键开通钉钉/飞书/企微等渠道,消息模板配置 |
| 评估配置 | 自定义评估项,评估图可视化编辑 |
| 监控面板 | 实时监控、调用统计、异常告警、日志查询 |
| 系统设置 | 模型配置、安全设置、API Key 管理 |
┌─────────────────────────────────────────────────────────────────────────────┐
│ 零代码接入流程 │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 运营人员(非开发) │
│ │ │
│ ▼ │
│ ┌──────────────┐ │
│ │ 1. 登录 Admin │ │
│ └──────┬───────┘ │
│ ▼ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 2. 上传文档 │ ──▶ │ 3. 配置渠道 │ ──▶ │ 4. 发布上线 │ │
│ │ 创建知识库 │ │ 钉钉/飞书 │ │ 即刻可用 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
│ 全程无需编写代码,10分钟内完成智能客服上线 │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
| 阶段 | 预计时间 | 核心交付物 |
|---|---|---|
| 第一阶段 | 当前 | 完整的半集成框架、详细文档、示例代码 |
| 第二阶段 | 待定 | Spring AI Alibaba 能力下沉、官方场景实现 Starter |
| 第三阶段 | 待定 | Admin 管理后台、可视化配置能力 |
我们欢迎社区参与各阶段的建设:
- 第一阶段:反馈使用问题、贡献文档、分享最佳实践
- 第二阶段:贡献官方场景实现(如新的存储适配器、渠道实现)
- 第三阶段:参与 Admin 后台开发、UI/UX 设计