暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

人大杜小勇、清华李国良、MIT Samuel Madden等:结合小模型和大模型实现零样本NL2SQL

数据库应用创新实验室 2025-05-07
429

本文对中国人民大学杜小勇教授团队、清华大学李国良教授、麻省理工学院Samuel Madden教授、香港科技大学(广州)汤南教授等人联合编写的2024 VLDB论文《Combining Small Language Models and Large Language Models for Zero-Shot NL2SQL》进行解读,全文共7619字,预计阅读需要30至40分钟。



本文提出一种 ZeroNL2SQL 框架,将 NL2SQL 任务分解为更小的子任务,并同时利用 SLM 和 LLM。ZeroNL2SQL 首先对 SLM 进行微调,以提升其在 SQL 结构识别和模式对齐中的泛化能力,生成 SQL Sketch。然后利用 LLM 的语言推理能力填充 SQL Sketch中的缺失信息。为支持该框架,本文提出了新颖的数据库序列化和问题感知对齐方法,以通过 SLM 有效生成Sketch。此外,设计了多级匹配策略为 LLM 推荐最相关的值,并通过基于执行的策略选择最优 SQL 查询。综合实验表明,ZeroNL2SQL 在基准测试中实现了最佳的零样本 NL2SQL 性能,即执行准确率比最先进的基于 SLM 的方法高出 5.5%-16.4%,比基于 LLM 的方法高出 10%-20%。下图是如何将(a)自然语言问题(b)在数据库⇡中提出,翻译成(c)SQL 查询


一个 NL2SQL 翻译的示例,错误部分用红色突出显示


1. 研究背景与动机


1.1 研究背景


自然语言到 SQL(NL2SQL)将自然语言问题翻译成 SQL 查询,使得非技术用户更容易访问和分析数据,因此可以用于商业智能、数据分析和其他数据驱动应用。然而,回答问题的关键障碍在于 NL2SQL 的测试环境可能与现有的标注数据集非常不同。


1.2 存在问题


然而,回答问题的关键障碍在于 NL2SQL 的测试环境可能与现有的标注数据集非常不同,可能包括以下情况。


1.2.1 新数据库系统


新的数据库系统:基于Spider基准训练的NL2SQL模型在处理特定领域的数据库时,可能会遇到一些挑战和困难,导致其表现不尽如人意。由于这些特定领域的数据库往往包含复杂的数据结构和专业术语,NL2SQL模型在理解和处理这些特定领域的查询时可能会遇到困难。


1.2.2 新的语言现象


在测试环境中,语言现象的变化,例如缩写、同义词等,可能会对现有的自然语言到SQL(NL2SQL)模型的性能产生显著的负面影响。由于测试环境中的语言使用可能与训练环境中的语言使用有所不同,模型可能无法有效地识别和处理这些变化,进而导致性能下降。


SLM 和LLMs在不同错误类型上的统计数据


1.3 实验方案


1.3.1 NL2SQL方法


本文提出了一种基于分解的方法,将 NL2SQL 任务分解成更小的子任务,使得每个子任务更适合在零样本设置中解决。自然地,编写 SQL 查询的思维过程可以分解为四个子任务:

1)识别查询结构,该结构由 SQL 保留字组成关键词,例如 SELECT、FROM、WHERE 以及 ORDER BY;

2)将相关模式元素与问题对齐,即 SELECT 和 FROM 子句中的列和表;

3)通过推断 WHERE 子句中的条件、ORDER BY 或 GROUP BY 子句中的列等来完成 SQL 查询;

4)如果存在语法或执行错误,则迭代地纠正 SQL 查询。


1.3.2 实现过程


通过分析 SLMs 和LLMs在许多不同数据集上的行为,本文的关键观察结果是,与直观观察到的LLMs应该优于 SLMs 的观点相反,⼀个特定任务的微调 SLM 可以 更好地理解数据库模式和 SQL 语法,这使得它在结构识别和模式表现出色。实现方案如下:

● 第一步:SQL Sketch生成利用 SLMs 进行 SQL 结构设计

识别和模式对齐以生成 SQL Sketch,包括要 SELECT 的属性、包含在 FROM 中的表以及组成 SQL 查询的必要关键词(例如 ORDER BY)。

● 第二步:利用 SQL 查询补全和纠错

LLMs 完成 SQL Sketch中的缺失信息并生成完整的 SQL 查询,例如与数据库中的数据值对齐。例如,尽管问题提到“timothy”,但数据库实际上使用缩写“timmy”。因此,“timmy”。


1.3.3 挑战与解决方案


第一个挑战是如何开发一种可以泛化到新数据库或语言现象的 SQL Sketch生成方法。本文引入了一种基于编码器-解码器的 SLM 模型来生成 SQL Sketch。具体来说,为了提高模型的可泛化性,本文设计了一种新颖的数据库序列化策略,使编码器更能适应新数据库。此外,本文提出了一种问题感知的配准器,通过推断语义来获取最相关的 SQL Sketch。


2.预先知识


2.1 零样本NL2SQL 


1)对于测试数据库,其列名与训练数据库不同。例如,训练数据库包含列名 ,但测试数据库包含 given_name 和 last_name 列。另一个例子是,训练数据库是关于科学的,而测试数据库是关于金融的。

2)在新问题上的测试。用于测试的问题在语言现象方面与用于训练的问题不同。例如,训练集中的问题明确提到了数据库模式中的列或表名,而测试问题中的单词并未明确出现在数据库模式或作为同义词。

3)在新 SQL 上的测试。用于测试的 SQL 查询在局部语义和复杂性方面与用于训练的 SQL 查询不同。例如,只有少数训练 SQL 查询包含嵌套子句,而大量测试 SQL 查询包含嵌套子句。


2.2 SQL查询与SQLSketch


2.2.1 SQL查询


ZNL2SQL 支持的 SQL 查询属于 SQL 子语言的基分组中的数据查询语言(DQL),它包括以下组件:带有多个列和聚合的 SELECT,WHERE,GROUP BY,HAVING,ORDER BY,LIMIT,JOIN,INTERSECT,EXCEPT,UNION,NOT IN,OR,AND,EXISTS,LIKE 以及嵌套查询。


2.2.2 SQLSketch

●  SELECT。需要返回给用户的属性,例如图中的课程,以及作用于属性的聚合函数(例如,AVG(score))

●  FROM。用于获取数据的数据表,例如图中的 Student。

● 关键词。代表子句的关键词,例如 SELECT、FROM、ORDER BY、LIMIT,如图所示。


ZNL2SQL示意图


2.3 语言模型


2.3.1 语言模型概述


语言模型(LMs),通常基于 Transformer框架,旨在理解和生成类似人类的文本。这些模型利用复杂的算法和大量的训练数据学习语言的模式、结构和语义。技术上,语言模型被训练来模拟词序列的生成可能性,从而使得它们能够根据提供的输入上下文估计后续标记的概率。它们在各种应用中已被证明是无价的,尤其是在自然语言处理领域。


2.3.2 大语言模型


LLMs指的是通过增加模型容量,在各种下游任务上实现卓越性能的模型,如 ChatGPT、PaLM、GPT4和 LLaMA。


尽管 SLMs 和LLMs都是在大量文本数据上预训练的,但前者主要通过微调适应下游任务,而后者通过上下文学习和指令遵循实现零样本复杂推理,无需更改模型参数。


2.4 小语言与大语言模型结合应用


提示词Prompt的设计是生成 SQL 查询质量的关键。现有方法包括仅使用任务描述作为提示,或将一些手动标注的 NL2SQL 样本添加到提示中。本文的方法通过 SQL Sketch(由 SLM 生成)和价值推荐提供更细致的提示,旨在支持 SQL 查询的准确生成。


3. ZeroNL2SQL概述


ZeroNL2SQL有两个关键步骤SQL Sketch生成。给定用户问题&和数据库模式,SQL Sketch生成模块生成一个 SQL Sketch候选列表 D=(SELECT,FROM,关键词),并将其传递给LLM。


