Query and Conquer: Execution-Guided SQL Generation
作者: Łukasz Borchmann, Marek Wydmuch
发布时间: 2025-04-02
来源: arxiv
研究方向: 自然语言处理与数据库查询生成
主要内容
该研究提出了一种基于执行结果的SQL生成方法,通过评估多个候选查询的语义一致性,在保证准确性的同时显著降低了推理成本。该方法能够有效地处理结构相似但语义不同的查询,使得小型模型能够超越计算密集型方法,并在成本效益方面取得显著提升。
主要贡献
1. 提出了一种基于执行结果的SQL生成方法,提高了生成SQL查询的准确性。
2. 通过最小贝叶斯风险解码框架,将自一致性方法扩展到执行行为定义的输出空间。
3. 利用SQL方言的prefix可执行性,在中间查询生成阶段增量应用基于执行的自我一致性。
4. 展示了小型模型在结合该方法后能够达到大型模型的性能,同时降低推理成本。
5. 通过实验验证了该方法在BIRDSQL数据集上的有效性,并与其他方法进行了比较。
研究方法
1. 执行相似性:比较候选查询的执行结果,以评估其语义一致性。
2. 近似执行相似性:比较逻辑执行计划,而不是实际结果,以降低计算成本。
3. 最小贝叶斯风险解码:提供理论依据,选择最有可能的输出。
4. 部分可执行SQL:利用PipeSQL方言的部分可执行性,在生成过程中逐步应用自一致性。
5. 耐心参数:在中间SQL步骤中容忍临时差异,提高准确性。
实验结果
实验结果表明,该方法在BIRDSQL数据集上优于贪婪解码和计算密集型基线,同时成本效益更高。小型模型在结合该方法后,其准确性可以显著提升,甚至超过大型模型。
未来工作
进一步研究包括:探索该方法在其他编程语言和代码生成任务中的应用,提高部分可执行SQL的性能,以及针对具有较低初始错误率或高基准准确率的模型进行改进。