文章目录
- 前言
- 一、基于huggingface的DataCollatorForSeq2Seq方法解读
- 1、DataCollatorForSeq2Seq方法
- 2、batch最长序列填充
- 3、指定长度填充
- 二、构建大语言模型数据加工模块
- 1、数据读取
- 2、数据加工
- 1、数据格式
- 2、预训练(pretrain)数据加工
- 3、微调(sft)数据加工
- ①、sft数据加工代码
- ②、sft数据变换内容
- 3、数据dataloader方法
前言
本文使用huggingface方法来构建大模型数据加工方法!当然,这些方法也可以为其它大模型使用!。
一、基于huggingface的DataCollatorForSeq2Seq方法解读
1、DataCollatorForSeq2Seq方法
该方法是类似collan_fn函数,就是torch的dataloader对batch包装函数处理,而输入字典给input_ids与labels就好了,这个方法会自动给你添加attention_mask内容,而attention_mask若有pad填充值是0。这个也是huggingface提供内容,而我这里想介绍如何自动填充。
该方法是一个类,其示意源码如下:
class DataCollatorForSeq2Seq:tokenizer: