AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


RB-SQL:利用检索LLM框架处理大型数据库和复杂多表查询的NL2SQL
发布日期:2024-07-19 21:51:09 浏览次数: 1788


NL2SQL的任务是将自然语言问题转换为SQL查询,以便从数据库中获取答案。现有LLM来指导SQL生成的方法在处理大型数据库和复杂多表查询时存在挑战,尤其是在处理冗余信息和提高提示工程效率方面。

(a) 利用大型语言模型(LLM)解决文本到SQL任务的一个示例。(b) DPR模型和提出的RB模型的图表。与DPR模型相比,RB模型将输入从文档扩展到其他数据类型(即表格、列、SQL框架)。

为了解决上述问题,提出了RB-SQL框架,包含三个模块:
  • Table-Retriever:检索与问题最相关的表格。
  • Column-Retriever:在检索到的表格中进一步检索相关列。
  • SQL-Skeleton-Retriever:搜索具有相似SQL骨架的少量示例,并将SQL骨架引入示例组织,以增强上下文学习过程。
RB-SQL框架。表格检索器从数据库中筛选表格,列检索器进一步筛选列。SQL框架检索器用于选择相似的少量示例,并将SQL框架添加到示例组织中。


RB-SQL框架利用密集型段落检索(Dense Passage Retrieval, DPR)模型来检索相关表格、列和示例,以构建有效的提示工程。此外,框架还引入了SQL骨架作为示例组织中的中间步骤,以指导正确的SQL生成过程。

(a) 表格检索器的工作流程。该模块计算问题与表格之间的相似度,并检索与问题高度相关的表格。(b) 表格检索器的框架。使用BERT分别对问题和表格进行编码,并使用基于MaxSim的后期交互来计算相似度得分。

(a) 列检索器的工作流程。该模块检索与问题高度相关的列。(b) 列检索器的框架。

(a) SQL骨架检索器的工作流程。 (b) SQL骨架检索器的框架。

通过在公共数据集BIRD和Spider上的实验,结果表明RB-SQL模型在性能上优于几个竞争基线:GPT-4、DIN-SQL、DAIL-SQL

还进行了消融研究,证明了RB-SQL框架中所有模块对于性能提升都起到了重要作用。

https://arxiv.org/pdf/2407.08273RB-SQL: A Retrieval-based LLM Framework for Text-to-SQLprompt:https://anonymous.4open.science/r/Anonymize-A5E7/prompt_case.txt

推荐阅读


欢迎关注我的公众号“PaperAgent”,每天一篇大模型(LLM)文章来锻炼我们的思维,简单的例子,不简单的方法,提升自己。


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询