SQL 查询补全和修正。给定一组 SQL Sketch候选 D,SQL 查询补全和修正模块指导LLM在细节上完成 SQL Sketch,然后本文推荐数据库中的相关值来校准错误的查询(例如,从‘timothy’到‘timmy’)。最后,自动选择最佳 SQL 查询作为最终输出。

SQL Sketch生成和 SQL 查询完成与修正,以引导LLMs使用细粒度提示。


3.1 存在挑战


然而,在测试数据与训练数据不同的零样本设置中,训练这样的 SQL Sketch生成模块以提供准确的 SQL Sketch并非易事。为了解决这个问题,本文首先使用一个配备数据库感知序列化策略的 SQL Sketch学习框架来引导模型在不同测试环境中生成一系列有效的 SQL Sketch。SQL 查询补全和修正。给定一个排序后的 SQL Sketch列表,该模块利用 LLMs 补全这些 SQL Sketch,并选择最佳 SQL 查询作为最终输出。该模块存在两个主要挑战:(1) 实现价值对齐,(2) 选择最佳 SQL 查询。


3.2 解决方案


为了解决第一个挑战,本文设计了一种多层次匹配策略,为用户提供既符合原始 SQL 查询又基于数据库的适当值推荐。然后将其反馈给LLM以重写 SQL 查询。此外,本文还探索了基于值类型的不同相似度计算方法,例如缩写或同义词。


为了解决第二个挑战,基于观察 SQL 执行结果可以反映 SQL 质量的事实,本文设计了一种基于执行的筛选策略,以选择可执行且返回高质量结果的最佳 SQL 查询。


4. SQL Sketch生成


4.1 SQL Sketch学习


4.1.1 SQL Sketch


给定一个用户问题和一个数据库模式,本文需要生成 SQL Sketch中的三个部分:SELECT、FROM、关键字,为了便于展示,这些部分被称为子任务。本文将这个问题表述为一个序列到序列的生成问题,并采用编码器-解码器小语言模型(SLM)作为主干。本文使编码器-解码器 SLM 能够学习生成。

SQL Sketch生成模块概述


(a)使用 SLM 生成候选列表 D、D 和 Dafter SQL sketch 学习;

(b)使用问题感知对齐器进一步根据细粒度问题语义对 SELECT 和关键词候选进行排序。

图中显示了对应于每个子任务的指令,主要由任务描述组成。例如,对于 FROM 生成子任务,相应的指令是“根据数据库生成此问题的相关表”。主要直觉是不同的指令可以使 SLM 理解不同的子任务,以达到预期的输出。


4.1.2 SQLSketch优化


为了缓解束搜索的局部最优问题,本文保留由 SLM 生成的顶级假设作为候选,而不是只考虑最佳的一个。因此,对于 SQL Sketch的三部分,本文的 SQL Sketch学习方法产生 D={SELECT},D={FROM}和 D={关键词}。


参数学习。为了训练这样的模型生成 SQL Sketch,本文在一组标注数据上对编码器-解码器 SLM进行监督式微调。


4.2 问题感知对齐器


4.2.1 问题感知


根据问题的意图和问题的要求分别。例如,在图 4 中,由于问题的意图是“哪些课程”,相应的 SELECT 部分应该是“SELECT course”。此外,由于问题的要求是“得分最高”,相应的 Keywords 部分应包括“ORDER BY”。


ZNL2SQL概览,给定用户问题和数据库模式


1)SQL 概要生成模块生成 SQL 概要候选列表;

2)SQL 查询补全模块完成 SQL 查询。


4.2.2 感知对齐


弥合这一差距,本文设计了一种问题感知的 aligner,通过选择最佳的 SELECT 和 Keywords 来进一步剪枝 SQL Sketch候选者。请注意,本文在这里不对 FROM 部分进行基于问题的过滤,因为 FROM 部分也依赖于复杂的键连接,不能直接根据问题的语义推断出来。具体来说,本文取集合 D 和集合 D 的笛卡尔积以获得最终的候选集 D = {(SELECT, Keywords )|SELECT 属于 D , Keywords 属于 D}。


