
本论文由北京大学与作业帮教育科技(北京)有限公司联合研发,核心团队长期深耕自然语言处理与数据库交互领域,聚焦大语言模型(LLMs)在结构化数据查询中的落地痛点,文章已入选国际顶会 CIKM2025(第 34 届信息与知识管理国际会议)。对比传统工作中将大型语言模型(LLM)看作一个一次性生成完整 SQL 代码的翻译器,本文将其塑造成一个能够与数据库进行多轮、迭代式交互的智能代理(Agent)。这个代理通过一系列“思考-行动-观察”的循环,逐步分解问题、搜集信息、构建并最终执行 SQL 查询,从而有效解决了现有方法在处理复杂、宽表(列数非常多)数据库时的低效率和资源限制问题。
论文核心信息
论文标题:Interactive-T2S: Multi-Turn Interactions for Text-to-SQL with Large Language Models
作者团队:Guanming Xiong(北京大学), Junwei Bao*(作业帮), Hongfei Jiang(作业帮), Yang Song(作业帮), Wen Zhao(北京大学)(* 为通讯作者)
所属单位:Peking University; Zuoyebang Education Technology (Beijing), Co., Ltd.
一、Text-to-SQL 技术的核心价值与现实挑战
Text-to-SQL 技术作为自然语言与数据库交互的 “桥梁”,能将普通用户的自然语言问题(如 “列出参与足球活动的男性教授姓名”)自动转化为可执行的 SQL 查询,无需用户掌握专业 SQL 语法。这一技术在大数据时代极具实用价值:在企业办公场景中,市场人员可直接查询销售数据表获取区域业绩;在智能教育领域,学生能通过自然语言提问调取题库知识点关联数据;在政务服务中,市民可快速查询社保、公积金等公开信息。
然而,现有基于 LLMs 的 Text-to-SQL 方法仍面临三大关键挑战,制约其大规模落地:
(1)宽表处理效率低下:传统方法需将表中所有列信息输入 LLM 进行 schema 链接,当表中列数过多(即 “宽表”)时,会占用大量 LLM 上下文窗口资源,导致查询延迟升高、成本增加,且难以定位实时更新的单元格值。
(2)低资源场景适配性差:多数方法依赖大量标注的 “自然语言 - SQL” 配对数据选择示例(Exemplars),但低资源场景下标注数据稀缺,且用户查询往往与训练数据分布不一致,导致模型泛化能力骤降。
(3)交互过程缺乏可解释性:现有交互式方法要么直接生成完整 SQL、跳过中间推理步骤,要么工具设计冗余(如将基础 SQL 功能拆分为多个专用工具),既无法追溯 SQL 生成逻辑,也难以高效适配不同数据库场景。
二、Interactive-T2S 框架:以多轮交互与工具链破解核心痛点
针对上述挑战,研究团队提出 Interactive-T2S 框架,将 LLM 视为 “智能查询代理”,数据库视为 “数据环境”,通过 “思考-行动-观察” 的多轮交互逻辑,结合 4 个通用工具实现 SQL 的分步生成与验证,同时仅需 2 个标注示例即可实现少样本学习。
1. 四大核心工具:精准定位信息,降低 LLM 推理负担
框架将 SQL 生成拆解为 “找列找值 - 表关联 - 执行验证” 三步,对应设计 4 个工具,避免 LLM 直接处理海量冗余信息:
(1)SearchColumn(语义找列):根据自然语言问题的语义(如 “男性教授”“姓名”),对数据库列名、描述进行向量化处理,按相似度排序返回相关列,并附带列的统计特征(文本列返回示例值、数值列返回最值)。例如查询 “教授姓名” 时,可精准定位到 Faculty.Fname(名)与 Faculty.Lname(姓),而非无关的 Student 表列。
(2)SearchValue(模糊找值):基于 BM25 算法在数据库中搜索目标单元格值(如 “足球活动”),支持指定表 / 列缩小范围,解决实时更新数据的定位问题。例如输入 “Soccer activity”,可返回 Activity 表 name 列中的 “Soccer” 值,无需依赖静态标注数据。
(3)FindShortestPath(表关联找路径):将数据库 schema 视为 “无向图”(列为节点,外键约束为边),计算两列间最短关联路径, decouple 表关联逻辑与 LLM 语义推理。例如需关联 “教授表” 与 “活动表” 时,自动返回 Faculty.FacID ↔ Faculty_Participates_in.FacID ↔ Faculty_Participates_in.actid ↔ Activity.actid 的路径,避免 LLM 因多表关联复杂而出错。
(4)ExecuteSQL(实时执行验证):支持直接执行生成的 SQL 并返回结果,为 LLM 提供反馈以修正错误。例如执行 “查询足球活动男性教授” 的 SQL 后,若结果为空,LLM 可回溯调整列筛选条件。
2. 多轮交互逻辑:分步可解释,少样本易学习
Interactive-T2S 遵循 “问题拆解→信息定位→表关联→SQL 执行” 的统一交互流程,每一步均需 LLM 输出 “思考过程 + 工具行动”,确保生成逻辑可追溯:
问题拆解与信息定位:LLM 先将自然语言问题拆分为 “需找的列”“需找的值”(如 “足球活动” 对应值、“男性教授” 对应列),调用 SearchValue 与 SearchColumn 获取精准信息;
表关联路径计算:区分 SQL 中 “需选择的列”(如教授姓名)与 “需过滤的列”(如活动名称),调用 FindShortestPath 确定表间关联方式;
SQL 生成与执行:基于前两步结果构建 SQL,调用 ExecuteSQL 执行并验证结果,若符合预期则标记 “Done” 结束交互。
同时,框架仅需提供 2 个含完整交互过程的标注示例(如 “查询参与足球活动的师生姓名”“查询某大学数据库领域高被引作者”),即可通过上下文学习引导 LLM 完成新任务,大幅降低对标注数据的依赖。
三、实验验证:多数据集突破 SOTA,效率与效果双优
研究团队在 Spider(通用 Text-to-SQL 基准)、BIRD(复杂数据库基准)及其变体数据集(如含领域知识的 Spider-DK、去噪后的 BIRD-FinC)上开展实验,重点验证 “无先验知识”(不依赖额外外部信息)场景下的性能,结果如下:
1. 复杂数据集性能领先
在 BIRD-Dev(无先知知识)数据集上,Interactive-T2S 的执行准确率(EX)达 54.56%,较当前最优方法 ExSL(51.69%)提升 2.87 个百分点;在金融领域去噪数据集 BIRD-FinC 上,其 EX 值(49.06%)显著高于 Zero-shot(31.13%)与 DIN-SQL(47.17%),证明对复杂、噪声数据的适配能力。
2. 宽表处理效率倍增
以 DIN-SQL 为对比基准,Interactive-T2S 在 Spider-Dev 与 BIRD-Dev 上的 prompt token 消耗仅为前者的 36%(4.6k vs 12.8k)与 22%(4.7k vs 21.6k)。这一效率提升源于框架 “动态获取必要信息” 的设计 —— 无需输入全表列信息,仅通过工具调取关键列与值,完美适配宽表场景。
3. 少样本泛化能力突出
在仅使用 2 个示例的固定少样本设置下,Interactive-T2S 在 Spider-Syn(同义词干扰)、Spider-Realistic(隐式列名)等变体数据集上的 EX 值分别达 78.7%、80.7%,与依赖 6-7 个示例的 TA-SQL、SL+CC+RS 性能接近,且在跨领域场景(如 Spider-DK)中泛化能力更优,避免因数据分布差异导致的性能骤降。
4. 多表关联场景优势显著
消融实验显示,移除 FindShortestPath 工具后,在需 4 个及以上表关联的场景中,Spider-150 与 BIRD-150 子集的 EX 值分别下降 22 个、12 个百分点。这表明该工具能有效降低 LLM 的多表关联推理负担,即使面对数据库 schema 设计复杂的场景,也能稳定生成正确关联逻辑。
四、应用价值与未来方向
Interactive-T2S 的创新设计使其在多个领域具备落地潜力:
智能教育:适配教育数据库中 “知识点 - 题库 - 学生答题记录” 的多表关联场景,教师可通过自然语言查询 “某知识点错题率 Top3 的班级”,无需编写复杂 SQL;
企业数据分析:处理含数百列的业务宽表(如销售数据表),市场人员可快速查询 “某季度某区域客单价变化”,降低对数据分析师的依赖;
政务公开查询:简化政务数据查询流程,市民通过 “查询某区 2024 年社保参保人数” 等自然语言提问,即可获取精准结果。
未来,团队将进一步优化工具的计算效率(如加速 FindShortestPath 的图搜索速度),并探索框架在多模态数据(如结合文本与表格数据的查询)中的扩展能力,推动 Text-to-SQL 技术向更复杂的真实场景渗透。
评论