LLMs and SQL

https://blog.langchain.dev/llms-and-sql/

LLM生成SQL很容易

解决的问题是如果让LLM生成的SQL,是valid并且结果正确的

模拟人是如何写SQL的,本身人也是要上下文的,

那么问题就是需要什么上下文,并且如何组织

比较直觉的是,给出schema和几条真实数据的example

当然,langchain会自动生成这种context,

但是有时候,需要去hand-crafted,比如limit3的数据不具备代表性,需要更多的数据,或者limit3的数据有隐私问题需要处理

然后LLM生成的sql,怎么保证语法上是正确的,

这里会用一个工具query_checker_sql_db,去检查,如果语法有错,

可以把报错结果和原始查询发过LLM,让模型自己去纠正

We send the original query with the traceback log to the LLM and ask it to make it right

文中后面说了,两种可能的优化

一种是few-shots,给几个例子

二是,分解成subquerys,尽量把复杂查询分解成子查询,降低复杂度

 

posted on   fxjwind  阅读(248)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
历史上的今天:
2013-06-28 Storm-源码分析-Topology Submit-Supervisor
2013-06-28 Storm-源码分析- Multimethods使用例子
2012-06-28 NoSQL Databases - CouchDB
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示