LLM在组织内部应用的一类重要场景就是利用LLM的NL2SQL能力,简化用户对数据库的访问。本文主要介绍如何使用LLM生成SQL语句,不涉及到如何训练提升LLM的SQL生成能力。 开启正文之前,我们先明确一下这类功能在组织内服务的目标群体。我们将服务目标定位为没有太多IT技术背景的业务及运营人员。这些人访问数据库的需求,伴随着业务的发展
我们可以将Text2SQL任务拆解为2个大的部分,第一是利用LLM对用户的输入进行语义理解,然后结合数据库中表的结构信息,抽取出相关的字段信息。第二是利用抽取的字段信息生成结构化的SQL语句。对于SQL语句的执行,这部分的工作交给了应用层的服务。 底座模型选择: Llama : 2023年2月,Meta AI提出开源大模型Llama,有7b、...
在RAG应用中,首先从向量数据库查询数据库的建表语句、案例、常用SQL及其历史问题进行存储。在用户发起查询请求时,会先从向量数据库中检索出相关的建表语句、文档、SQL问答案例对放入到Prompt里(DDL和文档作为上下文、SQL问答对作为few-shot样例),LLM根据Prompt生成查询SQL并执行,提高模型的信息检索能力和生成的SQL语...
Text-to-SQL的研究,其实比你想象的要“老”得多。早在几十年前,科学家们就开始琢磨怎么让机器听懂人话,直接操作数据库。从早期的语法树和规则,到后来的LSTM、Transformer,再到如今风头正盛的LLM,技术几经迭代,却始终没能彻底解决这个问题。有人说,LLM是划时代的突破;也有人说,LLM只是个绣花枕头。老百...
为此,国盛证券决定搭建一个基于LLM的Text2SQL的系统,该系统能够将自然语言查询自动转换为SQL查询语句,从而实现更加高效、智能的数据查询和分析,提升企业数字化转型水平。 二、系统建设目标 基于大模型、RAG、向量数据库等技术建设Text2SQL中台(见图1),结合大数据平台能力提供创新、稳定、高效的数据交互方式,为研发人员、...
我们可以将Text2SQL任务拆解为2个大的部分,第一是利用LLM对用户的输入进行语义理解,然后结合数据库中表的结构信息,抽取出相关的字段信息。第二是利用抽取的字段信息生成结构化的SQL语句。对于SQL语句的执行,这部分的工作交给了应用层的服务。 底座模型选择: ...
我们在Text2SQL上面的应用主要包括两个阶段,第一阶段是利用LLM理解你的请求,通过请求去生成结构化的SQL;下一个阶段是在生成的SQL上自动化的查询数据库,返回结果,然后利用LLM对结果生成总结,提供分析。 3.1 第一阶段: 利用LLM理解文本信息,生成SQL,目前通过spider数据集来评测,GPT家族还是笑傲群雄。但是这里我们如果只...
本文主要是针对中文Text2SQL业务场景做的业务落地,即通过用户输入的自然语言文本信息(Text),转换为对应的SQL查询语句,然后通过对数据库中的数据进行检索查询,自动化生成相关的可视化表格,以可视化报表的形式与用户实现交互。 1.2 技术实现 作者基于DIN-SQL的实践:LLM在中文Text2SQL的实践 ...
我们可以将Text2SQL任务拆解为2个大的部分,第一是利用LLM对用户的输入进行语义理解,然后结合数据库中表的结构信息,抽取出相关的字段信息。第二是利用抽取的字段信息生成结构化的SQL语句。对于SQL语句的执行,这部分的工作交给了应用层的服务。 底座模型选择: ...
随着LLM 的发展(如 GPT-3、GPT-4),文本到 SQL 任务得到了显著提升。关键技术包括: 提示工程:设计有效的提示以引导 LLM 生成正确 SQL,例如“SimpleDDL-MD-Chat”提示模板在 Spider 数据集上表现优异。 少样本学习:在提示中提供少量示例,帮助 LLM 理解任务。