SQLBot

dataease活跃维护

用大模型加 RAG 把自然语言问题直接转成 SQL,做对话式数据分析,让不会写 SQL 的人也能查库出报表。

🔥 基于大模型和 RAG 的智能问数系统,对话式数据分析神器。Text-to-SQL Generation via LLMs using RAG.

v1.10.3发布于 2026-10-29 04:24 UTC7,134star +15 / 7 天943fork同步于 2026-11-10 05:33 UTC

怎么上手

由 README 提炼,执行前请确认
docker run -d --name sqlbot --restart unless-stopped -p 8000:8000 -p 8001:8001 -v ./data/sqlbot/excel:/opt/sqlbot/data/excel -v ./data/sqlbot/file:/opt/sqlbot/data/file -v ./data/sqlbot/images:/opt/sqlbot/images -v ./data/sqlbot/logs:/opt/sqlbot/app/logs -v ./data/postgresql:/var/lib/postgresql/data --privileged=true dataease/sqlbot
硬件要求按 README 说明

README 未说明显存或 GPU 要求,仅要求一台安装好 Docker 的 Linux 服务器

有 Docker 镜像
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

基于大模型和 RAG 的智能问数系统,用对话方式做数据分析并生成图表

用大模型加 RAG 把自然语言问题直接转成 SQL,做对话式数据分析,让不会写 SQL 的人也能查库出报表。

核心能力

  • 结合 RAG 技术实现高质量 Text-to-SQL 转换
  • 支持对话式数据分析并输出可视化图表
  • 提供工作空间级资源隔离与细粒度数据权限
  • 支持 Web 嵌入、弹窗嵌入和 MCP 调用集成
  • 可配置自定义提示词、术语库和 SQL 示例校准

容易踩的坑

