摘要
近年来,文本到 SQL 的研究主要集中在 SQLite 方言上,而忽略了 BigQuery 和 PostgreSQL 等其他 SQL 方言的多样性。这种局限性源于 SQL 语法和函数的多样性,以及收集和整理特定于 SQL 的训练数据的成本高昂。为了解决这个问题,我们引入了 SQL-GEN,这是一个用于生成任何 SQL 方言的高质量合成训练数据的框架,该框架以易于获取的特定于方言的教程为指导。SQL-GEN 显着提高了跨方言文本到 SQL 的性能,与现有方法相比,执行精度提高了高达 20%。这种性能提升缩小了与在大型人工标注数据上训练的模型之间的差距。此外,将 SQL-GEN 生成的合成数据与人工标注数据相结合,可以进一步提高性能,最高可达 5.6%。为了在一个模型中统一多方言能力,我们提出了一种新颖的专家混合 (MoE) 初始化方法,该方法利用了跨方言的共享知识。我们的方法将来自特定方言模型的自注意力层合并,并使用特定方言的关键字初始化专家门。这将导致一个专门针对多种 SQL 方言优化的通用模型,其性能优于单方言模型,并显着提高了整体性能。