导读:本文是 “数据拾光者” 专栏的第一百一十六篇文章,这个系列聚焦自然语言处理和大模型相关实践。今天主要是关于智能问数产品技术调研和分享。
欢迎转载,转载请注明出处以及链接,更多关于自然语言处理、推荐系统优质内容请关注如下频道。
知乎专栏:数据拾光者
公众号:数据拾光者
最近接了一个新的项目开发,主要是做一个智能问数产品的开发。前期做了很多市场上智能问数开源项目的技术调研,这里整理成一篇文章进行分享。
01 背景介绍:从 “求 IT” 到 “自己问”,数据查询变简单了
你是否有过这样的经历?作为销售,想知道 “去年 Q3 华东地区笔记本电脑销量 TOP3”,却要写邮件找 IT 同事提需求,等了两天才拿到数据;作为运营,想分析 “近 7 天各渠道新增用户转化率”,面对复杂的数据库,只能对着 “SELECT”“JOIN” 等 SQL 语法望而却步。
在过去,数据查询是技术人员的 “专属技能”,非技术人员想要获取数据洞察,往往要经历 “提需求→等响应→改需求→再等待” 的漫长循环。而智能问数技术的出现,彻底打破了这个壁垒 —— 它就像一个 “懂业务的 AI 数据分析师”,能听懂你的自然语言提问,自动完成数据查询、分析,还能生成直观的图表,让非技术人员也能 “即问即得” 数据洞察。
简单来说,智能问数技术的核心是 “让机器理解人类语言,并用数据回答”。比如你说 “2024 年各月份的订单金额同比增长情况”,它不用你写一行代码,就能自动从数据库中抓取数据、计算增长率,最后用折线图展示趋势。
智能问数的核心工作链路:从 “提问” 到 “答案” 的 5 步魔法
智能问数看似简单,背后却藏着一套完整的技术逻辑,核心要解决 “自然语言理解→业务语义映射→SQL 生成与优化→数据查询→结果分析与可视化” 的全链路问题,就像一场精准的 “数据接力赛”:
我们用一个实际例子拆解这个过程:
- 自然语言提问
:运营人员问 “2024 年 1-6 月,华北、华东、华南三个地区的新用户注册量,哪个地区增长最快?”
- 自然语言理解
:机器拆解出核心需求 —— 时间范围(2024.1-2024.6)、维度(华北 / 华东 / 华南)、指标(新用户注册量)、分析目标(增长速度对比)。
- 业务语义映射
:机器从知识库中确认 “新用户注册量” 对应数据库中 “user_reg” 表的 “reg_count” 字段,“华北 / 华东 / 华南” 对应 “region” 字段的枚举值(1/2/3)。
- SQL 生成与优化
:自动生成查询 SQL,还会优化语法(比如添加索引提示),确保查询速度更快。
- 数据查询与可视化
:执行 SQL 获取原始数据,计算各地区增长率,最后生成 “地区 - 注册量 - 增长率” 的柱状图,并给出结论:“华东地区增长最快,6 月注册量同比增长 32%”。
除了核心链路,智能问数还得兼顾三个关键需求:
- 易用性
:非技术人员不用学 SQL,直接用日常语言提问;
- 扩展性
:能对接不同类型的数据库,支持复杂的多维度分析;
- 安全性
:敏感数据(如手机号、身份证)自动脱敏,防止数据泄露。
02 开源智能问数项目:免费好用,按需定制
对于中小企业、开发者或技术爱好者来说,开源项目是体验智能问数的最佳选择 —— 免费、可二次开发,还能根据自身需求调整功能。下面我们聊聊 4 个主流开源项目,看看它们各自的 “拿手好戏”。
2.1 开发者的 “SQL 小助手”:Chat2DB
开源项目地址:https://github.com/dataease/SQLBot?tab=readme-ov-file
- 核心定位
:AI 驱动的数据库管理工具,主打 “自然语言→SQL” 快速转换,兼顾数据库管理(建表、数据迁移)和轻量问数需求。
- 适合人群
:开发者、中小企业 IT 团队、数据分析师(需要高频操作数据库)。
- 核心亮点
:
多数据库 “通吃”:支持 MySQL、PostgreSQL、Oracle 等 20 多种主流数据库,连华为高斯、人大金仓等国产数据库也能完美适配;
SQL 生成 “聪明又灵活”:输入自然语言后,自动生成 SQL,还能手动调整,新手也能快速上手;
开源免费无门槛:社区版完全免费,支持本地部署,二次开发难度低。
可以通过如下地址直接体验Chat2DB项目:
Chat2DB Pro
可以根据实际需求添加对应的数据源,比如mysql、hive啥的。添加好数据源之后,点击AI对话,选择大模型和数据源之后就可以进行提问了,比如下面查询“查询每个项目投入的总工时(所有员工每周小时数之和),并显示项目名称和客户名称,按总工时降序排列。”:
2.2 企业级 “定制化利器”:DB-GPT
DB-GPTgithub地址:
https://github.com/eosphoros-ai/DB-GPT
DB-GPT核心架构如下图所示:
采用 “四层架构” 设计,核心技术壁垒突出:
- 用户交互层
:Web UI/API/D-Bot(对话机器人),支持多轮对话。
- 核心能力层
:
- Text2SQL 引擎(DB-GPT-Hub)
:基于 Spider/BIRD 数据集微调,执行准确率 82.5%(行业领先),支持 LoRA / 全参数微调;
RAG 框架:混合检索(BGE 语义向量 + BM25 关键词),解决大模型 “遗忘表结构” 问题;
- 多智能体系统
:基于 AWEL 定义 多Agent 协同(Planner Agent 拆解任务、Validator Agent 校验结果、Reporter Agent 生成报告);
- SMMF(多模型管理)
:支持 LLaMA2/ChatGLM/DeepSeek/Qwen 等 30 + 开源模型,统一调度与推理。
- Text2SQL 引擎(DB-GPT-Hub)
- 支撑服务层
:向量数据库(Milvus/Chroma)、沙箱 SQL 执行环境(防止恶意 SQL)、规则引擎(业务校验)。
- 数据源层
:支持关系库(MySQL/Oracle)、数据仓库(Hive)、Excel/CSV,提供元数据管理。
其中DB-GPT核心模块DB-GPT-Hub流程如下图所示:
1.解析数据库 Schema作为Prompt 核心上下文;
2.择 Prompt 指令模板(普通 / One-shot);
3.拼接 Prompt(单轮 / 多轮 / Code Representation)。
2.3 非技术人员的 “傻瓜式工具”:SQLBot
- 核心定位
:开箱即用的智能问数系统,主打 “业务人员自主问数”,无需 IT 支持就能完成查询与可视化。
- 适合人群
:中小企业业务人员(销售、运营、财务)、非技术团队。
- 核心亮点
:
部署超简单:Docker 一键启动,10 分钟就能完成部署,不用复杂配置;
越用越准:支持导入业务术语库(比如 “神仙水 = SK-II 护肤精华露”),用得越多,理解越精准;
自动出图表:问数后自动推荐合适的图表类型(占比用饼图、趋势用折线图),还能导出 Excel/PDF。
SQLBot工作流程如下图所示:
1. 用户输入问题与数据源选择;
2.RAG 检索增强,核心防 “幻觉” 环节。
2.1 数据源元数据检索
2.2 SQL 规则 / 示例检索
2.3 业务术语库检索
3.Text2SQL 生成与多维度校验。使用大模型
结合用户意图+RAG检索结果,参考数据库模
版生成初始SQL;然后通过多维度校验,主
要包括语法校验、规则校验、权限校验。
4.SQL执行;
5.可视化渲染,根据查询结果类型自动匹配最
有可视化图表。
使用SQLBot进行问数如下图所示:
SQLBot还提供了通用的prompt模版template.yaml:
不仅如此,针对不同的数据库,还提供了定制化的模版:
比如下面是针对mysql的模版Mysql.yaml:
2.4 新一代 “生成式 BI 工具”:WrenAI
- 核心定位
:开源生成式 BI(GenBI)工具,不仅能生成 SQL 和图表,还能提供 AI 驱动的业务洞察。
- 适合人群
:需要深度数据分析的团队、想搭建嵌入式问数功能的开发者。
- 核心亮点
:
语义层强大:支持定义业务指标和数据关系,确保问数结果的一致性(比如 “营收” 统一为 “销售额 - 成本”);
支持嵌入式集成:通过 API 能快速嵌入到自己的应用中,让产品自带智能问数功能;
多模型适配:支持 OpenAI、DeepSeek、Gemini 等多种大模型,可按需选择。
WrenAI架构如下图所示:
核心以 “用户输入自然语言生成 SQL” 为例,直观理解架构各模块的协作:
1.用户在前端输入 “统计近 3 个月各产品销售额”,前端调用 /api/v1/ask 接口;
2.AskService 接收请求,先调用「意图分类 Pipeline」,确认是 SQL 生成需求;
3.调用「Schema 检索 Pipeline」:将用户查询转为向量,检索数据库 Schema / 历史 SQL 样本 / 业务指令;
4.调用「SQL 生成 Pipeline」:整合检索结果构建 Prompt,调用LLM 生成 SQL;
5.调用「数据引擎」验证 SQL 语法,若报错则调用「诊断 Pipeline」定位问题,再调用「修正 Pipeline」重试;
6.验证通过后,AskService 将 SQL 结果(及图表配置)返回给前端;
7.前端渲染 SQL 高亮文本和销售额柱状图,完成交互。
开源项目核心信息整体对比表:
数据库和大模型支持对比分析:
03 闭源成熟产品:企业级解决方案,稳定可靠
对于中大型企业、强监管行业(金融、制造、政务)来说,开源项目的安全性、 scalability 和行业适配性可能不够。这时,闭源的成熟产品更能满足需求 —— 它们通常提供完整的解决方案、专业的技术支持,还有针对行业场景的深度优化。
3.1 企业级 “软硬一体” 方案:联想 Lenovo AI Force
产品地址:
https://aiforce.lenovo.com.cn/#/home
目前支持的数据库:
3.1.1 产品定位
- 核心定位
:企业级智能体开发平台(非单一问数工具),聚焦 “大模型落地最后一公里”,支持基于大模型构建专属智能体(含智能问数场景)。
- 目标用户
:中大型企业(制造、金融、医疗),需跨系统协同、私有化部署、高算力支撑的场景。
3.1.2 核心技术架构
依托联想智能云(xCloud)构建全栈能力,核心技术模块包括:
- 大模型管理层(SMMF)
:支持 DeepSeek R1(及蒸馏版)、通义千问等 20 + 主流大模型,提供 “预调优 + 个性化微调” 能力,适配不同场景推理需求。
- 智能体编排层(AWEL)
:基于 “Agentic Workflow Expression Language” 的声明式工作流引擎,支持多智能体协同(如 “问数 Agent + 运维 Agent + 报告 Agent” 联动)。
- 算力支撑层
:自研 “智能算力管理平台”,支持 NVIDIA / 国产 GPU(如华为昇腾),实现大模型分钟级部署、万卡集群调度,推理效率提升 3 倍(基于 AI 编译优化器)。
- 数据集成层
:通过 API 对接 ERP/MES/SCADA 等业务系统,结合 RAG 技术构建企业专属知识库(文档 / 操作手册 / 业务术语)。
3.1.3 智能问数核心能力
能力维度 | 具体表现 |
语义理解 | 支持口语化表达(如 “上个月华东区销售额环比降了多少”)、行业术语(如制造 “OEE”、金融 “不良率”) |
业务建模 | 需结合企业现有指标体系(无预置指标库),支持通过 API 关联业务系统数据口径,实现 “问数 - 业务动作” 闭环 |
分析智能化 | 支持异常自动下钻(如 “销售额下降→关联库存 / 渠道数据定位原因”)、趋势预测(依赖大模型微调) |
数据治理 | 全链路私有化部署(数据 / 模型不出域)、细粒度权限(基于工作空间)、操作审计日志 |
结果输出 | 支持文本摘要、可视化图表(需集成第三方 BI 工具)、API 推送至业务系统(如 CRM/ERP) |
3.1.4 部署与成本
- 部署方式
:公有云(联想智能云)、私有化部署、AI 一体机 / 工作站(开箱即用,7U 机身支持 DeepSeek R1 满血运行,8000 tokens/s 推理吞吐量)。
- 成本模式
:平台订阅制(按算力 / 智能体数量收费)+ 定制开发费用(行业解决方案),无开源版本。
3.1.5 优劣势
优势:
软硬件协同(算力优化 + 私有化部署,适配强监管行业);
多智能体协同,支持复杂业务场景(如 “问数 + 运维 + 报告生成”);
大模型兼容性强,支持国产 GPU。
劣势:
非专注问数工具,需二次开发才能落地问数场景;
成本高,适合中大型企业,中小客户门槛高;
无预置行业指标库,业务建模周期长。
3.2 行业深度适配 “老将”:思迈特 Smartbi
官网地址:https://www.smartbi.com.cn/
3.2.1 核心定位
专注 “企业级智能问数”,提供 “语义理解→业务建模→智能分析→数据治理” 全流程解决方案,适配金融 / 制造 / 政务等强监管行业。
3.2.2 核心技术亮点
- 三层智能架构
:语义理解层(支持口语化 / 复杂问题,准确率 99%+)→ 指标模型层(3000 + 预置标准指标,如金融 “不良率”、制造 “OEE”)→ 数据模型层(自动关联表关系);
- 行业深度适配
:80 + 银行、30 + 制造企业案例,支持 “监管报送” 场景(如银保监会报表自动生成);
- 数据治理闭环
:内置数据血缘分析、细粒度权限(字段级)、审计日志,符合等保三级要求。
3.2.3 优劣势
优势:企业级准确率(99%+)、行业解决方案成熟、本地化部署支持;
劣势:闭源收费(企业版年费 10 万 +)、部署周期长(需 1-3 个月)。
3.3 全球 “搜索式分析” 鼻祖:ThoughtSpot
官网地址:https://www.thoughtspot.com/
3.3.1 核心定位
全球“搜索式分析” 鼻祖,聚焦 “企业级自助 BI + 智能问数”,目标用户为中大型企业(如沃尔玛、IBM)。
3.3.2 核心技术亮点
- Natural Language Search
:支持英文复杂问题(如 “Q3 North America sales vs Q2 YoY”),语义理解准确率 90%+;
- Live Analytics
:实时对接业务系统(如 SAP/Oracle),问数响应速度 < 1 秒;
- AI 辅助洞察
:自动识别数据异常(如 “某产品销量骤降”)并推送原因分析。
3.3.3 优劣势
优势:技术成熟、实时分析能力强、全球案例丰富;
劣势:中文语义理解弱(翻译腔严重)、不适配中国业务场景(如 “双十一”“春节”)、成本高(比国产产品贵 2-3 倍)。
3.4 数据中台 “好搭档”:龙石 AI 用数智能体
3.4.1 核心定位
基于 “数据中台 + 大模型” 的智能问数解决方案,聚焦 “数据治理 + 问数闭环”,适配互联网 / 零售行业。
3.4.2 核心技术亮点
- 数据中台协同
:复用数据中台的指标体系 / 数据口径,确保问数结果一致性;
- 运营闭环
:用户反馈通过工单系统快速优化模型,准确率从 95% 逐步提升至 98%+;
- 轻量化部署
:支持与现有数据中台集成,无需重建数据链路。
3.4.3 优劣势
优势:数据一致性强、越用越准、集成成本低;
劣势:依赖数据中台(无中台企业需额外建设)、行业适配范围窄。
闭源产品核心信息对比表:
产品名称 | 核心优势 | 适用行业 | 部署方式 | 成本水平 | 核心亮点 |
|---|---|---|---|---|---|
联想 Lenovo AI Force | 软硬协同、多智能体协同、私有化 | 制造、金融、医疗 | 公有云、私有化、AI 一体机 | 高(订阅制 + 定制费) | 算力优化、跨系统协同 |
思迈特 Smartbi | 行业指标库、高准确率、数据治理 | 金融、政务、制造 | 私有化部署 | 中高(企业版年费 10 万 +) | 监管合规、行业适配 |
ThoughtSpot | 实时分析、AI 洞察、多语言 | 跨国企业、零售、科技 | 公有云、私有化 | 高(比国产产品贵 2-3 倍) | 实时响应、全球协同 |
龙石 AI 用数智能体 | 数据中台协同、数据一致性强 | 互联网、零售 | 私有化、中台集成 | 中(按项目收费) | 低集成成本、持续优化 |
04 快速部署体验:15 分钟搞定智能问数
看了这么多产品,不如自己动手体验一把!下面我们用 “在线 MySQL 数据库 + 开源项目” 的组合,一步步教你搭建智能问数环境,零基础也能上手。
4.1 准备工作:获取在线 MySQL 数据库
我们用db4free.net(免费在线 MySQL 服务)作为数据源,不用自己搭建数据库,方便快捷。
步骤 1:注册 db4free 账号
打开官网:MySQL Database for free,点击右上角 “Register”;
填写注册信息(用户名、邮箱、密码),勾选同意条款,点击 “Sign Up”;
查收邮箱验证邮件,点击验证链接,账号激活成功。
步骤 2:创建测试数据表
登录 db4free:https://www.db4free.net/phpMyAdmin/,输入注册的用户名和密码;
创建数据库:点击左侧 “新建数据库”,数据库名填 “test_sales”,排序规则选 “utf8mb4_general_ci”,点击 “创建”;
创建订单表:在 “test_sales” 数据库中,执行以下 SQL 语句创建 “orders” 表(存储订单数据):
CREATE TABLE orders ( id INT AUTO_INCREMENT PRIMARY KEY, order_date DATE NOT NULL, region VARCHAR(20) NOT NULL, product VARCHAR(50) NOT NULL, amount DECIMAL(10,2) NOT NULL, user_type VARCHAR(10) NOT NULL );插入测试数据:执行以下 SQL 插入几条模拟订单数据:
INSERT INTO orders (order_date, region, product, amount, user_type) VALUES ('2024-01-05', '华东', '笔记本电脑', 5999.00, '新用户'), ('2024-01-12', '华北', '手机', 3999.00, '老用户'), ('2024-01-20', '华南', '平板', 2499.00, '新用户'), ('2024-02-08', '华东', '笔记本电脑', 6999.00, '老用户'), ('2024-02-15', '华北', '平板', 1999.00, '新用户'), ('2024-03-03', '华南', '手机', 4999.00, '老用户'), ('2024-03-18', '华东', '手机', 3499.00, '新用户');验证数据:执行 “SELECT * FROM orders;”,能看到插入的 7 条数据,说明数据库准备完成。
4.2 体验 SQLBot:非技术人员的 “一键问数”
SQLBot 支持 Docker 一键部署,不用复杂配置,适合快速体验。
步骤 1:部署 SQLBot(需安装 Docker)
打开服务器或本地电脑的终端(Windows 用 PowerShell,Mac/Linux 用 Terminal);
输入以下 Docker 命令,一键启动 SQLBot:
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/sqlbot3.等待 3-5 分钟,执行 “docker ps”,看到 “sqlbot” 容器状态为 “Up”,说明部署成功。
ps:关于SQLBot部署这块,感觉官方文档写的还是比较简单。建议用豆包大模型来生成详细的一步步执行步骤,会更有效率一些。
步骤 2:配置数据源
打开浏览器,输入 “http:// 服务器 IP:8000/”(本地部署用 “http://localhost:8000/”);
登录 SQLBot:用户名 “admin”,密码 “SQLBot@123456”;
添加数据源:点击左侧 “数据源管理”→“新增数据源”,选择 “MySQL”,填写以下信息:
数据源名称:test_sales_db
数据库地址:db4free.net
端口:3306
数据库名:test_sales(之前创建的数据库)
用户名:你的 db4free 注册用户名
密码:你的 db4free 注册密码
4.点击 “测试连接”,提示 “连接成功” 后,点击 “保存”。
步骤 3:问数体验
点击左侧 “智能问数”→“新建对话”;
输入自然语言提问:“查询 2024 年 1-3 月各地区的订单总金额,按金额降序排列”;
点击 “发送”,系统会自动生成 SQL、执行查询,10 秒内返回结果:
华东地区:16497.00 元
华南地区:7498.00 元
华北地区:5998.00 元
4.自动生成图表:系统默认推荐柱状图,清晰展示各地区金额对比,还能点击 “导出”,将结果导出为 Excel 或 PDF。
4.3 体验 Chat2DB:开发者的 “SQL 生成神器”
Chat2DB 提供在线体验版,不用本地部署,直接就能用。
步骤 1:访问在线体验版
打开 Chat2DB 在线地址:Chat2DB Pro;
无需注册,直接点击 “游客登录”,进入工作台。
步骤 2:配置 db4free 数据源
点击左侧 “连接管理”→“新增连接”,选择 “MySQL”;
填写连接信息(和 SQLBot 配置一致):
连接名称:test_sales
主机:db4free.net
端口:3306
数据库:test_sales
用户名:你的 db4free 用户名
密码:你的 db4free 密码
3.点击 “测试连接”,连接成功后点击 “保存”。
步骤 3:生成 SQL 并执行
点击左侧 “SQL 编辑器”→“新建查询”,选择 “test_sales” 数据源;
在编辑器上方的 “AI 助手” 输入框中,输入提问:“查询 2024 年新用户的订单中,金额大于 3000 的记录,包含订单日期、产品、金额”;
点击 “生成 SQL”,系统自动生成以下 SQL:
SELECT order_date, product, amount FROM orders WHERE user_type = '新用户' AND amount > 3000 AND order_date BETWEEN '2024-01-01' AND '2024-12-31';手动调整(可选):如果需要添加排序,可修改 SQL 为 “ORDER BY amount DESC”;
点击 “执行”,返回结果:2 条记录(华东地区 1 月的笔记本电脑、华南地区 3 月的手机);
可视化展示:点击结果上方的 “图表”,选择 “表格” 或 “柱状图”,查看可视化效果。
总结
从需要技术人员编写 SQL,到业务人员 “张口就问”,智能问数技术正在打破数据使用的壁垒,让数据洞察触手可及。无论是开源项目的灵活免费,还是闭源产品的稳定可靠,都能满足不同用户的需求 —— 中小企业可以用 SQLBot 快速落地,中大型企业可以选择联想 Lenovo AI Force 或 Smartbi 搭建企业级解决方案,开发者可以基于 DB-GPT、WrenAI 定制化开发。
未来,随着大模型技术的不断优化,智能问数还会变得更聪明:能理解更复杂的业务逻辑,能自动发现数据中的隐藏规律,甚至能主动推送个性化的数据分析。对于我们来说,不用再畏惧数据的复杂性,只需专注于业务需求,让数据成为决策的 “得力助手”。
如果你是业务人员,不妨试试 SQLBot 的在线体验版,感受 “即问即得” 的便捷;如果你是开发者,可以基于 DB-GPT 或 Chat2DB 二次开发,打造专属的问数工具;如果你是企业 IT 负责人,可根据自身行业特性和数据安全需求,选择合适的企业级解决方案。
最新最全的文章请关注我的微信公众号或者知乎专栏:数据拾光者。
码字不易,欢迎小伙伴们关注和分享。