一文彻底搞懂大模型实战 - 文本到SQL(Text2SQL)

文摘   科技   2024-10-14 18:02   湖北  

Text2SQL

Text2SQL技术,即将自然语言查询转换为结构化查询语言(SQL)的技术,正在迅速成为数据库查询的一个关键工具。它使得非技术用户能够通过自然语言数据库进行交互,极大地提高了数据库操作的便捷性和效率。

接下来分两部分:主流数据集、主流实战方法(SQLCoder + DB-GPT-Hub),一起来深入了解大模型实战:Text2SQL
Text2SQL

一、主流数据集

什么是Text2SQL数据集?Text2SQL数据集是指一类专门用于训练Text2SQL(文本到SQL)模型的数据集合。
Text2SQL数据集通常包含大量的自然语言查询(如问题或指令)和对应的SQL查询语句。这些对构成了模型学习的基础,使模型能够学会将自然语言查询转换为SQL查询。
Text2SQL数据集有哪些?Spider、WikiSQL和CHASE等主流Text2SQL数据集提供自然语言查询与SQL查询对应数据,训练和评估模型将自然语言转换为SQL查询的能力。
  1. Spider:这是一个跨域的复杂Text2SQL数据集,包含了大量的自然语言问句和对应的SQL查询语句。它旨在测试模型在复杂的、未见过的SQL查询上的性能以及其在新领域的泛化能力

  2. WikiSQL:这是一个大型的语义解析数据集,由大量的自然语句表述和对应的SQL标注构成。它主要用于训练模型学习如何将简单的自然语言查询转换为SQL查询

  3. CHASE:一个跨领域多轮交互Text2SQL中文数据集,包含多个多轮问题组成的列表,以及大量的<query, SQL>二元组,涉及不同领域的数据库。

二、主流实战方法

基于大语言模型的Text2SQL主流实战方法是什么?主要包括两种:(1)基于Text2SQL模型结合业务进行微调;(2)基于开箱即用的Text2SQL Agent结合业务整合到应用

一、基于SQLCoder模型,结合业务进行微调

第一步微调前准备(下载模型和数据集)
  • 下载模型:llama3-sqlcoder-8b是一种适用于 PostgreSQL、 Snowflake基于云的数据仓库平台) 的文本到 SQL 生成的强大的语言模型,可与最强大的通用前沿模型相媲美。

  • 下载数据集:WikiSQL是一个基于维基百科的语义解析数据集,主要用于自然语言查询到SQL查询的转换任务。它包含了超过8万个(问题,SQL)对,即80,645条自然语言问句及相应的SQL语句,以及24,241张表

第二步模型微调(收集业务数据、选择微调策略、训练模型、评估模型)

  • 微调数据集根据业务需求和数据库架构,收集相关的自然语言查询和对应的SQL语句作为训练数据。
  • 选择微调策略根据业务需求和数据集的特点,选择合适的微调策略,如基于特定数据库模式的微调针对复杂查询的微调等。
  • 训练模型使用微调数据集对SQLCoder模型进行训练,调整模型的参数以优化其在特定业务场景下的性能。
  • 评估模型在训练过程中,定期评估模型的性能,如准确率、召回率等,以确保微调的有效性。

第三步模型部署与推理

  • Enter special instructions(输入特殊说明):明确特殊说明的内容,这可能涉及对某项任务的具体要求、注意事项、优先级调整或其他任何有助于任务执行或结果理解的额外信息。例如:异常处理

  • Enter the database schema(输入数据库模式数据库模式(也称为数据库结构或数据库架构)定义了数据库中表、列、关系和其他数据库对象的组织方式

二、基于开箱即用的DB-GPT-Hub,结合业务整合到应用

DB-GPT是一个开源的AI原生数据应用开发框架(AI Native Data App Development framework with AWEL(Agentic Workflow Expression Language) and Agents)。

目的是构建大模型领域的基础设施,通过开发多模型管理(SMMF)、Text2SQL效果优化、RAG框架以及优化、Multi-Agents框架协作AWEL(智能体工作流编排)等多种技术能力,让围绕数据库构建大模型应用更简单,更方便。


DB-GPT-Hub是一个利用LLMs实现Text-to-SQL解析的实验项目,主要包含数据集收集、数据预处理、模型选择与构建和微调权重等步骤,通过这一系列的处理可以在提高Text-to-SQL能力的同时降低模型训练成本,让更多的开发者参与到Text-to-SQL的准确度提升工作当中,最终实现基于数据库的自动问答能力,让用户可以通过自然语言描述完成复杂数据库的查询操作等工作。

目前DB-GPT-Hub已经基于多个大模型打通从数据处理、模型SFT训练、预测输出和评估的整个流程,代码在项目中均可以直接复用-- 开箱即用,架构师带你玩转AI

架构师带你玩转AI
分享人工智能,让所有人玩转AI
 最新文章