企业微信
悟空CRM  >   公司新闻  >  最强SQL代码生成大模型发布:DefogAI开源超过gpt-3.5-turbo的SQL生成大模型SQLCoder,免费商用授权~

最强SQL代码生成大模型发布:DefogAI开源超过gpt-3.5-turbo的SQL生成大模型SQLCoder,免费商用授权~

悟空软件 阅读次数:199 次浏览

SQLCoder 是 Defog 团队推出的一款前沿的大语言模型,专门用于将自然语言问题转化为 SQL 查询。这是一个拥有150亿参数的模型, 在自然语言到 SQL 生成任务上,其性能略微超过了 gpt-3.5-turbo,并且显著地超越了所有流行的开源模型。更令人震惊的是,尽管 SQLCoder 的大小只有 text-davinci-003 的十分之一,但其性能却远超后者。

自然语言生成SQL问题简介SQLCoder简介和特点SQLCoder的具体测试结果SQLCoder实际测试结果SQLCoder相关资源SQLCoder的发布让编程大模型的生态再次丰富:

 

上图来自DataLearner的编程大模型列表:
https://www.datalearner.com/ai-models/pretrained-models?&aiArea=1002&language=-1&contextLength=-1&openSource=-1&publisher=-1

自然语言生成SQL问题简介
随着大数据和数据库技术的发展,如何更自然、更直观地与数据库进行交互成为了一个热门的研究方向。传统的数据库查询需要用户具备一定的SQL知识,这对于非技术背景的用户来说是一个门槛。
大语言模型已经在代码生成方面展示了强大的能力,不过,当前大多数大语言模型都是针对Python、Java等高级编程语言做一些通用的大模型微调。少部分模型也会针对Python这种大家用的很多的模型做特别调优。但是SQL代码生成目前却不多。使用最好的可能还是GPT-4。而今天DefogAI开源的SQLCoder是一个新的开源选择。
SQLCoder简介和特点
如前所述,SQLCoder是DefogAI团队推出的一款基于StarCoder微调的、针对SQL优化的大模型。DefogAI是2023年刚成立的一家创业企业,其目标是通过大语言模型提供一个平台,让用户可以使用自然语言对数据进行提问。
StarCoder的参数是150亿,尽管只有GPT-3的十分之一大小,但是在SQL生成方面比GPT-3好很多(这样对比可能不太公平~)
StarCoder的主要特点如下:
SQL生成的性能强大,效果很好:在 SQL 生成任务的评估框架上,SQLCoder(64.6%)的性能略微超过了 gpt-3.5-turbo(60.6%)。训练数据使用的是高质量人工筛选数据:Defog 在两个周期内对10,537个人工策划的问题进行了训练,这些问题基于10种不同的模式。使用方法简单,与transformer集成良好:用户可以通过 transformers 库使用 SQLCoder,只需从 HuggingFace 仓库下载模型权重即可。此外,还提供了在线演示和 Colab 中的使用方法。硬件要求要求不高:SQLCoder 已在 A100 40GB GPU 上进行了测试,并支持 bfloat16 权重。用户还可以在拥有20GB或更多内存的消费级 GPU 上加载模型的8位量化版本,例如 RTX 4090、RTX 3090 和 Apple M2 系列芯片。SQLCoder的训练细节:

SQLCoder的具体测试结果
官方提供了一个SQL生成任务的评测,该评测包含了175个SQL生成任务(不在训练数据中),然后看各个模型生成SQL的准确率(在新的schemas上执行),结果如下:

从这个对比可以看到,StarCoder的准确率超过了gpt-3.5-turbo,仅仅弱于GPT-4,但是比开源的模型都强大。顺便说一句,GPT-4真是恐怖玩意。
按照不同的SQL类别测试如下:

