热门搜索:和平精英 原神 街篮2 

您的位置:首页 > > 教程攻略 > ai资讯 >[Text2SQL]KeyInst: 通过关键指令来提升Text2SQL

[Text2SQL]KeyInst: 通过关键指令来提升Text2SQL

来源:互联网 更新时间:2026-06-15 14:55

在Text2SQL这个领域里,我们面对的核心问题其实挺直接的:怎么让模型写出来的SQL查询,不光是语法正确,更重要的是,它得能精准理解我们问的那个自然语言问题的意思。针对这个难题,

KeyInst(关键词指令)

这个方法被提了出来,思路挺新颖——它本质上是通过给大语言模型(LLMs)提供一些关键SQL关键词的指引,让SQL生成的过程变得更顺畅、更少出错。毕竟,你直接给模型抛一个问题,它有时候跑偏了还真不好拉回来。

[Text2SQL]KeyInst: 通过关键指令来提升Text2SQL

具体来说,KeyInst的整合方式主要有两种思路:

  • 管道策略:

    先给问题生成一组KeyInst,然后再拿着这组指令去提示LLMs写SQL。一步一步来,思路清晰。
  • 单步策略:

    直接训练一个微调模型,让它在一个步骤里同时把KeyInst和SQL都搞出来。一步到位,效率优先。

方法

KeyInst的核心思想其实不复杂:它先去分析自然语言问题(也就是NLQ),理解你到底想干什么,然后把中间那些对生成目标SQL至关重要的关键词给提炼出来,作为明确的指导。而且重要的是,这个KeyInst不是现成死板的模板,它是为每个Text2SQL任务实时生成的。

为了支撑这个想法,文章从Spider训练集中精心准备了超过6,200个KeyInst示例,组成了一个专门的KeyInst集合。每个示例都包含数据库模式、问题、对应的SQL以及它的KeyInst。

每一个KeyInst又分两部分:问题分析和关键词建议。问题分析这部分,靠提示LLMs自动生成就行。而关键词建议,则来自于对SQL结构的解析——先把SQL里用到的所有关键词都识别出来,然后过滤掉那些不太核心的。这个过滤是有优先级的:最高优先级是

group by, ha ving, order by, limit, except, intersect, union, where

这些;其次才是

select, from

。如果SQL本身就没用到更高优先级的关键词,那就只添加上这些优先级低的。像

join, count, in

这些,就不再纳入关键词建议里了。可以这么理解,如果没有这个优先级机制,生成的KeyInst就退化成SQL骨架了,把所有关键词都列一遍,反而会丧失重点。

管道方法的KeyInst

管道方法采取的是两步走的策略。第一步,先为当前任务生成一个定制化的KeyInst;第二步,拿这个KeyInst去提示LLMs,让它来生成最终SQL查询。这两步分离,各自专注。

微调的KeyInst生成器

第一种生成KeyInst的方式,是微调一个专门的模型来做这个事。输入是数据库模式和问题,输出就是对应的KeyInst,目标就是通过监督微调,让模型的预测尽量贴近真实答案。用更技术的话说,就是最小化那个预测损失函数。这个微调好的模型,就叫

微调KeyInst生成器

,它生成的KeyInst被称为

KeyInst-FT

,用来在下一步提示LLMs写SQL。

基于上下文学习的KeyInst生成器

另一种方式则是利用LLMs自身的能力——通过上下文学习(ICL)来生成KeyInst。从之前准备好的KeyInst集合里,挑几个最相似的例子(也就是演示样本),然后把这些例子和当前的问题、数据库模式拼在一起,形成一个少样本提示。这个提示指导LLMs,来生成当前问题对应的定制KeyInst,也就是

KeyInst-ICL

。挑例子这一步,靠的是计算问题之间的掩码相似度,选出最相似的K个。整个过程可以看成是:把当前模式和问题,以及K个例子一起塞给LLMs,它输出当前问题的KeyInst-ICL。

使用KeyInst生成SQL

等KeyInst生成好了,接下来的SQL生成反倒比较直接。把数据库模式、问题、以及刚生成的KeyInst这三者拼起来,形成一个零样本提示,喂给LLMs,它就能输出最终的SQL。公式上可以表示为:输入是模式、问题加上KeyInst,输出就是预期的SQL。

需要特别注意的是,KeyInst本身是一种非常灵活的增强指令。它的适配性很好,很容易就能整合到现有的各种Text2SQL提示方法里去。你只需要把KeyInst附加到其他方法的提示后面,就能显著提升性能。这种“搭积木”式的设计,让它的实用性非常强。

单步方法的KeyInst

与管道方法的两步走不同,单步方法选择了一条更快的路:微调一个模型,让它同时完成KeyInst和SQL的生成。模型在生成过程中,先产生KeyInst作为初始推理步骤,然后再生成SQL。这个微调过程,本质上是在让模型

内化

一个推理模式:先提炼关键指令,再输出最终答案。所以,当它再遇到新的Text2SQL任务时,就能够自发地按照这个模式进行推理,从而提升生成质量。

这种方法的输入和微调模型是一样的(模式和问题),但输出不同——输出包括KeyInst和SQL两部分。目标同样是优化损失函数,但这里的损失函数同时关注了KeyInst和SQL的预测准确性。它与常见Text2SQL微调模型的核心区别,就在于输出内容是结构化的,包含了推理链条。

AI自动绘画大师
AI自动绘画大师

类型:益智休闲

大小:5.72MB

语言:简体中文

平台:互联网

游戏下载

热门手游

相关攻略

手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc