【text2sql】基于上下文文学习的MCS-SQL框架在Spider和BIRD取得了新SOTA

论文标题 "MCS-SQL: Leveraging Multiple Prompts and Multiple-Choice Selection For Text-to-SQL Generation" ,发表于2024.5的arXiv。

1.摘要解读

研究背景 :大型语言模型(LLMs)在文本到SQL(Text-to-SQL)任务中,通过上下文学习(ICL)方法取得了显著的性能提升,但与人类专家相比,性能仍有较大差距,尤其是在处理复杂数据库模式和查询的基准测试中。 研究方法 :本研究提出了一种新方法,利用多个提示(multiple prompts)来探索更广泛的可能答案空间,并有效聚合这些答案。通过多提示强化数据库模式链接,生成多样化的候选SQL查询,并基于置信度分数过滤这些查询,最后通过多项选择(multiple-choice selection)获取最优查询。研究成果:在BIRD和Spider基准测试中,该方法分别取得了65.5%和89.6%的执行准确率,显著优于以往的ICL方法,并在BIRD基准测试中建立了新的性能标准。

2.主要贡献

作者提出的 MCS-SQL 方法,该方法通过利用多个提示(Multiple Prompts)和多项选择(Multiple-Choice Selection)来增强文本到SQL生成的准确性和鲁棒性。在BIRD和Spider这两个包含复杂数据库模式和查询的基准测试中,该方法实现了显著的性能提升,特别是在BIRD基准测试中,该方法取得了65.5%的执行准确率,超过了之前的最佳方法,并在效率上也有所提高。

3. 方法论解读

3.1 Schema Linking

模式链接的目的是将自然语言问题中的实体与数据库模式中的表格和列关联起来。这个过程分为两步:

  1. 表格链接(Table Linking):确定与自然语言查询相关的数据库表。作者使用多个提示来增加召回率,即确保所有相关表格都被选中。为了减少表格顺序的影响,作者随机打乱表格顺序,生成多个不同的提示。对于每个提示,使用高采样温度从LLM获得多个响应,最终结果是所有响应的并集。

  2. 列链接(Column Linking):在确定了相关表格后,下一步是确定这些表格中需要的列。与表格链接类似,这个过程也使用多个提示,并且只包括在表格链接阶段选择的表格的模式。

3.2 Multiple SQL Generation

多SQL生成阶段的目标是生成多个候选SQL查询。作者通过以下步骤实现:

  1. 少量示例选择(Few-Shot Examples Selection):对于每个测试样本,从训练集中选择少量示例。作者使用了两种不同的选择策略:基于问题相似度的方法和基于掩蔽问题相似度的方法。掩蔽问题是指将问题中特定于数据库模式的标记(如表名、列名和值)替换为特殊标记。

  2. SQL生成:使用少量示例、数据库模式、样本表内容和自然语言问题构造提示。每个提示都旨在生成一个SQL查询,并要求LLM解释生成该查询的推理步骤。对于每个提示,使用高采样温度从LLM获得多个响应。

3.3 Selection

选择阶段的目标是从候选查询中选择最准确的一个。选择过程包括两个步骤:

  1. 候选过滤(Candidate Filtering):基于置信度分数过滤候选查询。首先,执行所有候选查询并移除那些由于语法错误或超时而失败的查询。然后,计算每个查询的置信度分数,即产生相同执行结果的查询数量。选择每个执行结果组中执行时间最短的查询,并移除置信度分数低于某个阈值的查询。

  2. 多项选择(Multiple-Choice Selection, MCS):过滤后,使用LLM通过多项选择问题来选择最准确的查询。给定一组候选SQL查询,LLM需要选择最合适的查询并提供选择的理由。对于每个多项选择问题,从LLM采样多个响应,并通过多数投票确定最终的SQL查询。

工作流程总结
  1. 模式链接:使用多个提示来确定与问题相关的数据库表格和列。
  2. 多SQL生成:基于上一步确定的模式和多个不同的提示生成多个候选SQL查询。
  3. 选择:首先基于置信度过滤候选查询,然后通过LLM的多项选择来确定最终的查询。
相关推荐
南 阳3 小时前
百度搜索全面接入DeepSeek-R1满血版:AI与搜索的全新融合
人工智能·chatgpt
workflower4 小时前
Prompt Engineering的重要性
大数据·人工智能·设计模式·prompt·软件工程·需求分析·ai编程
deephub6 小时前
LLM高效推理:KV缓存与分页注意力机制深度解析
人工智能·深度学习·语言模型
黄雪超6 小时前
大数据SQL调优专题——引擎优化
大数据·数据库·sql
青衫弦语6 小时前
【论文精读】VLM-AD:通过视觉-语言模型监督实现端到端自动驾驶
人工智能·深度学习·语言模型·自然语言处理·自动驾驶
没枕头我咋睡觉7 小时前
【大语言模型_4】源码编译vllm框架cpu版
人工智能·语言模型·自然语言处理
极客密码7 小时前
大厂出品!三个新的 DeepSeek 平替网站
aigc·cursor·deepseek
WHATEVER_LEO7 小时前
【每日论文】Text-guided Sparse Voxel Pruning for Efficient 3D Visual Grounding
人工智能·深度学习·神经网络·算法·机器学习·自然语言处理
小宇爱8 小时前
38、深度学习-自学之路-自己搭建深度学习框架-3、自动梯度计算改进
人工智能·深度学习·自然语言处理
小白狮ww10 小时前
国产超强开源大语言模型 DeepSeek-R1-70B 一键部署教程
人工智能·深度学习·机器学习·语言模型·自然语言处理·开源·deepseek