1

基于大模型的text2SQL实践

我要开发同款
资深对话系统研发2023年11月30日
266阅读
开发技术自然语言处理、算法设计、机器学习、系统架构、深度学习
所属分类NL2SQL、text2SQL、大模型、ChatGPT

作品详情

项目简介:
项目的目标是根据用户的输入query,结合大模型配置信息中的多个表的schema信息,返回对应的标准化的SQL语句。
如假设有以下几张表和对应的列:
Table advisor, columns = [*,s_ID,i_ID]
Table classroom, columns = [*,building,room_number,capacity]
Table course, columns = [*,course_id,title,dept_name,credits]
Table department, columns = [*,dept_name,building,budget]
Table instructor, columns = [*,ID,name,dept_name,salary]
Table prereq, columns = [*,course_id,prereq_id]
Table section, columns = [*,course_id,sec_id,semester,year,building,room_number,time_slot_id]
Table student, columns = [*,ID,name,dept_name,tot_cred]
Table takes, columns = [*,ID,course_id,sec_id,semester,year,grade]
Table teaches, columns = [*,ID,course_id,sec_id,semester,year]
用户的问句query="Find the buildings which have rooms with capacity more than 50."
返回结果: SQL: SELECT DISTINCT building FROM classroom WHERE capacity > 50
项目分工:
本人利用相关的文章和部分大模型实现了该功能,主要包括底座大模型的选型,大模型的微调,结合对应任务下的先进技术,进行了prompt engineering。并对几种不同的prompt engineering进行了横向的对比实验。
项目心得:
对于复杂的大模型生成问题,将其进行合理的子任务拆解,prompt engineering微调的效果提升会比较好。
解决问题:
基本实现了自然语言到SQL转换的功能,支持大模型自动学习表和schema和SQL生成。
欢迎合作:
作者2017年毕业,主要从事对话系统,语义理解和推荐,大模型应用等方向的研发工作。曾在小爱同学细分赛道上业务做到业界No.1。对话系统领域研发经验6年,推荐领域研发经验3年,团队管理经验3年。
2022年起,调研并落地了大模型在文本生成的技术方案,落地的场景主要包括: 人设问答,本地知识库问答和搜索式问答,NL2SQL。在大模型的应用和优化方向,如PEFT, SFT,Prompt Engineering,推理加速等,都有着相关的实践经验。
熟悉聊天机器人、对话系统等项目,熟悉整体业务架构。为多家上市公司设计了通用的对话系统架构,完成大模型相关的业务算法指导;服务于数十家中小型企业,完成整体的架构设计和算法层的开发;对应届生和相关从业人员提供技术指导。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论