源2.0全面适配百度PaddleNLP,大模型开发开箱即用

news2024/12/25 14:49:28

近日,源2.0开源大模型与百度PaddleNLP完成全面适配。用户通过PaddleNLP,可快速调用源2.0预训练大模型,使用源2.0在语义、数学、推理、代码、知识等方面的推理能力,也可以使用特定领域的数据集对源2.0 进行微调,训练出适合自身业务需求的大模型。

大语言模型的快速发展对训练和推理技术带来了更高的要求,企业在大模型开发过程往往面临多种难题:如何实现高效训练和推理,如何降低算力资源消耗,如何适配多种硬件……

PaddleNLP是百度基于飞桨框架打造的大语言模型套件,聚合业界优质预训练模型并提供开箱即用的开发体验,覆盖NLP多场景的模型库,搭配产业实践范例,提供极致的训练与推理性能,可满足灵活定制的开发需求。

源2.0系列基础大模型是首个全面开源的千亿参数模型,包括1026亿、518亿、21亿三种参数规模的模型,在对话问答、编程、逻辑推理等方面展示出了领先的能力。

此次适配标志源2.0大模型迁移到飞桨生态中,丰富了PaddleNLP的大模型库,方便用户在PaddleNLP内快速使用源2.0大模型的能力,并能使用特定领域的数据集做微调,利用相对较少的资源就能训练出更适合实际应用场景的大模型。PaddleNLP内置源2.0预训练-微调-推理全流程,支持大模型自动并行,提供高性能分布式训练与推理技术,同时无需修改即可适配多种硬件,从而给用户带来开箱即用的开发体验,实现高效训练和推理。

在微调阶段,利用飞桨框架独有FlashMask高性能变长注意力掩码计算结合PaddleNLP中Zero Padding零填充数据流优化技术,通过分组贪心的数据填充策略,可最大程度消除无效填充的比例。通过上述优化,相比LLaMA-Factory,PaddleNLP在SFT(Supervised Fine-Tuning,监督微调)环节性能提升120%,可以更快训练出适合客户应用场景的专属源2.0大模型。

目前,相关代码已提交至PaddleNLP开源项目,项目地址:https://github.com/PaddlePaddle/PaddleNLP/tree/develop/paddlenlp/transformers/yuan

基于PaddleNLP实现Yuan2.0大模型的步骤

Step 1 环境构建,安装飞桨框架的软硬件环境

Step 2 拉取源2.0权重

Step 3 测试

具体步骤请参考:https://github.com/PaddlePaddle/PaddleNLP/tree/develop/llm/config/yuan/README.md

使用PaddleNLP与源2.0的交互示例

用户在PaddleNLP平台上可以快速使用源2.0的推理能力,特别是使用源2.0进行张量并行推理时。在Torch平台上,源2.0使用transformers直接进行推理,是默认使用流水线并行推理的,计算流只有一条,因此推理性能相较于张量并行较慢。如果想使用张量并行,需要用户自己编写代码按照并行数量提前对权重进行转换, 而这又需要用户对模型和框架比较熟悉。但在PaddleNLP平台上,用户无需提前处理权重即可一键启动张量并行推理,上手门槛低。

以下是使用PaddleNLP与源2.0的交互示例。

1. 代码生成

问题:使用java实现冒泡排序算法

回答:冒泡排序是一种简单但效率较低的排序算法,它通过比较相邻的两 个元素,并交换它们的位置,从而逐步将最大的元素移动到列表的末尾。

下面是使用java实现冒泡排序算法的代码:

public static void bubbleSort( int[]arr){

int n=arr.length;

for(int i=0;i<n-1;i++){

for(int j=0;j<n-i-1;j++){

  if (arr[j]>arr[j+1]){

    int temp=arr[j];

    arr[j]=arr[j+1];

    arr[j+1]=temp;

  }

  }

}

}

在这个代码中,int[]arr是输入的整数数组,n是数组的长度。函数bubbleSort接受一个整数数组作为参数,并返回排序后的数组。

使用上述代码,你可以调用bubbleSort函数对数组[5,3,8, 2,1,6,4]进行排序。排序后的结果为[1,2,3,4,5,6,8]。

2. 文章生成

问题:写一篇题为AI带给了人类什么的文章。

回答:人工智能(AI)是一种技术,它可以让计算机像人类一样思考和行动。AI技术已经广泛应用于各个领域,包括医疗、金融、交通、教育、娱乐 等等。AI技术可以帮助我们解决许多问题,例如自动驾驶、语音识别、图像识别、自然语言处理等等。AI技术还可以帮助我们提高工作效率,例如自动化生产线、智能客服等等。AI技术还可以帮助我们更好地了解世界,例如通过AI技术可以更好地预测天气、分析市场趋势等等。总之,AI技术已经成为了我们生活中不可或缺的一部分。

3. 翻译

问题:将下面的文字翻译成中文:But with the passage of time, Hemingway has reached middle age,and his energy and creativity have also declined. In Hemingway's inner world, he was very upset, but he never lost hope and confidence.

