OmniSQL——大规模生成高质量文本转SQL数据
简介
我们提出了一套自动化、可扩展的文本转SQL数据合成框架(如下图所示),并基于该框架发布了首个百万量级文本转SQL数据集SynSQL-2.5M。该数据集包含超过250万条多样化的高质量数据样本,覆盖16,000余个跨领域数据库。
在SynSQL-2.5M基础上,我们推出了OmniSQL系列模型(7B/14B/32B三个版本)。微调过程中还融合了Spider和BIRD提供的人类标注高质量数据。
论文链接: https://arxiv.org/abs/2503.02240
GitHub链接:https://github.com/RUCKBReasoning/OmniSQL
更新(2025.3.11): 已在train_and_evaluate文件夹上传训练与评估脚本,可轻松复现实验结果
更新(2025.3.12): 在data_synthesis文件夹开源数据合成框架源码
下载资源
模型与数据集 | 下载地址 |
---|---|
SynSQL-2.5M | ✨ Modelscope / 🤗 HuggingFace |
OmniSQL-7B | ✨ Modelscope / 🤗 HuggingFace |
OmniSQL-14B | ✨ Modelscope / 🤗 HuggingFace |
OmniSQL-32B | ✨ Modelscope / 🤗 HuggingFace |
SynSQL-2.5M数据集特征
本数据集完全由开源大模型生成,遵循Apache 2.0协议,具有以下特点:
- 规模庞大:包含2,544,390个<数据库、问题、SQL查询、思维链解答>四元组
- 领域广泛:覆盖16,583个现实场景的合成数据库
- 复杂度分层:从单表查询到多表连接/函数/公共表表达式,涵盖简单、中等、复杂、极复杂四个层级
- 语言风格多样:问题表述包含正式、口语、命令式、疑问式、描述性、简略、模糊、隐喻、对话等形态
- 全量思维链:所有样本均附带推理过程
截至2025年3月,SynSQL-2.5M是当前规模最大、多样性最丰富的合成文本转SQL数据集。我们鼓励研究者利用该数据集开展模型研发,如果觉得有用请为我们点亮星标或引用论文,您的反馈是我们持续优化的动力。
性能评估
我们在Spider、BIRD等标准基准,以及Spider2.0-SQLite、ScienceBenchmark、EHRSQL等专业领域基准和三个鲁棒性测试集(Spider-DK/Spider-Syn/Spider-Realistic)上进行了全面评估:
(注:"Gre"表示贪婪解码,"Maj"为8次多数投票。Spider(dev)/Spider-Syn/Spider-Realistic采用测试套件准确率(TS),其余采用执行准确率(EX))
OmniSQL在同等规模基线上显著领先,甚至在多个数据集上超越GPT-4o和DeepSeek-V3。这些成绩由单一模型实现,未引入模式链接/SQL修正等额外设计,集成这些技术后精度有望进一步提升。
快速入门
提示词模板
input_prompt_template = '''任务概述:
您是一名数据科学专家。请根据提供的数据库模式和自然语言问题,生成有效的SQL查询语句。
数据库引擎:SQLite
数据库模式:
{