智能数据分析机器人

一个全自动化的AI服务,能够将自然语言问题转化为数据查询和图表,使用模型上下文协议(MCP)。

  • by Mihirkothari04
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 mihirkothari04/smart-data-analytics-bot-using-mcp-server

使用说明

智能数据分析机器人

一种全自动的人工智能服务,使用模型上下文协议(MCP)将自然语言问题转化为数据查询和图表。

概述

该项目实现了一个智能数据分析机器人,允许用户用自然语言询问有关数据的问题。系统:

  1. 处理自然语言查询
  2. 将它们转换为SQL查询
  3. 从数据库检索数据
  4. 生成适当的可视化
  5. 对结果进行叙述性解释

建筑

该系统采用模块化架构,使用MCP连接组件:

  • LLM客户端:解释用户查询并协调流程
  • 数据库MCP服务器:提供数据库连接(SQLite)
  • 可视化MCP服务器:生成图表和可视化(Vega Lite)
  • web界面:提供用户交互(Streamlit)

特性

  • 自然语言查询处理
  • 自动生成SQL查询
  • 基于查询上下文的动态图表创建
  • 数据洞察的叙述性解释
  • 基于Web的用户界面

技术栈

  • 数据库:带jparkerwb/mcp-SQLite的SQLite
  • 可视化:VegaLite MCP服务器
  • LLM集成:带MCP的LangChain
  • web界面:流光灯
  • 部署:Docker容器

项目结构

smart_data_analyst_bot/
├── docker/                  # Docker configuration files
├── database/                # Database setup and sample data
├── mcp_servers/             # MCP server implementations
│   ├── sqlite_server/       # SQLite MCP server
│   └── vegalite_server/     # VegaLite MCP server
├── llm_integration/         # LLM integration with MCP
├── web_interface/           # Streamlit web application
├── tests/                   # Test cases and examples
└── docs/                    # Documentation

入门指南

请参阅 安装指南 有关设置说明。