Text-to-SQL小白入门(六)Awesome-Text2SQL项目介绍

项目介绍

项目地址

  • GitHub地址:GitHub - eosphoros-ai/Awesome-Text2SQL: Curated tutorials and resources for Large Language Models, Text2SQL, and more.

项目首页

  • 欢迎大家围观参与、使用、贡献。

Text-to-SQL小白入门(六)Awesome-Text2SQL项目介绍_第1张图片

项目理念

这个项目主要收集了针对大型语言模型和Text2SQL等的精选教程和资源,希望能够共同学习、共同推动Text2SQL领域进步!

项目内容

简介

这里主要介绍了Text2SQL的概念

  • Text-to-SQL(或者Text2SQL),顾名思义就是把文本转化为SQL语言,更学术一点的定义是:把数据库领域下的自然语言(Natural Language,NL)问题,转化为在关系型数据库中可以执行的结构化询语言(Structured Query Language,SQL),因此Text-to-SQL也可以被简写为NL2SQL。
    • 输入:自然语言问题,比如“查询表t_user的相关信息,结果按id降序排序,只保留前10个数据”
    • 输出:SQL,比如“SELECT * FROM t_user ORDER BY id DESC LIMIT 10”

Text-to-SQL小白入门(六)Awesome-Text2SQL项目介绍_第2张图片

图片来源于DB-GPT项目

综述

这里罗列了一些Text2SQL领域的综述文章

  • (2023-International Conference on Very Large Data Bases,VLDB,CCF-A)A survey on deep learning approaches for text-to-SQL [paper]
  • (2022-IEEE Transactions on Knowledge and Data Engineering,TKDE,CCF-A) A Survey on Text-to-SQL Parsing: Concepts, Methods, and Future Directions [paper]
  • (2022-International Conference on Computational Linguistics,COLOING,CCF-B) Recent Advances in Text-to-SQL: A Survey of What We Have and What We Expect [paper]
  • (2022-arXiv)Deep Learning Driven Natural Languages Text to SQL Query Conversion: A Survey [paper]

基础模型

目前经典的大模型很多,列举了比如:Llama系列、ChatGLM系列和比较火的WizardLM、CodeLlama等等。

  • Llama [paper] [code] [model]
    • 2023年2月,Meta AI提出开源大模型Llama,有7b、13b、33b、65b共4种规模。
  • ChatGLM [paper] [code] [model]
    • 2023年3月,清华大学提出了开源的双语大模型ChatGLM,基于GLM框架,参数规格为6b。
  • Alpaca [paper] [code] [model]
    • 2023年3月,斯坦福大学提出基于Llama 7b模型微调的开源大模型Alpaca,有7b共1种规格,训练更简单和便宜。
  • Vicuna [paper] [code] [model]
    • 2023年3月,UC伯克利大学联合CMU、斯坦福大学提出的开源大模型Vicuna,有7b、13b共2种规格。
  • WizardLM [paper] [code] [model]
    • 2023年4月,北京大学和微软提出进化指令大模型WizardLM,有7b、13b、30b共3种规格,2023年6月,提出了数学领域的大模型WizardMath,2023年8月提出了代码领域的大模型WizardCoder。
  • Falcon [paper] [code] [model]
    • 2023年6月, 阿联酋提出了大模型Falcon,这是一种仅在网络数据集上训练的开源大模型,具有 1b、7b、40b和180b四个参数规范。值得注意的是,其中Falcon 40B的性能超过了LLaMA 65B。
  • ChatGLM2[paper] [code] [model]
    • 2023年6月,清华大学提出了ChatGLM的第二代版本ChatGLM 2,规范为6b,具有更强的性能、更长的上下文、更高效的推理和更开放的许可。
  • Llama 2 [paper] [code] [model]
    • 2023年7月,Meta AI提出第二代Llama系列开源大模型Llama 2,和Llama 1相比,训练数据多40%,上下文长度翻倍,模型有7b、13b、34b、70b共4种规格,但是34b没有开源。
  • Code LLama [paper] [code] [model]
    • 2023年8月,Meta AI 在 Llama 2 的基础上提出 Code LLama。Code Llama 在多个代码基准测试中达到了开放模型中最先进的性能。有基础模型 (Code Llama)、Python 专业化 (Code Llama - Python) 和指令跟踪模型(instruction-following models),每个模型都有 7B、13B 和 34B 参数。