SQLCoder实际测试结果
官方给了一个演示地址,可以测试实际SQLCoder的能力,只需要给出schema的CREATE语句即可用自然语言提问。
我们给了我们DataLearner大模型的列表建表语句(https://www.datalearner.com/ai-models/pretrained-models ),然后提了一个简单的查询,效果还不错的。

大家也可以自己去测试,不过,目前速度一般。
SQLCoder相关资源
SQLCoder的GitHub地址、预训练模型下载地址、在线演示地址等参考SQLCoder的DataLearner模型信息卡:https://www.datalearner.com/ai-models/pretrained-models/SQLCoder

悟空CRM产品更多介绍:www.5kcrm.com

相关内容

CRM客户服务管理系统怎么高效使用?使用方法与技巧

高效使用CRM(客户关系管理)客户服务管理系统对于提供卓越的客户服务、提高客户满意度和维护客户关系至关重要。以下是一些使用方法和技巧,帮助您高效使用CRM客户服务管理系统:完整记录客户信息:将客户的详细信息准确地录入CRM客户服务管理系统中,包括姓名、联系方式、历史服务记录等。定期更新客户信息以确保数据的准确性。快速查找客户信息:利用CRM系统的搜索和筛选功能快速查找客户信息,以提供迅速的响应和支
相关文章

微信客户管理系统是什么?它如何结合微信平台进行客户关系管理?

导言:随着社交媒体的发展,微信作为国内最常用的社交软件之一,已经成为互联网营销和客户关系管理的重要渠道。微信客户管理系统是企业在微信平台上使用的一种客户关系管理系统,它集成了微信平台的特点和功能来帮助企业管理客户,并和客户进行有效的沟通交流。下面本文就微信客户管理系统的定义、特点和操作方法等进行详细介绍:一、微信客户管理系统的定义:微信客户管理系统是一款在线的、基于微信平台的客户关系管理软件平台,
相关文章

销售CRM客户管理系统怎么高效使用?使用方法与技巧

高效使用销售CRM(客户关系管理)客户管理系统对于提高销售效率、加强客户关系和增加销售机会至关重要。以下是一些使用方法和技巧,帮助您高效使用销售CRM客户管理系统:完整记录客户信息:将客户的详细信息准确地录入CRM系统中,包括姓名、联系方式、公司、职位、购买历史等。定期更新客户信息以确保数据的准确性和完整性。分类和分段客户:利用CRM系统将客户分为不同的类别或段,如潜在客户、现有客户、高价值客户等
相关文章

客户销售CRM系统用途有哪些?使用方法与技巧

客户销售CRM系统(Customer Relationship Management)是一种强大的工具,用于管理客户关系和提高销售效率。以下是一些客户销售CRM系统的主要用途,以及使用方法和技巧:主要用途:客户管理: CRM系统用于记录和管理客户信息,包括联系信息、交互历史、购买历史等。这使销售团队能够更好地了解客户,提供更个性化的服务。销售机会管理: CRM系统帮助销售团队跟踪销售机会的生命周期
相关文章

CRM销售管理系统用途有哪些?使用方法与技巧

CRM(客户关系管理)销售管理系统是一种用于管理客户关系和提高销售效率的工具。以下是CRM销售管理系统的主要用途,以及使用方法和技巧:主要用途:客户信息管理: CRM销售管理系统用于记录和管理客户信息,包括联系信息、公司信息、购买历史等。这有助于销售团队更好地了解客户,提供更个性化的服务。销售机会管理: CRM系统帮助销售团队跟踪和管理销售机会的生命周期,从潜在客户到交易关闭。这有助于提高销售预测
相关文章

CRM后台管理系统怎么高效使用?使用方法与技巧

高效使用CRM(客户关系管理)后台管理系统是确保客户信息管理和销售团队协作顺畅的关键。以下是一些使用方法和技巧:完整记录客户信息:将客户的详细信息(如姓名、联系方式、公司、职位等)准确地录入CRM后台管理系统中。定期更新客户信息以确保数据的准确性。分类和分段客户:利用CRM系统将客户分为不同的类别或段,例如潜在客户、现有客户、高价值客户等。根据不同类别的客户需求和兴趣制定个性化的沟通和营销策略。记
相关文章

CRM客户管理系统软件怎么高效使用?使用方法与技巧

要高效使用CRM(客户关系管理)客户管理系统软件,需要以下使用方法和技巧:完整记录客户信息:将客户的详细信息(如姓名、联系方式、公司、职位等)准确地录入CRM系统中。定期更新客户信息以确保数据的准确性。分类和分段客户:利用CRM系统将客户分为不同的类别或段,例如潜在客户、现有客户、高价值客户等。根据不同类别的客户需求和兴趣制定个性化的沟通和营销策略。记录互动和活动:记录所有与客户的互动,包括电话、
相关文章

客户关系管理系统怎么高效使用?使用方法

高效使用客户关系管理(CRM)系统是关键,因为它可以帮助您更好地管理客户信息、提高客户满意度、加强客户互动并促进业务增长。以下是一些高效使用CRM系统的方法:完整记录客户信息:将客户的详细信息(例如姓名、联系方式、公司信息、职位等)完整地录入CRM系统中。定期更新客户信息以确保数据的准确性。分类与分段客户:利用CRM系统将客户分为不同的类别或段,如潜在客户、现有客户、高价值客户等。根据不同类别的客
相关文章

CRM销售系统怎么高效使用?使用方法

高效使用CRM(客户关系管理)销售系统可以帮助企业更好地管理客户关系、提高销售效率和增加销售机会。以下是一些使用CRM销售系统的方法:完整记录客户信息:将客户的基本信息、联系方式、购买历史、互动记录等详细信息完整录入CRM系统中。鼓励销售团队及时更新客户信息,确保数据的准确性和完整性。跟进和提醒功能:利用CRM系统的提醒功能,安排和跟进客户互动、电话、电子邮件和会议。设置提醒以确保您不会错过关键的
相关文章

客户信息管理系统怎么高效使用?使用方法

客户信息管理系统是一种有助于企业有效管理客户信息和互动的工具。以下是高效使用客户信息管理系统的一些方法:数据录入与更新:将客户信息准确地录入系统中,包括姓名、联系方式、公司名称、地址等重要信息。定期更新客户信息,确保系统中的数据保持最新。分类与分段:将客户信息按照不同的标准进行分类和分段,如潜在客户、现有客户、高价值客户等。制定客户分析策略,根据不同分段的需求开展针对性的市场活动。沟通记录:记录所
相关文章
最新文章

CRM客户服务管理系统怎么高效使用?使用方法与技巧

高效使用CRM(客户关系管理)客户服务管理系统对于提供卓越的客户服务、提高客户满意度和维护客户关系至关重要。以下是一些使用方法和技巧,帮助您高效使用CRM客户服务管理系统:完整记录客户信息:将客户的详细信息准确地录入CRM客户服务管理系统中,包括姓名、联系方式、历史服务记录等。定期更新客户信息以确保数据的准确性。快速查找客户信息:利用CRM系统的搜索和筛选功能快速查找客户信息,以提供迅速的响应和支
最新文章

销售CRM客户管理系统怎么高效使用?使用方法与技巧

高效使用销售CRM(客户关系管理)客户管理系统对于提高销售效率、加强客户关系和增加销售机会至关重要。以下是一些使用方法和技巧,帮助您高效使用销售CRM客户管理系统:完整记录客户信息:将客户的详细信息准确地录入CRM系统中,包括姓名、联系方式、公司、职位、购买历史等。定期更新客户信息以确保数据的准确性和完整性。分类和分段客户:利用CRM系统将客户分为不同的类别或段,如潜在客户、现有客户、高价值客户等
最新文章

客户销售CRM系统用途有哪些?使用方法与技巧

客户销售CRM系统(Customer Relationship Management)是一种强大的工具,用于管理客户关系和提高销售效率。以下是一些客户销售CRM系统的主要用途,以及使用方法和技巧:主要用途:客户管理: CRM系统用于记录和管理客户信息,包括联系信息、交互历史、购买历史等。这使销售团队能够更好地了解客户,提供更个性化的服务。销售机会管理: CRM系统帮助销售团队跟踪销售机会的生命周期
最新文章

快速注册,立即使用

仅需一分钟,立即注册悟空云。悟空CRM免费试用。
客户端下载