数据处理支持用户使用多种模型算子,对模型调优所使用的训练集进行数据清洗和数据增强,从而获得更高质量的训练集。
本文档仅适用于中国大陆版(北京地域)。
如果您训练集中的数据不适合数据清洗与增强(如法律文件、医学记录、文学作品、方言汇总、用户评论、技术手册等),建议您直接跳过本文的阅读。
为什么做数据处理
在模型调优过程中,高质量的训练集将显著提升大模型的训练效果和预测能力。不过,目前绝大多数训练集的数据质量较低且数据量不足。因此,有必要先借助阿里云百炼的数据处理功能,对您的训练集进行数据清洗和数据增强。待获得足够的高质量训练数据后,再进行模型调优。
构建一个有效的SFT训练集通常需要1000+样本。
|
处理方式 |
适用场景 |
|
数据清洗 |
需要修正训练数据中存在的规范性、合规性、一致性以及重复等问题(阿里云百炼目前已支持特殊内容移除、敏感信息打码等十种清洗操作)。 特殊内容移除:识别并剔除训练数据中的URL、特殊字符等。
敏感信息打码:识别并脱敏训练数据中的敏感信息。
|
|
数据增强 |
需要增加训练数据的多样性和均衡性,或扩展数据的规模(增广数据)。 |
支持的训练集
数据处理支持SFT-文本生成训练集,暂不支持SFT-图片理解训练集和DPO-文本生成训练集。
SFT-文本生成训练集包含一轮或多轮对话数据,采用ChatML格式。SFT-ChatML格式示例.jsonl
创建数据流任务
阿里云百炼目前暂未提供可用的API进行数据处理。
本段落将指导您在控制台搭建一个自定义数据流,以说明数据处理过程。该数据流的功能是先对训练数据中的敏感信息进行敏感信息打码(数据清洗),随后增广数据(数据增强)。只需简单两步:
此处先清洗数据再进行增强的原因是:可以确保增强操作是在一个干净、高质量的数据集上进行的,从而保证模型调优的数据源是准确的。
如果您仅需对训练数据进行清洗或增强,可以直接使用阿里云百炼预置的数据流模板:访问数据管理页面,在数据流页签下单击。
步骤一:创建数据流
-
访问数据管理页面,在数据流页签下单击
-
在创建数据流对话框中,输入数据流名称和数据流描述,单击确定进入数据流画布(在单击右上角发布之前,数据流处于草稿状态)。
开始节点会预设一个
对话文本参数表示待处理的训练集(此参数无法自行更改)。单击左上角的
图标可退出画布,系统会自动保存您的数据流草稿,单击管理再次进入后可继续编辑。
-
将左侧数据清洗节点拖入画布,并为数据清洗节点开启敏感信息打码算子,其余算子关闭。
数据清洗节点会预设一个
dataSetCount参数表示该节点处理完成后生成的训练集大小(此参数无法自行更改)。
-
将开始节点连接到数据清洗节点。
-
将左侧数据增强节点拖入画布,并为数据增强节点配置对应参数。了解参数详情。
参数
对应配置
场景选择
数据增强-通用。
指令生成依赖样本数
须小于当前节点输入的数据量,否则保持默认即可。
过滤相似度阈值
保持默认即可。
生成样本数
保持默认即可。
Prompt配置
使用阿里云百炼提供的默认模板。
System Prompt: 请你仔细观察多个示例数据的输入和输出,按照你的理解,总结出相应规律,然后写出一个新的【问题】和【回答】。注意,新生成的【问题】和【回答】需要满足如下要求: 1. 生成的【问题】和【回答】不能与输入的【问题】和【回答】一致,但是需要保持格式相同。 2. 生成的【问题】不一定要局限于输入【问题】的话题或领域,生成的【回答】需要正确回答生成的【问题】。 3. 提供的【问题】和【回答】可能是多轮对话,生成的【问题】和【回答】也可以是多轮,但是需要保持格式相同。 4. 生成的【问题】和【回答】必须成对出现,而且【问题】需要在【回答】之前。 ${few_shot_examples} -
将数据清洗节点连接到数据增强节点,并将数据增强节点连接到结束节点。