回答:然而随着时间的推移,海明威已经步入中年,他的精力和创造力也不断下降,但他的内心却非常不安,但他从未失去希望和信心。

4。对话

问题:目前最先进的机器学习算法有哪些?

回答:当前最先进的机器学习算法包括以下几种:

  1. 卷积神经网络(Convolutional Neural Networks,CNN):CNN是近年来在图像处理领域中非常成功的一种算法, 可以用于图像分类、目标检测、图像分割等任务。
  2. 循环神经网络(Recurrent Neural Networks,RNN):RNN常常用于序列数据处理,例如自然语言处理、语音识别、机器翻译等任务。其中,长短时记忆网络(Long Short-Term Memory,LSTM)和门控循环单元(Gated Recurrent Unit,GRU)是两种常用的RNN变体。
  3. 自编码器(AutoEncoder,AE): AE是无监督学习中一种重要的算法,目标是学习一种压缩表示形式,能够把输入压缩到较 小的范围。目前应用于信号处理、图像压缩、数据压缩等领域。
  4. 对抗生成网络(Generative Adversarial Networks,GAN):GAN是由两个神经网络组成的对抗模型,一个生成器网络用于生成新的数据,另一个判别器网络用于判别生成的数据是否真实,引导生成器 学习生成新的数据。GAN广泛应用于图像生成、视频生成等场景中。
  5. 迁移学习(Transfer Learning):将过去在训练集上训练而得到的知识应用到新任务中,可以加速模型的 训练和提高效果。

总之,当前最先进的机器学习算法包括卷积神经网络(CNN)、循环神经网络(RNN)、自编码器(AE)、对抗生成网络(GAN)等。在不同的应用场景中,需要根据任务特点选择适合的算法,并进行实验和评估来验证其有效性。

使用PaddleNLP对源2.0进行训练

如果需要基于源2.0从头进行训练,可以参考预训练部分;如果需要基于源2.0大模型,对特定的功能进行“优化”,可以参考微调部分,使用特定领域的数据集做微调,利用相对较少的资源就能训练出更适合实际应用场景的大模型。

1.预训练

以源2.0-51B模型为例, 输出如下:

Loss曲线如下,可收敛。用户可以基于源2.0的模型结构,使用自己的数据集从头进行预训练,生成专属基础大模型。

2.微调

以源2.0-51B模型进行Lora微调为例,输出如下:

Loss曲线如下,可收敛。用户可使用特定数据集对源2.0进行微调,训练出更适合自身业务需求的大模型。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2186075.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++11_lambda

lambda表达式 在C98中&#xff0c;如果想要对一个数据集合中的元素进行排序&#xff0c;可以使用std::sort方法。比如说&#xff0c;我想在某宝买一件商品&#xff0c;我想买该商品价格最便宜的哪一个&#xff0c;这就需要对价格排升序&#xff1b;我如果想买性价比最高的&…

AAC-Fe³⁺水凝胶,兼具拉伸性与导电性,还有自修复和4D打印能力

大家好&#xff01;今天我们来了解一种用于可拉伸电子产品的创新材料——自修复和4D打印水凝胶——《Self‐Healable and 4D Printable Hydrogel for Stretchable Electronics》发表于《Advanced Science》。在科技发展中&#xff0c;可拉伸电子产品需求大增&#xff0c;但现有…

我尝试了LangGraph Studio的AI Agent功能

构建一个真正“智能”的Agent——一个能够理解语言、做出决策并进行有意义互动的Agent——并不像编写几行代码那么简单。 它需要对AI原理和软件工程有深刻的理解。 此外&#xff0c;传统的软件工具并不适合Agent的开发&#xff0c;无法满足其独特需求。 这也是像LangGraph S…

【数据分享】2001-2023年我国省市县镇四级的逐月平均气温数据(免费获取/Shp/Excel格式)

之前我们分享过1901-2023年1km分辨率逐月平均气温栅格数据&#xff0c;该数据来源于国家青藏高原科学数据中心。为方便大家使用&#xff0c;我们还基于上述平均气温栅格数据将数据处理为Shp和Excel格式的省市县三级逐月平均气温数据&#xff08;可查看之前的文章获悉详情&#…

10.2今日错题解析(软考)

目录 前言面向对象技术——设计模式的应用场景系统开发基础——概要设计与详细设计 前言 这是用来记录我备考软考设计师的错题的&#xff0c;今天知识点为设计模式的应用场景、概要设计与详细设计&#xff0c;大部分错题摘自希赛中的题目&#xff0c;但相关解析是原创&#xf…

银河麒麟V10如何配置外网yum源?

银河麒麟V10如何配置外网yum源&#xff1f; 一、常用的软件源地址二、配置yum源的步骤1. 打开终端2. 进入yum配置文件目录3. 编辑或创建.repo文件4. 配置软件源信息5. 保存并退出6. 更新软件包列表7. 验证软件源 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不…

三色标记算法

