论文一开始提出了以往 prompt-based 的 Text2SQL 方法的一些缺点:
- 缺少对 table cell value 的先验关注。比如查询 sex 时,
WHERE sex='Male'
、WHERE sex='M'
都是有可能的,LLM 也拿不准用哪个 - 通过 prompt 让 LLM 做 schema linking 时,让 LLM 根据 question 和 schema 列出相关 schema 的效果并不好,因为像对于 CodeLlama 这样的模型来说,基于指令生成非代码文本并不是他们的强项
- 目前方法的 post-refinements 收益也不明显:
- 如果一个由强大的 LLM 生成的 SQL 具有语义模糊而不是语法错误的话,那 LLM 是无法 self-debugging 的
- 使用 self-consistency 时,LLM 的投资和产出是不成比例,多次调用一个 LLM 产生数倍的成本,并没有从根本上让 SQL 的输出更加多样化
由此,论文提出了 Prompt-Enhanced Two-stage text2SQL framework with cross-consistency(PET-SQL)—— 通过两个 stage 来完成任务。