five

DS-NL2SQL

收藏
Hugging Face2026-03-10 更新2026-03-11 收录
下载链接:
https://huggingface.co/datasets/zhangxiang666/DS-NL2SQL
下载链接
链接失效反馈
官方服务:
资源简介:
DS-NL2SQL 是一个高质量、多方言的自然语言转SQL(NL2SQL)基准数据集,旨在评估特定方言的SQL生成能力。现有Text-to-SQL基准(如Spider和BIRD)主要关注SQLite兼容语法,而DS-NL2SQL填补了真实企业数据库方言的语法特异性和异质性空白。该数据集提供并行多方言的NL-SQL对,并强调具有严格语法约束、隐式跨子句依赖以及不同数据库引擎间函数签名变化的复杂查询。 关键特性包括: - **规模**:包含2,218个测试样本,覆盖796个不同的数据库。 - **支持的异构方言(6种)**:SQLite (v3.45.3)、MySQL (v8.0.45)、PostgreSQL (v14.20)、SQL Server (v17.0)、DuckDB (v1.4.3) 和 Oracle Database (19c)。 - **高方言差异性**:每个样本平均方言差异为3.67分(BIRD Mini-Dev为1.60),确保对引擎特定约束的严格评估。 - **方言不兼容性聚焦**:仅保留表现出方言排他性的查询(即由于方言不匹配至少在一个系统上失败的查询),排除通用跨系统查询(如简单的`SELECT * FROM table`)。 - **执行等价性保证**:所有并行SQL变体均经过精心验证(并在自动化工具失败时手动纠正),以确保在所有目标数据库引擎上的执行结果严格一致。 数据来源包括Spider、BIRD、SParC、CoSQL、OmniSQL和Archer等多个主流数据集。数据集以JSON格式提供,每个条目包含数据库ID、自然语言用户意图和各方言的黄金SQL。
创建时间:
2026-03-08
原始信息汇总

DS-NL2SQL 数据集概述

基本信息

  • 数据集名称: DS-NL2SQL
  • 主要用途: 用于评估特定于数据库方言的自然语言转SQL(NL2SQL)生成
  • 任务类别: 表格问答
  • 语言: 英语
  • 许可协议: MIT
  • 数据规模: 1K<n<10K
  • 标签: nl2sql, text-to-sql, database, sql, multi-dialect, benchmark

核心特点

  • 规模: 包含 2,218 个测试样本,覆盖 796 个不同的数据库。
  • 支持的异构方言: 支持 6 种数据库方言:SQLite (v3.45.3)、MySQL (v8.0.45)、PostgreSQL (v14.20)、SQL Server (v17.0)、DuckDB (v1.4.3) 和 Oracle Database (19c)。
  • 高方言差异: 每个样本的平均方言差异为 3.67 分,确保了针对引擎特定约束的严格评估。
  • 方言不兼容性聚焦: 仅保留表现出方言排他性的查询,即由于方言不匹配导致至少在一个系统上失败的查询。通用的跨系统查询被排除。
  • 执行等价性保证: 所有并行的SQL变体都经过精心验证,以确保在所有目标数据库引擎上的执行结果严格一致。

数据来源