4.2.3 结果


最后,本文将 D 与由问题感知对齐器选出的最佳(SELECT,关键词)结合,形成排序的 SQL Sketch候选集 D。参数学习。本文对基于编码器的 SLM 进行监督式微调,以训练问题感知对齐器。对于训练集 M 中的每个问题&,获得上述有序候选集 D。对于每个样本(SELECT,关键词)2 D,如果 SELECT 和关键词都正确,则对齐标签为 1;否则,对齐标签设置为 0。


5. 多层次匹配

5.1  原理分析


5.1.1 LLM判别


根据由LLM预测的条件,存在两种错误类型:预测值错误和预测列错误。对于前者,可以在列中直接找到与对应值最相似的价值。另一方面,对于后者,需要将匹配范围扩展到整个数据库。直接将匹配范围设置为整个数据库可能会引入完全无关的列。因此,本文考虑逐步将匹配范围扩展到三个级别。


5.1.2 相似度计算


相似度得分计算公式如下:


其中,IndelDistance()表示将一个序列转换为另一个序列所需的最小插入和删除次数,length()表示字符串的长度。


对于基于语义的相似度计算,本文首先将两个值转换为两种基于高维向量的表示。然后,通过计算这两个表示的内积来获得相似度分数。具体来说,为了获得向量表示,本文考虑了两种代表性方法,即基于 word2vec 和基于 SLM 的方法。


5.2 SQL查询选择


5.2.1 解耦架构


基于前提中获得的每个 SQL Sketch候选,LLM完成 SQL 查询以选择最佳查询作为最终输出。如果一个查询返回空结果,本文将触发查询修订,这受到人类在遇到此类查询时通常会三思的观察的启发。为了实现这一点,本文设计了一种基于执行结果的选择策略。也就是说,如果当前的 SQL 查询不符合要求,本文将使用一个新的Sketch候选来引导LLM生成一个新的 SQL 查询。本文的主要见解是 SQL 查询的执行结果表明了查询本身的质量。


5.2.2 SQL算法策略


算法 2 说明了本文选择策略的整体过程。给定一个 SQL Sketch候选 C 2 D,以及问题&和数据库模式,它们被输入到LLM以生成一个 SQL 查询被提交到可执行检查,并通过不断地将错误信息反馈到LLM,获得一个可执行的查询。通过多级匹配步骤获得一个基于数据库的 SQL 查询。如果的执行结果不是C,则返回作为最终的 SQL 查询。否则,丢弃 C,并使用下一个候选 C 重复上述步骤。

SQL算法2策略


6. 实验

6.1 实验设置


6.1.1 数据集


本文使用 Spider 数据集训练 ZNL2SQL,然后使用 Dr.Spider、GeoQuery 和 KaggleDBQA 来评估模型的有效性和鲁棒性。训练集和测试集中的数据库和用户问题完全不同。Spider 是一个著名的 NL2SQL 基准,包含 200 个数据库,涵盖 138 个领域,如大学、政府等。其中包含 10,181 个问题实例和 5,693 个独特的 SQL 查询。在这些中,Spider 随机选择了 7000 个标注实例作为训练集。KaggleDBQA 是一个用于 NL2SQL 任务的测试集,旨在紧密模拟NL2SQL 模型可能在现实场景中遇到的数据和问题。KaggleDBQA 中使用的数据库来自 Kaggle。KaggleDBQA 中的问题经过注释,以确保它们反映真实用户的兴趣。


数据集中包含的SQL查询类型


6.1.2 评估指标


由于在 NL2SQL 基准测试中,LLMs所使用的 SQL 表达式风格可能与真实情况有所不同,因此传统的基于字符串的评估指标,如精确匹配准确率,不适用于本文的评估。因此,参考之前的文献,本文使用执行准确率(EX)指标,该指标比较生成的 SQL 查询与从数据库中检索到的对应真实 SQL 查询的执行结果。


