SDU软院创新实训(五)

五、微调XrayGLM

1、XrayGLM微调脚本finetune_XrayGLM.sh

其中为了实现多模态数据的处理,对XrayGLM 进行微调

其中脚本文件如下图所示

根据 MODEL_TYPE 和 MODEL_ARGS 的设定。以下是脚本的主要功能: 设置了一些变量,比如 NUM_WORKERS、NUM_GPUS_PER_WORKER 和 MP_SIZE,用来配置训练环境。 定义了脚本路径、主目录路径和模型类型。 指定了模型参数,比如 max_source_length、max_target_length、lora_rank 和 pre_seq_len。 设置了训练环境的选项,比如 NCCL 调试和网络设置。 指定了主机文件的路径,这个文件包含了用于训练的可用主机的信息。 定义了训练和评估数据的路径。

用于启动训练过程。具体来说,这个命令执行了以下操作:使用 ${OPTIONS_NCCL} 和 ${OPTIONS_SAT} 变量,设置了一些训练环境的选项。使用 deepspeed 命令启动了一个训练任务,指定了 --master_port、--hostfile 以及要运行的 Python 脚本 finetune_XrayGLM.py。 ${gpt_options} 变量应该包含了一些 GPT 相关的选项或参数。确保${OPTIONS_NCCL}、${OPTIONS_SAT} 和 ${gpt_options} 这些变量在之前的脚本中已经被定义和赋值。这条命令的目的是将这些选项和参数传递给 deepspeed 和 Python 脚本,启动训练任务。

2、微调数据集分析

下面是我们用到的微调数据集和对应的回答文件。

3、XrayGLM微调文件finetune_XrayGLM.py

微调一个名为visualglm-6b的预训练模型

使用 FineTuneVisualGLMModel.from_pretrained()方法从预训练模型中加载模型和参数。用来加载特定类型的预训练模型并返回模型及其相关参数。 如果 CUDA 可用,将模型移动到 GPU 上进行加速。 获取与模型相关的 tokenizer,这是用于将输入文本转换为模型输入所需格式的工具。定义了一个数据整合器函数 data_collator,它用于处理训练数据,将数据整理成模型所需的格式。在这个函数中,对每个样本进行了转换,将文本输入和标签转换为 PyTorch 张量,然后将所有样本整合成一个字典并返回。 调用 training_main() 函数来开始训练过程,其中包括指定模型类 model_cls、前向传播函数 forward_step、创建数据集的函数 create_dataset_function,以及数据整合器函数 data_collator。 这段代码的主要目的是准备模型和数据,并启动训练过程。需要确保模型、数据和训练相关的函数和参数已经正确定义和设置。

进行微调

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值