自然语言查询和数据库模式聚合自多个主流数据集:

  • Spider (https://yale-lily.github.io/spider)
  • BIRD (https://bird-bench.github.io/)
  • SParC (https://yale-lily.github.io/sparc)(重写为自包含查询)
  • CoSQL (https://yale-lily.github.io/cosql)(重写为自包含查询)
  • OmniSQL (https://omnisql.github.io/)
  • Archer (https://github.com/danna-zheng/Archer)

数据结构

数据集以JSON格式提供。每个项目包含以下主要字段: json { "db_id": "database_name", "question": "The natural language user intent.", "gold_sql": { "sqlite": "SELECT ...", "mysql": "SELECT ...", "postgres": "SELECT ...", "sqlserver": "SELECT ...", "duckdb": "SELECT ...", "oracle": "SELECT ..." } }

物理数据库设置:数据集迁移工具

该工具将SQLite数据库迁移到MySQL、PostgreSQL、SQL Server和DuckDB。旨在与 duckdb_sqlite_databases.zip 配合使用,并将多方言评估扩展到五个数据库引擎。

工具概述

  • : SQLite数据库文件
  • 目标: MySQL、PostgreSQL、SQL Server、DuckDB
  • 特点: 智能迁移、可选重用现有数据库、可按引擎配置启用/禁用

快速开始

  1. 提取 duckdb_sqlite_databases.zip
  2. dataset/config.py 中配置路径和凭据。
  3. 运行迁移脚本:python run_migration.py

配置参考

配置项 描述
SQLITE_BASE_DIR SQLite文件的基础路径
MIGRATION_TARGETS 要迁移到的引擎列表
MIGRATION_ROW_LIMIT 每个表的最大额外行数(默认:50)
REUSE_EXISTING_DB 如果数据库存在则跳过创建(默认:True)
DUCKDB_STORAGE_PATH DuckDB输出目录
CHECKPOINT_INTERVAL 每N个数据库保存中间结果(默认:50)

相关资源

引用

bibtex @article{dial2024, title={Dial: A Knowledge-Grounded Dialect-Specific NL2SQL System}, author={Zhang, Xiang and others}, journal={arXiv preprint arXiv:2603.07449}, year={2024} }

搜集汇总
数据集介绍
main_image_url
构建方式
在自然语言处理领域,文本到SQL转换任务长期面临跨数据库引擎的语法异构性挑战。DS-NL2SQL数据集的构建旨在填补这一空白,其核心方法是从Spider、BIRD、SParC、CoSQL、OmniSQL及Archer等多个主流数据集中精心筛选与整合自然语言查询及数据库模式。构建过程特别强调保留仅能在特定数据库方言中正确执行的查询,排除了通用性较强的简单语句,并通过自动化工具与人工校正相结合的方式,确保每个查询在SQLite、MySQL、PostgreSQL、SQL Server、DuckDB和Oracle六种数据库引擎上生成的并行SQL语句具有严格的执行等价性。
特点
该数据集在文本到SQL基准测试中展现出鲜明的特色,其核心在于高度聚焦于数据库方言的异构性与排他性。数据集囊括了六种主流数据库引擎的专用语法,平均每个样本的方言差异度达到3.67,远高于同类基准,这确保了评估能严格反映模型对引擎特定约束的理解能力。所有样本均经过验证,保证跨引擎执行结果的一致性,同时排除了泛化的跨系统查询,使得评估更具挑战性与现实意义。
使用方法
为充分发挥该基准的评估价值,使用者需首先配置多引擎数据库环境。数据集提供了专门的迁移工具,可将基础的SQLite数据库文件转换为MySQL、PostgreSQL、SQL Server及DuckDB等目标引擎的物理数据库。用户通过编辑配置文件设定数据库连接参数与存储路径,运行迁移脚本后,即可获得支持多方言执行验证的完整测试环境。评估时,模型需针对同一自然语言问题生成适应不同方言的SQL语句,并通过在各引擎上的实际执行结果来综合衡量其跨方言的准确性与鲁棒性。
背景与挑战
背景概述
在自然语言处理领域,文本到结构化查询语言(NL2SQL)的转换技术旨在弥合非结构化自然语言与结构化数据库查询之间的语义鸿沟,从而降低数据库交互的技术门槛。然而,现有主流基准如Spider和BIRD主要围绕SQLite兼容语法设计,未能充分涵盖企业级数据库系统中广泛存在的方言特异性与语法异质性。为应对这一局限,研究团队于2024年推出了DS-NL2SQL基准数据集,该数据集由weAIDB等机构的研究人员构建,聚焦于多方言SQL生成能力的评估。其核心研究问题在于如何系统性地建模与测试不同数据库引擎(如MySQL、PostgreSQL、SQL Server等)的语法约束与功能差异,推动NL2SQL模型从通用化向方言适应性的演进,对提升实际企业应用中的查询准确性与系统鲁棒性具有重要影响。
当前挑战
DS-NL2SQL数据集所针对的领域挑战在于,现实世界中的数据库系统存在显著的方言差异,包括语法结构、函数签名及跨子句的隐式依赖关系,这导致通用NL2SQL模型在跨引擎部署时易产生语法错误或语义偏差。该数据集通过筛选仅在各引擎间具有排他性的查询样本,并确保执行结果的一致性,旨在评估模型处理方言异质性的能力。在构建过程中,挑战主要源于多方言SQL对的并行验证与修正,需克服自动化工具在复杂查询转换上的局限,并人工确保所有变体在六大数据库引擎中的执行等价性,同时还需从Spider、BIRD等多个异构数据源中整合与重构自然语言问句及数据库模式,以维持数据质量与逻辑完整性。
常用场景
经典使用场景
在自然语言处理与数据库交互领域,DS-NL2SQL数据集为评估多方言SQL生成模型的性能提供了基准。该数据集通过整合来自Spider、BIRD等主流数据集的自然语言查询与数据库模式,构建了涵盖SQLite、MySQL、PostgreSQL等六种数据库方言的并行NL-SQL对。其经典使用场景在于测试模型在复杂查询任务中处理方言特异性语法约束的能力,例如隐式跨子句依赖和函数签名差异,从而推动文本到SQL转换技术向真实企业环境适配。
衍生相关工作
围绕DS-NL2SQL数据集,衍生了一系列经典研究工作,其中最突出的是Dial系统,该系统作为知识基础的方言特定NL2SQL框架,直接基于该数据集进行训练与评估。此外,该数据集促进了多方言SQL生成、跨数据库语义对齐等方向的研究,例如在OmniSQL和Archer等工作的基础上,进一步探索了方言不一致性对模型泛化能力的影响,为后续的异构数据库自然语言交互技术提供了关键数据支撑。
数据集最近研究
最新研究方向
在自然语言处理领域,文本到SQL转换技术正朝着支持多数据库方言的实用化方向演进。DS-NL2SQL数据集的推出,精准回应了企业环境中数据库系统异构化带来的挑战,其研究焦点集中于方言专属SQL的生成与验证。前沿探索着力于构建能够理解并适应不同数据库引擎语法细节与函数特征的模型,例如在MySQL、PostgreSQL、SQL Server等六种主流方言间实现精确映射。这一方向与当前大语言模型在复杂、领域特定任务上的适配热潮紧密相连,旨在提升NL2SQL系统在真实业务场景中的可靠性与泛化能力,对推动数据库智能交互的标准化评估具有关键意义。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作