当前位置:   article > 正文

大模型微调之——MiniCPM-V Finetuning 问题与解决办法_using rtx 4000 series doesn't support faster commu

using rtx 4000 series doesn't support faster communication broadband via p2p

说明

  1. MiniCPM-VGithub主页地址:链接

  2. 本次微调是MiniCPM-Llama3-V 2.5 的 LoRA 微调,GitHub链接:MiniCPM-Llama3-V 2.5

  3. 模型下载地址:modelscope,提供的两种下载方式可以任选(SDK下载或Git下载),
    在这里插入图片描述
    在这里插入图片描述
    不过我使用这两种方法下载下来的模型文件好像有问题,一直在报模型文件的错,如果是这样的话可以尝试手动点击下载:在这里插入图片描述

  4. 微调机器是一台双卡4090服务器(CPU22核,16核会报错,暂时不清楚原因

问题一:Using RTX 4000 series doesn’t support faster communication broadband via P2P or IB.

在这里插入图片描述

NotImplementedError: Using RTX 4000 series doesn't support faster communication broadband via P2P or IB. Please set `NCCL_P2P_DISABLE="1"` and `NCCL_IB_DISABLE="1" or use `accelerate launch` which will do this automatically.
  • 1

解决办法:

当你在使用NVIDIA RTX 4000系列GPU进行分布式训练时,可能会遇到一些特定的硬件限制,如不支持通过P2P(点对点)或IB(InfiniBand)进行更快的通信。这种情况下,你可能会看到一个 NotImplementedError,提示你禁用这些特性。根据错误消息的建议,你可以通过设置环境变量来解决这个问题。

解决步骤

1.设置环境变量:
你需要在运行你的分布式训练脚本之前设置以下环境变量:

NCCL_P2P_DISABLE="1":这个设置禁用了NCCL库中的点对点通信功能。
NCCL_IB_DISABLE="1":这个设置禁用了使用InfiniBand作为通信后端。
在Linux环境中,你可以在命令行中设置这些环境变量,如下所示:

export NCCL_P2P_DISABLE=1
export NCCL_IB_DISABLE=1
  • 1
  • 2

然后,你可以继续运行你的分布式训练命令。

2.使用 accelerate launch:
如果你使用的是Hugging Face的 accelerate 库,它提供了一个更简单的方式来自动处理这些设置。你可以使用 accelerate launch 命令来启动你的训练脚本,它会自动配置这些环境变量。例如:

accelerate launch your_training_script.py
  • 1

这样,accelerate 会自动处理相关的环境变量设置,使你无需手动配置它们。

问题二:RuntimeErrorTensorBoardCallback requires tensorboard to be installed

在这里插入图片描述

RuntimeError: RuntimeErrorTensorBoardCallback requires tensorboard to be installed. Either update your PyTorch version or install tensorboardX.: 
TensorBoardCallback requires tensorboard to be installed. Either update your PyTorch version or install tensorboardX.
  • 1
  • 2

这个 RuntimeError 表示你的环境中缺少必要的 tensorboard 或 tensorboardX 库,这是用于支持 TensorBoardCallback 功能的。TensorBoardCallback 通常用于在训练过程中记录指标和可视化模型性能,它依赖于 TensorBoard 来展示这些数据。

解决方案

你有几个选项来解决这个问题:

1.安装 TensorBoard:
如果你使用的是较新版本的 PyTorch,通常只需要安装 tensorboard。你可以通过以下命令安装它:

pip install tensorboard
  • 1

这将安装 TensorBoard,它是 TensorFlow 的一部分,但也可以与 PyTorch 配合使用。

2.安装 tensorboardX:
如果你的 PyTorch 版本较旧,或者你出于某种原因需要使用 tensorboardX,你可以安装这个库,它是一个支持旧版本 PyTorch 的 TensorBoard 接口。安装命令如下:

pip install tensorboardX
  • 1

3.更新 PyTorch:
如果你的 PyTorch 版本过旧,可能不支持直接与最新的 TensorBoard 集成。更新 PyTorch 可能有助于解决兼容性问题。你可以使用以下命令来更新 PyTorch:

pip install --upgrade torch torchvision
  • 1

确保在更新库之前检查你的项目依赖,以避免兼容性问题。

备注

deepspeed版本

deepspeed版本最好是0.14.0

  1. 卸载当前版本的 DeepSpeed
pip uninstall deepspeed
  • 1
  1. 安装0.14.0版本的 DeepSpeed
pip install deepspeed==0.14.0
  • 1

finetune_lora.sh文件中参数设置说明

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/852025
推荐阅读
相关标签
  

闽ICP备14008679号