传统企业数据分析高度依赖数据分析师编写复杂 SQL,不仅沟通链路漫长,还常常难以满足高管和一线销售人员即时查询的需求。“自然语言转 SQL”(Text-to-SQL)技术的成熟为数据民主化带来了契机,但其最大挑战在于模型的语义幻觉和 SQL 注入安全风险。
一、Schema 剪枝与表结构上下文精准注入
企业数据库往往包含数百张数据表。直接将全部 DDL 塞给大模型会超出上下文窗口并造成注意力分散。纳海川引入两级检索:
用户问题(例如“统计上个月贵阳门店茅台酒销售额前五”) → 表名与列名语义相似度检索 → 提取最相关的 3 张核心业务表 DDL → 注入业务同义词字典 → 送入微调大模型
二、SQL 语法树(AST)校验与只读沙箱
生成的 SQL 绝不允许直接在生产库执行,必须经由严苛的安全过滤器:
- 通过 SQL 解析器生成语法树,白名单仅允许 `SELECT` 查询语句;
- 严格拦截 `DROP`、`DELETE`、`UPDATE`、`ALTER` 等写操作及系统信息函数;
- 底层数据库连接绑定专用的 MySQL ReadOnly 只读账号,执行超时强制设为 3 秒以防死循环慢查询。
三、人机交互核对与可视化呈现
系统自动将生成的 SQL 翻译为大白话回显给用户核对(如“已为您统计 2026 年 9 月贵阳门店销售额排名”),并自动将查询结果集转为柱状图与明细报表。
业务成效:在某大型零售客户上线后,高频日常管理报表的人工制作需求减少 70%,查询准确率达 92.4%。