"革新文本到SQL解析:基于AST的排序与模式修剪技术"

Improving Retrieval-augmented Text-to-SQL with AST-based Ranking and Schema Pruning

摘要

本文聚焦于大型语言模型(LLM)在文本到SQL语义解析中的应用,针对商业数据库模式规模大和商业智能解决方案部署性的挑战,提出了一种动态检索输入数据库信息并利用抽象语法树(AST)选择少样本示例进行情境学习的方法。此外,研究了并行语义解析器在生成预期SQL查询近似版本中的应用,以支持检索过程。通过在单语和跨语种的语义解析基准测试中展示了对现有技术的改进,全面实验突出了这种检索增强生成设置中模块的贡献,揭示了未来工作的有趣方向。

原理

本文提出的方法通过以下关键步骤增强LLM在文本到SQL解析中的性能:

  1. AST-based Ranking for Example Selection: 利用标准化SQL抽象语法树(AST)的相似性来选择示例,这种方法能够保留结构信息,提高LLM的性能。
  2. Schema Pruning and Value Selection: 动态修剪模式并选择值,以简化LLM的任务并减少相关的计算负载。通过并行处理模式,使基于LLM的文本到SQL解决方案能够处理超出其上下文窗口大小的更长模式。
  3. Efficient Approximator: 采用参数少于500M的解码器自由模型作为高效的近似器,以并行方式处理模式,提高处理效率。

流程

  1. 输入处理: 将自然语言问题和数据库模式作为输入。
  2. 示例选择: 通过问题嵌入检索前500个示例,然后根据标准化SQL AST的相似性重新排序。
  3. 模式和值选择: 使用BM25评分动态选择相关列和表,结合近似查询中的元素构建子模式,并选择相关值。
  4. 生成SQL查询: 利用LLM生成SQL查询,通过单轮提示实现,无需复杂的多轮迭代。

应用

该方法适用于单语和跨语种的文本到SQL解析任务,特别是在处理大规模商业数据库模式时表现出色。其高效的模式处理和示例选择机制使其在商业智能平台和数据查询系统中有广泛的应用前景。