总览 · 2024 年 2 月 10 日 · 16 分钟

Text-to-SQL 只是中间一截,不是整套软件

Text-to-SQL 的学术定义很窄:自然语言问题 → 可执行 SQL。Awesome-Text2SQL 开篇就是这句。评测集也按这个切:给问题、给库结构,收一条语句,比执行结果。

做软件时,这个定义不够用。业务问「华东为什么掉了」,需要的是分析链:先给出本期和对照期的数,再按省拆,再看品类,每一步都可能换表、换口径。BIRD 论文自己也说:只在「小库、干净值、没有外部知识」上把执行准确率做高,回答不了「能不能当数据库接口」。他们给的 GPT-4 数字是:带知识证据时测试集执行准确率 54.89%,人类 92.96%。差距在脏值、知识和效率,不在会不会写 SELECT。

所以方案里要把 Text-to-SQL 收成一个模块,上下游还要有:

  • 上游:意图是否属于问数;时间/指标/筛选是否齐;该不该澄清。
  • 中游:结构链接、语义层编译、只读执行、报错回写。
  • 下游:表格/图/口径名;追问继承过滤;审计。

Spider 2.0 把企业现实写得更狠:平均约 812 列、方言、嵌套转换、外部文档。即便 Spider 1.0 上已经有 90%+ 的执行准确率,lite 设置里最强解析器也只能做对约 5.7%。这说明「整套软件」必须包含文档、方言和多步工作流,不能只买一个翻译器。

出处

  • Awesome-Text2SQL README.zh.md
  • Li et al., Can LLM Already Serve as A Database Interface? BIRD, arXiv:2305.03111
  • Lei et al., Spider 2.0, arXiv:2411.07763

WUJI问数

个人笔记站。记录对话式问数智能体:Text-to-SQL、语义层、只读执行与分析呈现的整套方案。

本站为个人非经营性网站,内容开放阅读。文中示例仅供学习,执行任何数据库操作前请自行核对。

笔记关于隐私说明使用说明浙ICP备2025147228号