项目简介

Spring AI Alibaba DataAgent 是一个基于Spring AI Graph构建的企业级智能数据分析代理系统。它不仅是一个Text-to-SQL转换器,更是一个具备支持Python深度分析与报告生成的AI虚拟数据分析师。该系统全面兼容OpenAI接口规范的对话模型与Embedding模型,支持灵活挂载任意向量数据库。

主要功能

  • 智能数据查询:将自然语言查询转换为可执行的SQL语句
  • 多模型支持:兼容OpenAI、阿里、DeepSeek、硅基流动等主流大模型服务
  • 报告生成:支持HTML和Markdown格式的数据分析报告
  • 向量检索:支持多种向量数据库(内存、Elasticsearch、PGvector、Milvus等)
  • 业务知识管理:定义业务术语和规则,支持向量化存储和智能召回
  • MCP服务器:提供标准化的MCP接口,允许MCP客户端调用数据分析工具
  • 会话管理:支持多会话隔离和历史记录

安装步骤

1. 环境准备

  • 安装MySQL数据库并导入测试数据
  • 准备兼容OpenAI接口的聊天模型和嵌入模型API密钥

2. 后端启动

# 进入管理端目录
cd data-agent-management

# 配置application.yml中的数据库连接信息
# 配置模型API密钥和参数

### 3. 前端启动
```bash
# 进入前端目录
cd data-agent-frontend

# 安装依赖
npm install

# 启动前端服务
npm run dev

MCP服务器配置

MCP服务器通过SSE端点提供服务,配置信息如下:

{
  "mcpServers": {
    "spring-ai-data-agent": {
      "command": "java",
      "args": ["-jar", "data-agent-management.jar"],
  "env": {
    "MYSQL_USERNAME": "your_username",
    "MYSQL_PASSWORD": "your_password"
}

配置说明:

  • 服务器名称:spring-ai-data-agent
  • 启动命令:使用Java运行打包后的JAR文件
  • 参数:指定JAR文件路径
  • 环境变量:配置数据库用户名和密码

默认SSE端点路径为 '/sse',可通过 'spring.ai.mcp.server.sse-endpoint' 自定义

基本使用方法

  1. 启动系统:分别启动后端管理服务和前端Web界面
  2. 创建智能体:在Web界面中配置智能体名称和参数
  3. 配置数据源:连接业务数据库并选择需要分析的数据表
  4. 配置业务知识:定义业务术语、规则和语义模型
  5. MCP客户端连接:通过SSE协议连接到MCP服务器端点
  6. 调用工具:使用提供的MCP工具进行数据查询和分析

可用MCP工具

  • nl2SqlToolCallback:将自然语言查询转换为SQL语句
  • listAgentsToolCallback:查询智能体列表

调试支持

可使用MCP Inspector进行本地调试:

npx @modelcontextprotocol/inspector http://localhost:8065/mcp/connection

信息

分类

网页与API