6.1.3 基准


本文考虑以下两种类型的基准。首先,使用在 Spider 训练集上微调的 SOTA SLM 模型,包括 SMBOP和 RESDSQL。本文还报告了 LLaMA2模型的微调结果以供比较。其次,本文使用基于LLM的方法,包括原始LLMs、LLM + In-Context Learning 和 DIN-SQL。以下简要介绍这些方法。

SMBOP 提出了一种半自回归自下而上的 NL2SQL 模型,作为自上而下自回归模型的替代方案。


6.1.4 实施细节


在本工作中,本文使用 OpenAI 的 API,版本为 gpt-3.5-turbo-0613 和 gpt-4-0613,作为核心LLM。具体来说,将生成温度设置为 0.0,频率惩罚设置为 0.0。对于 SQL Sketch学习,采用 T5-3B作为骨干编码器-解码器 SLM。将批大小设置为 32,学习率设置为 0.00005。在问题感知对齐器中,采用 DeBERTaV3Large作为骨干编码器 SLM。将批大小设置为 4,学习率设置为 0.000005。此外,对于不同部分的保留假设数量,分别设置为 4、2 和 2,并将执行检查部分的设置为 1。


对于 SQL 查询补全,本文使用 Sentence Bert和包含 40 万英语单词 200 维表示的预训练词典来获取值的嵌入。本文将算法 1 中的相似度阈值 A 设置为 0.65,这是通过本文的评估中的超参数搜索确定的。 对于数据库组件,本文使用 SQLite 作为数据库,并使用 Python 中的 sqlite3 包来解析和执行数据库上的 SQL 查询。


6.2 对比开源LM


实验设置:在包含 17 个测试集的 Dr.Spider 基准上,对比 ZeroNL2SQL 与 SLM-based 方法(SMBOP、RESDSQL)、微调 LLaMA2 及 vanilla GPT-3.5 的零样本性能,聚焦单一扰动场景(如数据库模式同义、值同义、SQL 结构变化等)。


ZNL2SQL与在Spider数据集上微调的开源语言模型准确率比较


“DB”代表对数据库的扰动,“NLQ”代表对用户问题的扰动,“SQL” 代表 SQL 查询的扰动。本文报告了多个扰动的宏平均分数。


6.2.1 Dr.Spider 基准下的单一扰动零样本推理能力分析


 整体性能领先:基于 GPT-3.5 的 ZeroNL2SQL 以74.9%的平均执行准确率(EX)超越所有基线,优于 SLM-based SOTA(71.7%)、微调 LLaMA2(61.6%)及 vanilla GPT-3.5(63.5%);结合 GPT-4 后进一步提升至77.2%。


从token消耗和端到端时间消耗(秒)对比


● 稳定性与鲁棒性优势:SLM-based 方法在特定扰动下性能波动大(如 SMBOP 在 DBcontent-equivalence 测试集仅 37.2% EX),而 vanilla GPT-3.5 表现更稳定(54.5% EX,接近其平均水平)。ZeroNL2SQL 通过 SLM Sketch生成与 LLM 补全的协作,在高难度场景(如值同义测试集)实现显著突破(70.6% EX,较 SLM 提升 17.4%),证明对语言现象变化的适应性。

● LLM 微调的局限性:直接在 NL2SQL 数据集微调的 LLaMA2 性能弱于任务定制 SLM,推测原因是 LLM 在单一任务过拟合,损害泛化能力,与现有研究结论一致。


结论:ZeroNL2SQL 通过融合 SLM 的模式对齐能力与 LLM 的语义推理能力,在单一扰动场景下实现更优、更稳定的零样本性能,验证了框架的互补优势。


6.2.2 未见过领域的零样本推理能力分析


在 KaggleDBQA(真实场景数据)和 GeoQuery(地理领域)数据集上,测试模型对完全不同数据库、问题及 SQL 风格的泛化能力,对比 SLM-based SOTA 与 vanilla GPT-4。


