为什么重要
真实的数据分析场景中,用户往往通过多轮对话逐步细化查询。SParC 将 Spider 的单轮 Text-to-SQL 扩展为多轮,测试模型理解对话上下文并生成正确 SQL 的能力。
构建方式
- 基于 Spider 的 200 个数据库
- 为每个数据库设计多轮交互场景
- 后续查询依赖前序查询的上下文(指代消解、省略补全)
任务示例
第 1 轮:“Show me all students in CS department” → SELECT * FROM students WHERE dept = 'CS'
第 2 轮:“How many of them got an A?” → SELECT COUNT(*) FROM students WHERE dept = 'CS' AND grade = 'A'
关键发现
- 多轮比单轮显著更难(上下文依赖是主要挑战)
- Interaction Match(整个对话全对)比 Question Match 低很多
- 指代消解错误是最常见的失败原因
关联基准
- Spider:单轮 Text-to-SQL
- BIRD:大规模 Text-to-SQL
- WikiTableQuestions:表格问答
不足与展望
- 对话设计较为理想化,不完全反映真实用户行为
- 数据库规模偏小
- 需要支持更复杂的 SQL 特性(窗口函数、CTE 等)