海外访问:www.kdjingpai.com
Ctrl + D 收藏本站

SQLBot 是一款结合了大型语言模型(LLM)与检索增强生成(RAG)技术的智能数据查询系统。 它作为开源商业智能(BI)工具 DataEase 的一个功能模块,主要解决普通业务人员因不熟悉SQL语言而难以直接从数据库中获取数据的问题。用户可以通过日常说话的方式提出问题,SQLBot 能理解问题意图,并自动生成精确的SQL查询代码,最终返回查询结果或可视化图表。 该工具支持开箱即用,仅需简单配置大模型和数据源即可启动。同时,它也易于集成,可以嵌入到各类第三方业务系统中,为这些应用赋予对话式数据分析的能力。此外,SQLBot 提供了基于工作空间的资源隔离和细粒度的数据权限控制,确保了数据查询过程的安全性。

 

功能列表

  • 自然语言转SQL:核心功能,将用户的自然语言提问(Text)自动转换成结构化查询语言(SQL)。
  • RAG增强:集成检索增强生成(RAG)技术,提升大模型在特定数据环境中生成SQL的准确性。
  • 数据源支持:可以连接并查询多种主流数据库,如MySQL等。
  • 模型管理:支持接入并管理多种大型语言模型,用户可以根据需求配置和切换。
  • 权限控制:提供工作空间级别的资源隔离和细粒度的数据权限管理,保障数据安全。
  • 易于集成:支持作为插件或模块快速嵌入到第三方业务系统,也支持被n8n、Dify、Coze等AI应用开发平台集成。
  • 开箱即用:提供一键安装脚本和Docker部署方式,简化了部署和配置流程。

使用帮助

SQLBot 的安装和使用流程非常直接,主要分为环境准备、服务启动、初始配置和开始使用四个步骤。

1. 环境准备与安装

安装SQLBot前,你的服务器需要先安装好DockerDocker Compose。这两个工具是容器化部署的基础。

准备工作完成后,可以按照以下命令进行一键安装:

  1. 创建安装目录并进入
    在你的Linux服务器上选择一个合适的位置,例如/opt/sqlbot,并创建该目录。

    mkdir -p /opt/sqlbot
    cd /opt/sqlbot
    
  2. 下载配置文件
    使用curl命令从官方GitHub仓库下载docker-compose.yaml文件。这个文件定义了SQLBot服务以及其依赖环境。

    curl -o docker-compose.yaml https://raw.githubusercontent.com/dataease/SQLBot/main/docker-compose.yaml
    
  3. 启动服务
    执行以下命令,Docker Compose会根据配置文件自动拉取镜像并启动SQLBot服务。-d参数表示在后台运行。

    docker compose up -d
    

    你也可以通过1Panel应用商店进行可视化一键部署。

2. 访问和登录

服务启动后,在你的浏览器中访问部署服务器的IP地址和8000端口:http://<你的服务器IP>:8000/

系统默认的管理员账号信息如下:

  • 用户名admin
  • 密码SQLBot@123456

首次登录后建议修改默认密码。

3. 核心配置

成功登录后,需要进行两个核心配置才能开始使用智能问数功能:配置大模型添加数据源

  1. 配置大模型
    • 进入系统后,找到“模型管理”相关菜单。
    • 点击“新建”或“添加模型”,选择你需要使用的大语言模型(例如 GPT、文心一言、通义千问或本地部署的模型等)。
    • 根据界面提示,填入模型的API Key、Base URL等认证信息。
    • 保存后,模型就添加到了系统中。你可以添加多个模型,并设置一个作为默认查询时使用的模型。
  2. 添加数据源
    • 切换到“数据源”菜单,点击“新建数据源”。
    • 从支持的数据库类型列表中选择你的数据源类型,例如“MySQL”。
    • 填写该数据源的连接信息,包括:
      • 名称:为这个数据源起一个易于识别的名字,如“生产环境销售数据库”。
      • 主机名/IP地址:数据库服务器的地址。
      • 端口:数据库服务端口。
      • 数据库名:需要连接的具体数据库名称。
      • 用户名/密码:用于数据库认证的账号和密码。
    • 填写完毕后,可以点击“检验”按钮测试连接是否成功。检验通过后,点击“保存”即可。

4. 开始智能问数

完成以上配置后,就可以开始使用了。

  • 进入问答界面(通常称为“对话”或“Q&A”)。
  • 在输入框中,用自然语言描述你想要查询的数据。例如,你可以输入:“帮我查一下上个月销售额最高的前五个产品是什么?”
  • SQLBot 会将你的问题发送给配置好的大模型进行处理,生成SQL语句,并自动执行查询。
  • 查询结果会以表格、卡片或者图表的形式直接展示在界面上,让你可以快速获取数据洞察。

应用场景

  1. 业务人员的自助数据分析
    对于市场、运营、销售等岗位的员工,他们通常不具备编写SQL的能力。SQLBot可以让他们通过自然语言直接向数据库提问,例如“查询最近30天的新用户增长趋势”或“统计华东地区各类商品的销售额占比”,从而实现数据的自助查询与分析,极大提升了数据驱动决策的效率。
  2. 快速数据探索
    数据分析师在进行探索性数据分析(EDA)时,需要频繁地编写不同维度的查询语句。使用SQLBot,分析师可以通过对话快速验证数据假设,例如“男性用户和女性用户的平均客单价有差异吗?”,从而将更多精力投入到数据洞察而非代码编写上。
  3. 嵌入式分析
    可以将SQLBot的问答能力集成到企业已有的业务系统(如CRM、ERP)中。用户在使用这些系统时,无需跳转到专门的BI平台,就可以直接通过对话窗口查询相关数据,实现了数据分析能力与业务流程的无缝融合。

QA

  1. SQLBot支持哪些类型的大模型?
    SQLBot设计上是开放的,支持接入市面上主流的大语言模型,包括OpenAI的GPT系列、百度的文心一言、阿里的通义千问等。此外,它也支持接入通过Ollama等工具在本地部署的开源模型。
  2. 使用SQLBot是否必须先安装DataEase?
    SQLBot可以被视为DataEase生态的一部分,与其结合使用体验最佳。但它本身也是一个可以独立部署和集成的系统,你可以将其集成到自己的其他业务平台中。
  3. 它如何保证生成SQL的准确性?
    SQLBot利用RAG(检索增强生成)技术。在将用户问题发送给大模型前,系统会先从数据库的元数据(如表结构、字段名、注释等)中检索出与问题最相关的信息,并将这些信息作为上下文(Context)一同提供给大模型。这极大地提升了模型理解数据结构的能力,从而生成更准确的SQL。
  4. 数据安全是如何保障的?
    SQLBot提供了工作空间级别的资源隔离机制,不同空间的数据源和问答历史是相互隔离的。同时,管理员可以进行细粒度的数据权限控制,确保用户只能查询到其权限范围内的数据,避免数据泄露。
0已收藏
0已赞

找不到AI工具?在这试试!

输入关键词,即可 无障碍访问 必应 搜索,快速找到本站所有 AI 工具。

回顶部

zh_CN简体中文