● 跨领域泛化领先:ZeroNL2SQL+GPT-4 在 KaggleDBQA(42.4% EX)和 GeoQuery(84.6% EX)上均优于基线,尤其在 GeoQuery 超越以往 SOTA(74.7%)近 10 个百分点,且大幅领先 vanilla GPT-4(25.2% vs. 42.4% in KaggleDBQA)。

●  LLM 泛化能力的激发:实验表明,LLM 本身对新领域具有更强适应性,而 ZeroNL2SQL 通过结构化Sketch引导和值对齐策略,进一步释放其零样本推理潜力,避免纯 LLM 在模式对齐和值匹配上的缺陷。


结论:在完全未知的领域中,ZeroNL2SQL 凭借 SLM 的模式结构化能力与 LLM 的跨领域推理能力,实现了超越单一模型的泛化性能,证明框架在极端零样本场景下的有效性。


6.3 与LLM对比


对于情境学习,本文以 Spider 训练集作为示例池。表 4 展示了实验结果。与情境学习相比,本文的方法对LLM的改进更为显著。例如,在 DBcontent 等价性测试集中,情境学习导致 gpt-3.5-turbo-0613 性能较差(54.5% VS. 54.2%),而本文的方法则没有(54.5% VS. 56.8%)。

基于专有LLMs的ZNL2SQL与不同上下文学习方法执行准确率对比


ZNL2SQL 只需在新领域进行一次训练即可进行推理,无需重新训练。使用余弦相似度选择 20 个标注示例添加到提示中,以辅助LLM的推理。此外,多级匹配不会造成太多延迟,因为本文可以在数据库中缓存值的嵌入,余弦相似度计算可以充分利用矩阵乘法,这可以通过 cuda 支持进一步加速。


OpenAI的text-embedding-ada002与SBERT 的比较


本实验表明,ZNL2SQL + LLM 在 NL2SQL 推理的准确性和效率方面都优于单独使用LLM。


6.4 消融研究


6.4.1 SQL Sketch生成模块组件消融实验


数据库感知序列化的关键作用:


移除该策略后,SELECT、关键词和 FROM 的字符串匹配准确率显著下降(如 SELECT 从 61.1% 降至 55.1%),表明模型易过度依赖问题文本而非数据库模式,生成无效列 表引用。


基于 KaggleDBQA 数据集,在 SQL Sketch生成模块中不同组件的消融实验。

SQL Sketch 结果对比


该策略通过索引强制模型从数据库模式中选择有效元素,避免直接复制问题关键词,提升了模式对齐的准确性(FROM 准确率从 76.8% 提升至 81.6%)。

不同匹配方法消融研究


问题感知对齐器的语义优化效果:

对比嵌入对齐器,本文方法通过深度语义编码捕捉细粒度差异,在复杂语义场景中表现更优。数据库感知序列化是生成有效Sketch的基础,问题感知对齐器进一步提升语义匹配精度,两者共同确保Sketch结构与问题意图一致。


6.4.2 查询补全与修正模块组件效果评估


随机匹配” 和 “格式匹配” 性能显著低于相似度方法(如 column-value 任务中,随机匹配 EX 仅 70.1%,而多级匹配达 76.0%),因前者引入噪声或限制过严。错误分析显示,300 个样本中 89.3% 为词法错误,可通过相似度检索修正,证明该策略的合理性。对比仅列级匹配或数据库级匹配,多级匹配通过 “列→表→数据库” 逐步扩展范围,避免错误列匹配导致的连锁误差。


相似度计算方法对比:字符级模糊匹配适合缩写,语义级 GloVe 处理同义词,但 SBERT 通过双向注意力捕捉整体语义,在复杂场景中更稳定(EX 比 GloVe 高 2.2%)。基于相似度的策略有效解决值对齐问题,SBERT 在语义和字符级匹配中取得平衡,是最优选择。


不同相似度计算方法的消融研究


