Skip to content

Latest commit

 

History

History
293 lines (250 loc) · 23.2 KB

File metadata and controls

293 lines (250 loc) · 23.2 KB

Assistant Agent 发展路径

📍 概述

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,提供更多开箱即用的推荐场景实现。

核心变化

1. 公共能力下沉到 Spring AI Alibaba

将通用的、与业务无关的能力贡献到 Spring AI Alibaba 社区:

能力 下沉说明
Prompt Builder 动态 Prompt 组装框架,支持模板化、条件渲染、多模型适配
Evaluation 评估框架核心,评估图执行引擎,多维度意图识别
CodeAct Agent Code-as-Action 执行引擎、GraalVM 沙箱安全执行环境
经验模块 经验提取、存储、复用的通用框架

2. 官方推荐场景实现

提供生产就绪的官方实现,降低开发者接入成本:

┌─────────────────────────────────────────────────────────────────────────────┐
│                         官方推荐场景                                          │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                             │
│  【存储层】                                                                   │
│  ┌────────────────┐  ┌────────────────┐  ┌────────────────┐                 │
│  │ 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 设计

详见 CONTRIBUTING.md