启动后需自行配置大模型与数据源才能使用问数功能;默认账号为 admin、密码为 SQLBot@123456,首次登录后应及时修改;容器以 --privileged=true 运行并挂载多个本地目录,需保证宿主机路径可写

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v1.10.3
  1. v1.10.3最新正式版2026-10-29 · 2026-10-29 04:24 UTC

    漏洞修复 (Security Fixes)

    • fix(X-Pack): [认证管理]修复企业微信凭证校验过度依赖本地缓存 Token 的安全隐患,改为独立校验当前输入凭据有效性;
    • fix(X-Pack): [用户管理]修复用户自助修改密码时未校验初始密码的安全漏洞,禁止将新密码重置为系统默认初始密码。

    新增特性 (New Features)

    • feat(数据源): Hive 数据源支持适配 SparkThriftServer 元数据解析 #1391;
    • feat(模型管理): 模型供应商配置新增 MiniMax M3.1 Flash 模型支持;
    • feat(检索增强): 运行时支持动态配置向量检索策略,并优化参数布局与配置指引。

    功能优化 (Improvements)

    • refactor(对话交互): 优化问数执行详情弹窗交互,支持按 ESC (Escape) 键快捷关闭;
    • refactor(界面布局): 优化问数对话页面与主布局底部内边距,提升对话视口展示高度;
    • refactor(国际化): 完善数据源模块错误提示与操作界面的多语言国际化支持。

    问题修复 (Bug Fixes)

    • fix(数据源): 修复从 Excel 批量导入字段注释时纯数字字段名称被错误转换为数值类型导致匹配失败的问题,强制以文本格式保留字段名;
    • fix(数据源): 修复 Excel 数据源表结构元数据发现时扫描多余工作表的问题,限制仅发现已配置的数据源工作表;
    • fix(数据源): 修复 Doris 与 StarRocks 数据库驱动连接串拼接时存在重复连接参数导致连接失败的问题;
    • fix(数据源): 修复 SQL Server 执行查询时 varchar 字符编码乱码的问题,在 exec_sql 中自动将 Latin-1 转换为 GBK;
    • fix(数据源): 修复 Hive 数据源连接配置中的驱动与参数兼容性问题;
    • fix(模型管理): 修复大模型配置中切换模型时已删除的自定义参数被错误复原的问题;
    • fix(审计日志): 修复操作审计日志中由于时区转换导致操作时间戳记录失真或存储异常的问题;
    • fix(嵌入式): 修复第三方系统嵌入问数对话并导航至数据源时页面发生重定向死循环的问题;
    • fix(基础工具): 修复大模型输出嵌套 JSON 提取工具函数的截断边界问题,并忽略字符串内部的大括号以防解析失败 #1401;
    • fix(系统接口): 修复问数分析预测接口中会话校验与工作空间鉴权异常的问题;
    • fix: 修复数据训练、术语库及自定义提示词从 Excel 导入时若列数不足未返回 400 校验错误码的问题;
    • fix: 修复 Excel 数据导入校验失败时 HTTP 状态码丢失的问题,保证前端可精确回显错误类型;
    • fix: 修复问数界面与助手默认欢迎语未随系统显示语言实时同步切换的问题;
    • fix(X-Pack): [嵌入式]修复嵌入式集成中缓存的助手对象在类型校验前未规范化导致的反序列化与类型验证失败问题;
    • fix(X-Pack): [认证管理]修复 CAS 单点登录回调地址兼容性问题,规范服务接入端点并清晰化连接性测试提示;
    • fix(X-Pack): [用户管理]修复同一浏览器切换登录账号时左侧导航菜单语言未跟随新用户语言偏好更新的问题。
  2. v1.10.22026-09-23 · 2026-09-23 01:16 UTC
    查看更新说明

    版本概述

    SQLBot v1.10.2 是一个聚焦于系统安全加固、智能选表核心算法升级与数据源稳定性增强的维护版本。

    在安全层面,本版本针对社区反馈与专业安全审查,集中修复了涵盖跨工作空间越权访问(IDOR)、Host 头注入鉴权绕过、路径遍历等在内的 8 项关键漏洞,并新增默认密码隐藏及首次登录强制改密机制,全面提升企业级交付的安全水位;在算法层面,Text-to-SQL 表匹配机制引入了大模型关键词抽取与向量语义融合打分体系,大幅改善多表与歧义表场景下的选表准确率;此外,本版本还新增了泰语(th-TH)完整多语言支持,完成了 Supervisor 进程管理重构,并对 Oracle、PostgreSQL、SQL Server、Hive 等数据源进行了深度稳定性优化。


    漏洞修复 (Security Fixes)

    • fix: 修复 Excel 上传接口的路径遍历漏洞 (CWE-22);
    • fix: 修复用户可控键导致的授权绕过漏洞 (CWE-639);
    • fix: 修复 Host 头注入导致鉴权绕过及可伪造管理员嵌入 Token 的漏洞 (CNVD);
    • fix: 修复跨工作空间数据源 Schema 泄露与越权修改的漏洞 (IDOR,不安全的直接对象引用,Insecure Direct Object Reference);
    • fix: 修复跨工作空间推荐问题可被越权读取与覆盖的漏洞 (IDOR);
    • fix: 修复跨工作空间助手可被越权修改与删除的漏洞 (IDOR);
    • fix: 修复仪表板接口越权导致跨用户修改的漏洞 (IDOR);
    • fix: 修复 Kingbase 数据源 SQL 注入漏洞。

    新增特性 (New Features)

    • feat(数据源): 新增基于大模型关键词提取与融合打分的表匹配机制,结合上下文术语扩展,显著提升复杂数据模型下的选表命中率;
    • feat(国际化): 新增泰语 (th-TH) 完整多语言支持,覆盖前端界面组件、交互提示与大模型本地化提示词模板;
    • feat: 新增 SAMPLE_DATA_ENABLED 系统环境变量,支持生产环境按需一键关闭内置示例数据;
    • feat: 新增账号安全初始化配置,支持隐藏系统默认初始密码并在用户首次登录时强制要求修改密码 #1355。

    功能优化 (Improvements)

    • refactor(数据源): 优化容器启动与初始化脚本中的 PostgreSQL 连通就绪检查机制,改用 pg_isready 提升探测可靠性 #1300;
    • refactor: 优化 Excel 表头字段过多导致大模型提示词超出长度限制的问题 #1364;
    • refactor: 富文本编辑器核心组件升级为 TinyMCE 6.x,提升排版交互性能与现代浏览器兼容性;
    • perf: 行内错误提示全面接入国际化 (i18n) 机制,消除未翻译提示信息;
    • build: 容器内进程管理架构重构,使用 Supervisor 替换 pm2,提升多进程监控与守护的稳定性。

    问题修复 (Bug Fixes)

    • fix(嵌入式): 修复嵌入模式下浮动形态与全屏形态上下间距样式不一致的问题;
    • fix(数据格式): 修复科学计数法展开为浮点数时数值未完整保留导致的精度失真问题;
    • fix(数据源): 修复高级助手无法访问宿主数据源 API 的权限鉴权异常;
    • fix(数据源): 修复 Hive 表字段元数据发现中混入分区描述头与重复字段的问题 #1250;
    • fix(数据源): 修复数据源 Schema 表选择配置时未保留已显式引用表的问题;
    • fix(数据源): 修复 SQL Server 连接池创建中数据源对象游离 (Detached) 导致连接初始化失败的问题 #1330;
    • fix(数据源): 修复动态移除连接池时未主动释放 SQLAlchemy Engine 导致数据库连接泄漏的问题;
    • fix(系统变量): 修复键值类型系统变量仅包含单个选项时下拉列表出现多余空选项的问题;
    • fix(运维工具): 修复 sctl 脚本在容器健康检查时提取容器名称残留换行符 (\r) 导致匹配失效的问题;
    • fix(X-Pack): 修复助手 API 在复杂推理场景下请求超时中断的问题 #1288;
    • fix: 修复 Excel 与 CSV 数据集导入时整数字段值未正确取整导致格式异常的问题 #1365;
    • fix: 修复 Oracle 数据源执行耗时元数据检索与查询时连接超时的问题 #1360。
  3. v1.10.12026-08-27 · 2026-08-27 05:14 UTC
    查看更新说明

    新增功能

    • feat (MCP): 支持模型配置
    • feat (SQL示例): 支持过滤搜索功能
    • feat (术语列表): 支持过滤搜索功能
    • feat (系统变量): 支持key-value格式 #1310
    • feat: 添加助手验证接口
    • feat: Hive数据源支持LDAP认证 #1209

    功能优化

    • refactor: 优化连接池配置 #1256
    • refactor: 优化权限字段类型
    • refactor: 优化聊天列表排序功能
    • refactor: 在成员管理中添加用户时增加回车键搜索功能
    • refactor (系统变量): 变量选择时仅有一个选项时无需再次选择
    • refactor (X-Pack): 改进自定义提示词过滤搜索
    • refactor (X-Pack): 替换dicttoxml为标准库实现以避免GPL许可证风险

    问题修复

    • fix: 避免嵌入式作业重复启动
    • fix: 修复推荐问题中存在的CWE漏洞
    • fix: 修复extract_tables_from_sql错误包含CTE名称作为表名的问题
    • fix: get_chart_usage接口中加入对未定义值的检查
    • fix: 修复CORS错误导致助手嵌入失败的问题
    • fix: 修复Hive DESCRIBE返回列数与ColumnSchema构造函数不匹配的问题 #1210
    • fix: 修复connect pool预连接问题
    • fix: 修复i18n国际化问题
    • fix: 修复术语Excel上传中的路径遍历漏洞(CWE-22)
    • fix: 修复模板文件中繁体字转简体字的问题
    • fix: 修复工作区页面添加用户时页面冻结的问题
  4. v1.10.02026-07-16 · 2026-07-16 02:11 UTC
    查看更新说明

    漏洞

    • fix: 修复嵌入式安全漏洞
    • fix: 修复通过基础应用UI设置界面提升权限级别的漏洞
    • fix: 修复行权限过滤器中转义SQL值以防止注入(CWE-89)的问题
    • fix: 修复SQL注入/LLM提示注入漏洞导致的未授权查询
    • fix: 修复系统变量中的权限提升漏洞
    • fix: 修复跨工作空间查看枚举值的漏洞

    新增功能

    • feat: mcp_start调用日志记录到系统日志
    • feat: 新增隐藏思考块配置选项
    • feat: 新增嵌入式应用的语言选项配置
    • feat: 新增为指定高级应用配置自定义提示词的功能

    功能优化

    • refactor: 优化连接池配置
    • refactor: 移除index.html中的默认标题
    • refactor: 改进用户列表排序功能
    • refactor: 调整MCP中对话的组织归属逻辑
    • refactor: 新增alembic迁移脚本,补充内置数据库表字段备注
    • fix: 优化登录页面背景图片逻辑

    问题修复

    • fix: 修复RSA加密因文本过长导致的失败问题
    • fix: 修复高级应用中兼容旧版本MSSQL的问题
    • fix: 修正模板中数据库查询示例
    • fix: 修复聊天标题包含'/'字符时删除聊天出错的问题
    • fix: 修复SQL示例管理的导出/导入功能
    • fix: 扩展sys_logs表中user_agent列长度以支持钉钉代理
    • fix: 修复MCP OID缺失验证问题
    • fix: 修复记录列表中预测数据图表缺失的问题
    • fix: 兼容低版本Chromium内核浏览器,解决内核81版本页面白屏问题
    • fix: 修复基础应用中头部文字颜色不生效的问题
    • fix: 从问答对话添加图表到仪表板时,遵循当前图表类型
    • fix: 修复仪表板编辑界面无法执行cmd+c复制操作的问题
    • fix: 修复启用千位分隔符时弹窗不关闭导致页面滚动异常的问题
    • fix: 修复工作空间用户列表分页限制1000条,无法选择第1001个及以后用户的问题
  5. v1.9.02026-06-09 · 2026-06-09 03:13 UTC
    查看更新说明

    漏洞修复

    • fix: 修复Excel工作表名称注入SQL的问题
    • fix: 修复parseExcel接口漏洞
    • fix: 修复二阶SQL注入漏洞
    • fix: 修复系统变量中的权限提升漏洞
    • fix: 修复小助手图片上传接口存在的XSS漏洞

    新增功能

    • feat(Application): 应用可配置指定模型
    • feat(X-Pack): 添加参数配置以隐藏聊天界面中的显示SQL按钮和执行日志
    • feat: 添加Hive数据库支持
    • feat: 优化导出的Excel中的浮点数值显示
    • feat: 支持配置应用的显示名称
    • feat: 升级MiniMax默认模型至M3
    • feat(chat): 规范化查询列名用于显示
    • feat(querying data): 查询数据时,可通过点击"确定"跳过选择数据源步骤 #796

    功能优化

    • refactor: 容器健康检查支持动态路径配置
    • refactor(Table): 使用Ctrl+C复制数据时不复制表头
    • refactor: 图表值显示默认添加千位分隔符

    问题修复

    • fix: 修复高级助手应用无法正确显示应用名称的问题
    • fix: 修复自定义上下文路径后外观设置中的资源路径未更新的问题
    • fix: 修复从DM数据源获取schema可能需要高权限账户的问题
    • fix(chat): 规范化驱动程序列键(例如_u2.col → col)用于图表/表格绑定
    • fix(Data Source): 修复同步表结构时未找到相应提示的问题
    • fix(Hive): 规范化标识符引用并稳定元数据/查询路径
    • fix(Login): 修复输入框中输入信息后显示浅蓝色背景的问题
    • fix(Smart Questioning): 全屏查看输出图表时显示聊天列表和创建新聊天的图标
    • fix(table relationship): 修复表关系编辑界面中,当浏览器缩放调整为150%时,拖拽表会导致周围元素闪烁的问题 #1123
    • fix(X-Pack): 修复由于API Key过长导致无法保存模型的问题 #1090

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    SQLBot 是一款基于大语言模型和 RAG 的智能问数系统,由 DataEase 开源项目组匠心出品。借助 SQLBot,用户可以实现对话式数据分析(ChatBI),快速提炼获取所需的数据信息及可视化图表,并且支持进一步开展智能分析。

    工作原理

    核心优势

    • 开箱即用:仅需简单配置大模型与数据源,无需复杂开发,即可快速开启智能问数;依托大模型自然语言理解与 SQL 生成能力,结合 RAG 技术,实现高质量 Text-to-SQL 转换。
    • 安全可控:提供工作空间级资源隔离机制,构建清晰数据边界,保障数据访问安全;支持细粒度数据权限配置,强化权限管控能力,确保使用过程合规可控。
    • 易于集成:支持多种集成方式,提供 Web 嵌入、弹窗嵌入、MCP 调用等能力;能够快速嵌入到 n8n、Dify、MaxKB、DataEase 等应用,让各类应用快速拥有智能问数能力。
    • 越问越准:支持自定义提示词、术语库配置,可维护 SQL 示例校准逻辑,精准匹配业务场景;高效运营,基于用户交互数据持续迭代优化,问数效果随使用逐步提升,越问越准。

    快速开始

    安装部署

    准备一台 Linux 服务器,安装好 Docker,执行以下一键安装脚本:

    docker run -d \
      --name sqlbot \
      --restart unless-stopped \
      -p 8000:8000 \
      -p 8001:8001 \
      -v ./data/sqlbot/excel:/opt/sqlbot/data/excel \
      -v ./data/sqlbot/file:/opt/sqlbot/data/file \
      -v ./data/sqlbot/images:/opt/sqlbot/images \
      -v ./data/sqlbot/logs:/opt/sqlbot/app/logs \
      -v ./data/postgresql:/var/lib/postgresql/data \
      --privileged=true \
      dataease/sqlbot
    

    你也可以通过 1Panel 应用商店 快速部署 SQLBot。

    如果是内网环境,你可以通过 离线安装包方式 部署 SQLBot。

    访问方式

    • 在浏览器中打开: http://<你的服务器IP>:8000/
    • 用户名: admin
    • 密码: SQLBot@123456

    联系我们

    如你有更多问题,可以加入我们的技术交流群与我们交流。

    UI 展示

    飞致云旗下的其他明星项目

    • DataEase - 人人可用的开源 BI 工具
    • 1Panel - 现代化、开源的 Linux 服务器运维管理面板
    • MaxKB - 强大易用的企业级智能体平台
    • JumpServer - 广受欢迎的开源堡垒机
    • Cordys CRM - 新一代的开源 AI CRM 系统
    • Halo - 强大易用的开源建站工具
    • MeterSphere - 新一代的开源持续测试工具

    License

    本仓库遵循 FIT2CLOUD Open Source License 开源协议,该许可证本质上是 GPLv3,但有一些额外的限制。

    你可以基于 SQLBot 的源代码进行二次开发,但是需要遵守以下规定:

    • 不能替换和修改 SQLBot 的 Logo 和版权信息;
    • 二次开发后的衍生作品必须遵守 GPL V3 的开源义务。