luler 一、简介 SQLBot 是一款基于大模型和 RAG 的智能问数系统,具有开箱即用、易于集成、安全可控的优势 可以实现数据的即问即答,快速提炼获取所需的数据信息及可视化图表,并且支持进一步开展智能分析 支持接入多种AI大语言模型、多种数据库源类型 开源地址参考:https://github.com/dataease/SQLBot 整体架构参考下图: 二、安装 主机上需要提前准备好Docker、docker-compose软件环境 新建docker-compose.yml配置文件,配置内容如下: version: '3.8' services: sqlbot: image: dataease/sqlbot:v1.1.1 container_name: sqlbot restart: unless-stopped ports: #默认页面服务端口 - "8000:8000" #MCP服务端口,sse类型,可通过http://server_ip:8001/mcp访问 - "8001:8001" volumes: #上传的Excel文件保存的目录 - ./data/sqlbot/excel:/opt/sqlbot/data/excel #图片保存目录 - ./data/sqlbot/images:/opt/sqlbot/images #日志保存目录 - ./data/sqlbot/logs:/opt/sqlbot/logs #默认使用内置postgresql数据库,这里需要持久化保存该数据库的数据 - ./data/postgresql:/var/lib/postgresql/data 可以根据需要配置和修改下面环境变量(可选) environment: # 数据库配置 POSTGRES_SERVER: localhost POSTGRES_PORT: 5432 POSTGRES_DB: sqlbot POSTGRES_USER: root POSTGRES_PASSWORD: Password123@pg # 项目基础配置 PROJECT_NAME: "SQLBot" DEFAULT_PWD: "SQLBot@123456" # MCP 配置 SERVER_IMAGE_HOST: https://YOUR_SERVE_IP:MCP_PORT/images/ # 授权安全配置 SECRET_KEY: y5txe1mRmS_JpOrUzFzHEu-kIQn3lf7ll0AOv9DQh0s # 跨域设置 BACKEND_CORS_ORIGINS: "http://localhost,http://localhost:5173,https://localhost,https://localhost:5173" # 调试与日志等级配置 LOG_LEVEL: "INFO" SQL_DEBUG: False 配置完后,执行下面命令一键启动 docker-compose up -d 启动成功即可正常使用 三、使用 1. 安装启动成功之后,可以访问地址:http://ip:8000/,默认的账号是:admin,密码:SQLBot@123456 2. 添加一个自己可用的大语言模型,配置好相关模型的访问授权信息 3. 添加一个数据源,支持Excel文件、主流数据库等,我这里以mysql为例 4. 智能问数,与数据对话,智能图表构建,数据图表看板构建 测试对话示例一:使用折线图展示用户注册趋势 测试对话示例二:使用柱状图展示各分类应用数量 测试对话示例三:用户表中的男女比例,使用饼状图标识 可以使用提问生成的统计图表构建数据图表看板,实时了解关注的数据情况 四、总结 这是一个功能比较完善且好用的开源 AI 数据库相关应用 适合各种BI场景,对非敏感数据进行快速分析和数据挖掘,智能构建数据相关的统计图表 可以通过MCP协议快速集成到第三方应用系统,如MaxKB、Dify、n8n等 该项目的开源协议有一定的限制,在二开或者生产环境应用需要注意下