6.4.3 SLM 与 LLM 结合的必要性验证


实验设计:对比四种架构(LLM+LLM、SLM+SLM、LLM+SLM、SLM+LLM)在 KaggleDBQA 等数据集上的表现。


SLM+LLM 显著领先:

在 KaggleDBQA 中,SLM+LLM 的 EX 为 44.9%,远超 LLM+LLM(25.6%)、SLM+SLM(29.7%)和 LLM+SLM(21.4%),证明分工协作的优势。


SLM 适合可控的结构化生成(如Sketch中的 SELECT/FROM),避免 LLM 生成无效模式(LLM+LLM 的 FROM 错误率高 30%);LLM 擅长复杂条件推理(如 WHERE 子句中的逻辑组合),弥补 SLM 的语义推理不足(SLM+SLM 的条件生成错误率高 25%)。


比较不同数据集不同设计的准确率


SLM 与 LLM 在结构化生成和语义推理上的互补性是框架成功的关键,单一模型或反向分工均导致性能下降。


7. 相关研究


基于 SLM 的 NL2SQL。许多研究表明,预训练的语言模型在结构化数据(例如,表格)上表现良好。总体而言,这些工作中使用的 SLMs 主要分为两种类型:仅编码器 SLMs 和编码器-解码器 SLMs。


对于仅编码器 SLMs,RATSQL和 LGESQL利用 BERT对用户问题和数据库模式进行编码,并进一步采用图神经网络来建模外键和模式链接。然后,将编码表示输入到基于语法的句法神经网络解码器以生成 SQL 查询。


对于编码器-解码器 SLMs,PICARD、RASAT和 RESDSQL将 NL2SQL 任务表述为一个端到端翻译问题,并利用 T5 模型直接将用户问题翻译成 SQL 查询。


为了提高LLMs的 NL2SQL 有效性,DIN-SQL通过添加不同子任务的示例,使LLMs能够逐步生成 SQL 查询。与上述方法不同,ZNL2SQL 为用户提供细粒度指导(即 SQL Sketch和价值推荐),显著提高了 NL2SQL 的准确性,同时确保了高效率。


8. 结论与未来展望

8.1 结论


本文提出了一种 ZNL2SQL 框架,该框架结合了可调的 SLMs 和LLMs以实现零样本 NL2SQL 生成。ZNL2SQL 主要包含两个模块:由 SLMs 生成的 SQL Sketch以及由LLMs完成的 SQL 查询和纠正。本文的广泛实验表明,与基于 SLM 的 SOTA 方法和LLM-based 方法相比,ZNL2SQL 可以实现最佳的零样本 NL2SQL 性能。

8.2 未来展望


本文认为ZNL2SQL框架可以扩展到不同的 NL2SQL 场景。首先,考虑到LLMs出色的交互能力,ZNL2SQL 可以应用于对话式 NL2SQL 任务。其次,考虑到 ZNL2SQL 中的有效价值对齐方法,它也可以扩展到超大型数据库。


论文解读联系人:

刘思源

13691032906(微信同号)

liusiyuan@caict.ac.cn




数据库应用创新实验室简介




数据库是基础软件的重要一员,是支撑全球数字经济蓬勃发展的核心技术产品。为推动我国数据库产业国际地位从跟跑、并跑到领跑,多家数据库企业、应用单位、系统集成商、数据库服务企业、硬件制造商,共同成立公益性免费社群数据库应用创新实验室(以下简称“实验室”),打造了中国数据库产业的“联合舰队”。实验室持续致力于推动我国数据库产业创新发展,以实际问题为导向,以合作共赢为目标,联合政、产、学、研、用等多方力量,协同推进数据库领域应用创新的相关工作。实验室将一直秉承开放理念,持续欢迎数据库领域各企业、各机构、各组织申请加入。





实验室联系人




刘老师
13691032906
liusiyuan@caict.ac.cn

齐老师
17801071990
qidanyang@caict.ac.cn





实验室成员单位



文章转载自数据库应用创新实验室,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论