模型微调

  • P-Tuning [paper] [code]
    • 2021年3月,清华大学等提出了针对大模型微调方法P-Tuning,采用可训练的连续提示词嵌入,降低了微调成本。
  • LoRA [paper] [code]
    • 2021年6月,微软提出的针对大模型微调的Low-Rank Adaptation(LoRA)方法,冻结预训练权重。
  • P-Tuning V2 [paper] [code]
    • 2021年10月,清华大学提出了P-Tuning的改进版本P-Tuning V2,性能更优。
  • RLHF [paper] [code]
    • 2022年12月,OpenAI使用RLHF方法训练ChatGPT,利用人类反馈信号直接优化语言模型,表现优异。
  • QLoRA [paper] [code]
    • 2023年5月,华盛顿大学基于冻结的4bit量化模型,结合LoRA方法训练,进一步降低了微调门槛。

数据集

  • WikiSQL [paper] [code] [dataset]
    • 2017年9月,Salesforce提出的一个大型的Text-to-SQL数据集,数据来源于Wikipedia,属于单领域,包含了80654个自然语言问题,77840个SQL语句,SQL语句形式比较简单,不包含排序、分组、子查询等复杂操作。
  • Spider [paper] [code] [dataset]
    • 2018年9月,耶鲁大学提出的多数据库、多表、单轮查询的Text-to-SQL数据集,也是业界公认难度最大的大规模跨领域评测榜单,包含了10181个自然语言问题,5693个SQL语句,涉及138个不同领域的200多个数据库,难易程度分为:简单、中等、困难、特别困难。
  • CoSQL [paper] [code] [dataset]
    • 2019/09, 耶鲁大学和Salesforce Research提出了一种跨域数据库CoSQL,它由30k+轮次和10k+带注释的SQL查询组成,这些查询是从Wizard-of-Oz (WOZ)集合中获得的,该集合包含3k个对话,查询跨越 138个域的200个复杂数据库。
  • CHASE [paper] [code] [dataset]
    • 2021年8月,西安交通大学和微软等提出了首个跨领域、多轮Text-to-SQL中文数据集,包含了5459个多轮问题组成的列表,17940个二元组。
  • BIRD-SQL [paper] [code] [dataset]
    • 2023年5月,香港大学和阿里巴巴提出了一个大规模跨域数据集BIRD,其中包含超过12751个独特的问题 SQL、95个大数据库,总大小为33.4GB。它还涵盖区块链、曲棍球、医疗保健和教育等超过37个专业领域。

评测指标

除了查看论文中的指标计算,还可以直接查看spider数据集Leaderboard榜单

  • 执行准确率(Execution Accuracy,简称EX)[paper]
    • 定义:计算SQL执行结果正确的数量在数据集中的比例,结果存在高估的可能。
  • 逻辑形式准确率(Exact Match,简称EM) [paper]
    • 定义:计算模型生成的SQL和标注SQL的匹配程度,结果存在低估的可能。
    • 有的时候叫做是VA:Valid Accuracy

实践项目

目前主要尝试了DB-GPT-Hub项目的全流程,比如模型选用vicuna、code llama等等。

  • DB-GPT-Hub
    • eosphoros组织提出的专注于大模型Text-to-SQL微调的开源项目,包含了大模型下载、数据集预处理、LoRA和QLoRA等微调技术、模型预测、模型评估等步骤。
  • sqlcoder
    • Defog组织提出的先进的Text-to-SQL的大模型,表现亮眼,效果优于GPT3.5、wizardcoder和starcoder等,仅次于GPT4。
  • modal_finetune_sql
    • 项目基于LLaMa 2 7b模型进行Text-to-SQL微调,有完整的训练、微调、评估流程。
  • LLaMA-Efficient-Tuning
    • 这是一个易于使用的LLM微调框架,支持LLaMA-2、BLOOM、Falcon、Baichuan、Qwen、ChatGLM2等。

友情链接

  • eosphoros
    • 他们是一支由来自互联网公司的技术爱好者和热衷于开源项目的NLP研究生组成的团队。他们的重点是开发保护数据库和大型语言模型的隐私和安全的解决方案。他们的目标是确保这些模型的能力保持绝对私密、安全和受控。
  • Awesome-AIGC-Tutorials
    • Awesome AIGC Tutorials 包含一系列精选的教程和资源,涵盖大型语言模型、AI 绘画和相关领域。探索适合初学者和高级人工智能爱好者的深入见解和知识。

你可能感兴趣的:(Text-to-SQL,sql,数据库,text-to-sql,LLM,github,Text2SQL,NLP)