-
单击右上角发布(数据流变为发布状态,如果再次编辑,数据流会回到草稿状态),至此本数据流搭建完成,单击页面左上角的
图标退出画布。关于搜索数据流:数据流列表页签的搜索框中输入数据流名称后,单击
图标查找数据流,支持模糊搜索。 -
接下来,请参考下方步骤二:创建数据流任务启动一个数据流任务,使用此数据流来处理您的训练集。
步骤二:创建数据流任务
-
访问数据管理页面,在数据流页签下单击。在对话框中选择目标数据流后,单击确定。如果列表中没有您已创建的数据流,可能是因为:
-
该数据流尚未发布。
您可以单击,在列表中找到您想要发布的数据流后,单击。
-
该数据流不属于当前业务空间。
-
-
输入任务名称,选择模型数据作为数据来源,并从列表中选择要处理的训练集。
若无可用训练集,请单击去管理前往模型数据上传一个训练集。具体操作,请参见训练集与评测集。
模型数据提供了训练集的版本管理能力,您的训练集将在清洗或增强后自动生成一个新版本。新版本独立保存,不会覆盖原训练集。
数据处理目前仅支持处理SFT-文本生成训练集,不支持ChatML以外格式。SFT-ChatML格式示例.jsonl
-
单击创建完成,数据流任务将自动开始执行。
执行需要一定时间,请您耐心等待,执行期间暂不支持手动终止。
-
单击
图标,刷新处理状态查看任务是否处理完成。任务所有可能的处理状态如下表所示。处理状态
说明
处理中
表示数据流任务在执行中。在请求高峰时段,数据流任务需要排队等待执行,期间无需您介入操作。
已完成
表示数据流任务已成功完成。单击目标数据流任务右侧的执行过程,查看处理结果。
处理失败
表示数据流任务执行失败。建议您提交工单咨询具体原因。
-
任务完成后,系统将为处理后的训练集生成一个新版本,请您在使用时注意区分版本。
管理数据流任务
本段落为您说明如何查看业务空间下的数据流任务列表,查找某个数据流任务,以及查看指定数据流任务的基本信息、配置、处理状态和处理结果。
访问数据管理页面,单击任务列表页签,在此页面您可以:
-
查看数据流任务列表:查看当前业务空间下的完整数据流任务列表及概况,包括每个数据流任务的处理状态和数据流向等信息。
-
查找数据流任务:搜索框中输入数据流任务名称后,单击
图标查找数据流,支持模糊搜索。 -
查看数据来源和数据流向:您的训练集将在清洗或增强后自动生成一个新版本。新版本独立保存,不会覆盖原训练集。如下图示例中,处理前训练集为V1版本,处理后的数据则存储为训练集的V2版本。
建议检查清洗后的训练集,以确保数据的完整性和真实性没有被破坏。

-
查看执行过程:单击操作列的执行过程,查看数据流任务的处理结果和耗时情况,包括每个处理节点的中间结果和耗时情况。

数据清洗节点支持显示每次经过算子后的输出训练集大小。以上图为例,敏感词过滤算子在敏感信息打码算子后执行,敏感词过滤算子过滤掉了1条数据。
-
删除数据流任务:单击操作列的删除。
任务删除后其对应执行过程将无法找回,请慎重操作。
节点说明
开始/结束节点
条件判断节点
数据清洗节点
数据增强节点
计费说明
当前为限时免费阶段,具体收费时间另行通知。
下一步
如果您对处理后的训练集感到满意,即可开始模型调优。



图标,




图标调整算子的执行顺序。数据清洗节点将根据您此处设置的顺序对训练数据依次执行不同的算子。
