本文是LLM系列文章,针对《PURPLE: Making a Large Language Model a Better SQL Write》的翻译。
摘要
大型语言模型(LLM)技术在自然语言到SQL(NL2SQL)的翻译中发挥着越来越重要的作用。通过广泛的语料库训练的LLM具有很强的自然语言理解和基本的SQL生成能力,而无需针对NL2SQL任务进行额外的调整。现有的基于LLM的NL2SQL方法试图通过增强LLM来改进翻译,并强调对用户意图的理解。然而,LLM有时由于缺乏组织复杂逻辑运算符组合的知识而无法生成适当的SQL。一种很有前途的方法是通过演示输入LLM,其中包括来自各种数据库的已知NL2SQL翻译。LLM可以从给定任务的输入演示中学习组织运算符组合。在本文中,我们提出了PURPLE(用于检索逻辑增强提示的预训练模型),它通过检索包含现有NL2SQL任务所需逻辑运算符组成的演示来提高准确性,从而指导LLM生成更好的SQL翻译。PURPLE在流行的NL2SQL基准Spider的验证集上实现了80.5%的精确集匹配准确率和87.8%的执行匹配准确率的新技术性能。PURPLE在各种基准、预算限制和各种LLM中保持高精度,显示出稳健性和成本效益。