2024年1月,在知乎课堂直播间中,阿里云-飞天实验室-技术负责人麒汀分享了阿里云百炼大模型服务平台中模型训练与调优的实践分享。在直播中分别从三个方面介绍了模型训练:
1.构建一站式全链路模型训练的背景和现状
2.大模型训练基本理念与方法
3.大模型训练全过程和badcase分享
下面我们通过观看下方视频进一步探索模型训练里面的奥秘吧👇~
常见问题
小编汇总了直播间中提到的问题及回答,请查看下方内容了解哦👇
1、有没有安全方向的垂直模型?
答:目前没有安全方向的垂直模型,您可以先加入钉钉群:65295003032,持续关注产品动态。
2、完形填空词的数据能作为训练题吗?
答:可以的,可以通过上传训练集时,指定好问题内容及答案,引导大模型学习。
3、目前阿里云百炼只能训练文字吗?图片可以训练吗?
答:目前比较侧重于文字训练,多模态的模型比较聚焦,可以持续关注。
4、通义千问模型能不能只做推理,不做训练?
答:可以的,目前推理和训练是单独的模块,可以只使用推理服务。
5、使用高阶模型微调,低阶模型做能力下沉,是想做蒸馏吗?
答:您的描述对应于知识蒸馏技术,该技术通过微调高阶模型获取强大知识,然后将其转移至低阶模型,实现模型压缩与性能优化,使得低阶模型在保持小巧、高效的同时,获得接近或超越高阶模型的性能。
6、所谓大模型参数是怎么存储的?
答:可以通过魔搭下载模型,会有模型结构的json,可以参考json内容。一般情况下用开源的Python组件,去解析组件,会有向量信息,可能理解会有点难度。但是可以了解存储过程。
7、有一个需要解答数学问题的应用,需要什么样的模型?
答:可以尝试使用千问模型,在不同领域中开源了不少模型,比如code指的是编程的方向,可以去了解下是否能解决你的问题。
8、代码生成任务可以用什么指标来评估模型效果?
答:最直观的方式是执行代码。可能需要写一下编程验证。
9、语料数据集的多样性怎么定义?
答:语料数据集的多样性是指其在语言特征、内容主题、文本类型、写作风格、语言变体、作者背景、时间跨度等多个维度上体现出的丰富程度和差异性,旨在真实反映语言的实际使用情况,提升NLP模型的泛化能力和对多元应用场景的适应性。
10、有没有办法增加输入tokens的长度?
答:一般是模型厂商去做,个人做的话会有难度。
11、个人使用大模型时,qwen-turbo和qwen-max应该怎么选?
答:qwen-turbo注重速度与资源效率,适合对响应速度和部署便捷性有较高要求的场景;qwen-max则聚焦顶级性能与全面知识,适用于对模型精度和处理复杂任务能力有严格要求的环境。其中qwen-turbo的费用要比qwen-max低。根据您的具体需求和条件权衡,选择最适合自己的模型版本。也可以查看模型介绍:https://help.aliyun.com/document_detail/2713153.html了解具体差异。
12、模型训练中的自定义模型怎么上传?
答:模型调优中的自定义模型是指您已训练完成的模型,想要二次训练时,所选择的自定义模型。若是您自己在本地训练的模型不支持上传。
13、大模型的领域知识是微调还是预训练学来的?
答:通常是预训练的,微调是小部分。
14、训练完的开源模型是否支持导出?
答:目前不支持。
模型训练操作指南
通过视频学习了模型调优的概念、使用说明与相关最佳实践案例的指引。那让我们登录阿里云百炼控制台,小试牛刀一下!
一般来讲,模型调优有四个主要过程,包括:
- 数据准备:构建适合训练的训练数据集,一般来是问答Pair的组合,基于不同任务有不同的呈现形态。
- 模型调优:通过选择合适的数据集,调整参数,训练特定的模型以提高模型效果,可通过训练过程/结果指标初步判断训练效果。
- 模型部署:训练好的模型需要部署后方可提供推理服务(评测、应用调用均需先部署模型)。
- 模型评测:构建合适的评测数据集,针对已经训练好的模型进行评测,通过评测系统进行打分或标注,验证模型调优的效果。
第一步:数据准备
- 找到模型工具,选择训练数据,点击上传数据集,下载模板(数据集模板/评测集模板)并再上传数据内容,点击完成。上传完成后,在列表中查看对应的数据,用于模型训练。
- 点击评测集选择上传数据集,按照提示传入数据,点击完成。上传的评测集支持查看、下载、删除操作。
第二步:模型调优
新增训练模型
点击【模型调优】模块,选择【训练新模型】按照提示进行创建。新增过程的专业名词可查看概念解释学习。
选择模型版本
目前支持预置模型和自定义模型,首次新增模型训练时无可选自定义模型。
如何选择模型tips:
微调训练模型可以支持企业自定义训练数据,完成模型的微调训练,微调训练将影响模型的效果,选择合适的数据将使得模型效果更加适配企业的业务需求。企业可以选择基于企业专属大模型的基线版本进行微调,也可以选择基于已微调的模型版本上进行进一步微调。
选择模型数据
点击【选择数据集】按照操作引导,跳转到【训练数据】页面上传数据内容,数据内容至少40条内容。支持xls、xlsl格式。需下载模板后进行上传。
注意:选择合适的训练数据进行微调训练,训练数据需要按照既定的格式, 包含 Prompt / Completion对, 详细格式请见格式参考:example.excel训练数据支持本地上传或选择训练集管理中的数据,此处上传的训练集将同时保存在训练集管理中。
混合训练
通用混合训练支持用户将自身训练数据与采样的千问基础模型通用多领域、多行业、多场景数据混合,进行训练,从而提高训练效果,避免基础模型能力的遗失,注意,选择混合训练后,混合采样的数据将计入训练Token数据量中,一并计费,平台支持选择多个基础训练数据进行混合训练。
示例:中文-对话 1.1倍 >> 自主训练数据:基础模型中文对话数据以1:1.1的比例混合训练
示例:中文-数学 0.5倍 >> 自主训练数据:基础模型中文数学数据以1:0.5的比例混合训练
超参配置
企业可以通过参数配置来影响模型调优的过程,从而影响模型调优的效果,不同的参数配置训练的结果不同,一般建议使用默认配置。
自定义参数名词解释参考概念解释。
开始训练
预览你的训练配置,准备开始训练,开始训练将进入队列,可在模型管理列表刷新状态,同时,可查看训练过程中的相关指标,训练结束后将通过推送通知。
重要
模型调优将产生训练费用,训练价格 0.1元/千tokens ,点击查看产品计费。
计算公式:
计费token数= 训练集token数 * 循环次数。
模型调优开始后,就会产生费用(训练失败除外)。
模型列表
当正在训练中时,可以操作查看、终止训练。若训练完成后,可操作删除训练任务。
查看:可以查看正在训练中的模型信息;也可以在页面中点击【开始部署】 Traning loss、Validation Loss、Validation Token Accuracy 的名词解释请滑到下方段落查看。可以点击终止训练和刷新训练进展。
终止训练:将停止训练任务。状态为终止训练。
删除:点击删除后该模型将不会存在;谨慎操作。
模型部署:点击模型部署后,点击开始部署,模型部署内容请访问模型部署进行查看。
注意:部署模型将产生模型部署费用,部署价格产品计费。模型开始部署后,就会产生费用(部署失败除外)。
第三步:模型部署
注意:部署模型将产生模型部署费用,部署价格点击查看产品计费。模型部署成功后,系统将开始计费,手动下线后模型将不再计费(部署失败除外),不同状态下计费逻辑请参考文章最后的表格。
路径:模型中心-模型部署-部署新模型
点击【部署新模型】后--选择合适的模型进行部署
- 自定义模型:由用户自己进行SFT训练得到的模型,部署后可提供模型服务,首次部署没有可选自定义模型。
- 预置模型:未经训练,系统提供的预置基础大模型,直接部署基础模型提供服务。
点击【下一步】选择对应的资源配置
- 包月资源:选择已购买的包月预付费资源组,不同的模型所需要的资源不同,选择模型后,系统将自动筛选需要的资源类型,预付费资源按月售卖,性价比更高
- 按量付费:选择后付费的模式,即刻完成部署,系统将在部署成功后开始计费,付费模式更加动态,无到期时间,随时上下线。
最后点击【开始部署】等待状态更新为部署成功。
系统将弹窗告知部署所需的费用,点击确认后,系统将开始部署,部署成功后开始收费
部署完成后,模型运行态将变更为运行中,可以操作查看、扩缩容、下线。部署失败支持重新部署,各操作说明如下:
- 查看:查看模型部署的详情,包括资源、模型类型等。
- 重新部署:部署失败后,可点击重新部署重启部署任务,完成部署任务。
- 扩缩容:变配资源配置,可增加资源或减少资源,变更成功后,系统将按变更后实际使用的资源计费。
- 下线:可将部署中的任务下线,下线后该任务将会自动删除。
- 删除:部署失败、欠费下线后,可删除模型,删除后不再计费。
状态 |
操作 |
计费情况 |
部署中 |
查看 |
此状态不计费 |
运行中 |
查看、扩缩容、下线 |
此状态持续计费,点击下线后部署任务消失,停止计费 |
欠费停服 |
查看、删除 |
此状态不计费,欠费状态不会持续计费,但充值后,模型将恢复服务,自动恢复后将开始计费,点击删除后部署任务消失,不再计费 |
欠费恢复中 |
查看 |
此状态不计费,表示账户已充值,系统自动恢复服务中,服务恢复后,状态变换为运行中将恢复计费 |
部署失败 |
查看、删除、重新部署 |
此状态不计费,重新部署成功后变为运行中状态将进行计费,点击删除后部署任务消失,不再计费 |
第四步:模型评测
通过模型评测,来检验训练出来的模型是否能够给出自己所期望的结果。
完成模型部署后,如需测试模型的效果,可在模型评测中进行评测,模型评测需要首先构建评测的数据集,构建方法类似于训练集的构建,数据格式同样是问答Pair对,对于Prompt而言往往是需要验证的问题,对于Completion而言往往是评测参考的答案,最终通过对比模型结果与参考答案,同时综合考虑模型结果的正确性,对模型结果进行打分或排序,得到模型真实效果。
模型评测有两种模式,解释如下:
评测方式 |
评测效果 |
单个评测 |
单个评测主要用来评测单一模型的效果,选择评测集后,平台将自动基于评测集中的Prompt预测模型结果,并且同时展示评测集中预置的评测结果作为参考,针对模型预测结果进行打分后,可判断模型效果。 |
对比评测 |
对比评测主要用来评测多个模型的效果,选择评测集后,平台将自动基于评测集中的Prompt预测每个模型的结果,并且同时展示评测集中预置的评测结果作为参考,对比评测支持针对每个参与评测的模型进行打分,同时支持模型排序,通过评测结果可判断不同模型之间的效果差异 注意,对于对比评测而言,进行对比的每个微调模型均需独立部署方可进行评测,针对基础模型的评测将计量token调用费用,详情请见产品价格详情。 |
一般训练或部署了单个模型的情况下,我们会进行单个评测,如果我们训练或部署了多个模型,希望对比不同模型的效果,则可选择对比评测模式进行评测。
操作示例
路径:模型工具--模型评测--创建评测任务。
选择评测方式,页面上方有不同评测方式介绍,按需选择,建议选择单个评测。
评测任务开始后,点击评测,可以自行对数据进行打标。
评测完成后可以点击下载查看评测结果。
模型评测会产生模型服务调用费用,每个被评测的模型均会进行计费,计费逻辑与模型推理服务一致,按照token量进行计费。
以上就是模型调优&部署并测评的全部内容啦~ 您在体验过程中是否有遇到什么问题需要我们解答?欢迎在评论区中留言探讨!