三色标记算法 GC---> 标记&#xff08;可达性算法&#xff09;---> 根据不同算法去处理回收 STW&#xff1a;GC时对程序暂停处理下垃圾。不暂停&#xff0c;就会一直制造垃圾&#xff0c;清理不干净。暂停就会阻塞期间请求&#xff0c;影响系统性能 三色标记&#xff…

媒介坊:软文自助发布平台,开启营销新篇章

在数字化时代&#xff0c;企业营销的方式日新月异&#xff0c;软文作为一种高效、低成本的营销手段&#xff0c;越来越受到企业的青睐。然而&#xff0c;如何在众多媒体中精准投放软文&#xff0c;实现品牌的有效传播&#xff0c;成为了众多企业关注的焦点。媒介坊软文自助发布…

闯关训练三:Git 基础知识

任务1: 破冰活动&#xff1a;自我介绍 点击Fork目标项目&#xff0c;创建一个新的Fork 获取仓库链接 在连接好开发机的vscode终端中逐行执行以下代码&#xff1a; git clone https://github.com/KelvinIII/Tutorial.git # 修改为自己frok的仓库 cd Tutorial/ git branch -a g…

在腾讯云上使用docker

第一次使用腾讯云&#xff0c;记录一下过程 因为我平时需求量不大&#xff0c;所以选择的是按需购买 腾讯云服务器购买链接 按照提示一步步往下走&#xff0c;创建实例 如果你不记得密码&#xff0c;那么在下面这幅图中可以重置(选择在线重置&#xff0c;对实例没影响) 因为…

C++——模拟实现vector

1.查看vector的源代码 2.模拟实现迭代器 #pragma oncenamespace jxy {//模板尽量不要分离编译template <class T>class vector{public:typedef T* iterator;//typedef会受到访问限定符的限制typedef const T* const_iterator;//const迭代器是指向的对象不能修改&#xf…

UE5学习笔记23-给角色添加血量,添加收到伤害的功能

零、一些游戏框架知识 1.UE5中包含游戏模式类(Game Mode)、游戏状态类(Game State)、玩家状态类(Player State)、玩家控制器类(Player Controller)、所有的可以被控制的实体或角色类(Pawn)、窗口类(HUD/Widget) Game Mode&#xff1a;存在在服务器上&#xff0c;当我们在客户端…

扣绩效工资,违反劳动法吗?

将工资拆分成绩效工资和岗位工资是很多公司管理员工的一种常见方式。 其中绩效工资跟KPI强挂钩&#xff0c;如果当月没有达到公司绩效标准&#xff0c;那么公司就会扣绩效工资。 那扣绩效工资违反劳动法吗&#xff1f;HR应该如何进行绩效薪酬考核和发放&#xff1f; 扣绩效工…

【网络安全】Cookie与ID未强绑定导致账户接管

未经许可,不得转载。 文章目录 前言正文前言 DigiLocker 是一项在线服务,旨在为公民提供一个安全的数字平台,用于存储和访问重要的文档,如 Aadhaar 卡、PAN 卡和成绩单等。DigiLocker 通过多因素身份验证(MFA)来保护用户账户安全,通常包括 6 位数的安全 PIN 和一次性密…

大论文记录

基础知识回顾 1.强化学习&#xff08;Agent、Environment) 在 RL 中&#xff0c;代理通过不断与环境交互、以试错的方式进行学习&#xff0c;在不确定性下做出顺序决策&#xff0c;并在探索&#xff08;新领域&#xff09;和开发&#xff08;使用从经验中学到的知识&#xff…

五、Java 注释

一、Java 注释 在计算机语言中&#xff0c;注释是计算机语言的一个重要组成部分&#xff0c;用于在源代码中解释代码的作用&#xff0c;可以增强程序的可读性&#xff0c;可维护性。Java 注释是一种在 Java 程序中用于提供代码功能说明的文本。注释不会被编译器包含在最终的可…

数据清洗第3篇章 - 数据异常处理

数据清洗是数据分析过程中至关重要的一步&#xff0c;它确保数据的准确性、一致性和完整性。这不仅有助于提高分析结果的可靠性和有效性&#xff0c;还能为算法建模决策提供高质量的数据基础。在进行数据分析和建模的过程中&#xff0c;大量的时间花在数据准备上&#xff1a;加…

WebRTC Connection Negotiate解决

最近有个项目 &#xff0c;部署之后一直显示&#xff0c;查了一些资料还是没有解决&#xff0c;无奈只有自己研究解决&#xff1f; 什么是内网穿透&#xff1f; 我们访问我们自己的官网产品页面&#xff0c;我们的服务器是一个单独的个体&#xff0c;有独立的公网ip&#xf…

【Canvas与徽章】金圈蓝底国庆75周年徽章

【成图】 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>金边黑盾75周年</title><style type"text/css"&g…

关于深度学习torch的环境配置问题

已经下好了torch在虚拟环境中&#xff0c;结果在ipynb文件中无法运行 后来在终端直接用python语句编译 发现没有问题 在编辑测试py文件 发现runcode有问题 原来是插件默认base环境 具体操作参考VS Code插件Code Runner使用python虚拟环境_coderunner怎么在虚拟环境中使用-CSD…