Cones-V2 微调大模型部署踩坑指南

简介

最近了解到一个概念叫微调大模型的多概念训练,类似同时训练多个实体让大模型识别

目前了解到的开源项目有4种:

1.Dreambooth:这种是目前市面上教程最多的

2.Custom Diffusion:这款是Adobe的研究机构出的一个项目,但是我目前没有部署成功deepspeed框架和triton框架没安装成功

3.Cones:目前还没有深入了解

4.Cones-V2:Cones 2 使用简单而有效的表示来注册主题。每个科目所需的存储空间约为5 KB。此外,Cones 2 允许灵活组合各种主题,无需任何模型调整

踩坑记录

我这里部署的是Cones-V2,在这个过程中遇到的一些问题进行记录一下

1.框架安装的过程遇到的就是Pytorch和cuda的版本的问题,这个问题会导致accelerate config 配置完成后,启动训练时会使用cpu进行训练,无法开启GPU训练。确认GPU是否能正常使用可以使用accelerate env命令查看,正常的话会显示True,否则就显示False。

如果显示False怎么解决,可以到pytorch官方上下载更新对应的Pytorch和cuda的版本

命令:pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

2.MODEL_NAME这里填写模型的地址,这个地址如何本地化目前还不知道 ,要填写runwayml/stable-diffusion-v1-5,这个是huggingface.co/models上的文件,训练脚本开启后他会自动连到huggingface上下载。如果不知道MODEL_NAME要怎么填写可以查看huggingface上的Use in Diffusers代码中模型名字复制过来就可以用了

3.自动下载模型还会遇到一个连不上huggingface的问题,除了网络问题之外,还有可能就是你没有在命令行登陆huggingface的,可以使用huggingface的命令登陆一下

huggingface-cli login

4.accelerate config 选择精度的时候不管选择fp16还是bf16都会出现一个问题就是数据类型不匹配的问题,错误如下:

Input type (float) and bias type (struct c10::BFloat16) should be the same

Input type (float) and bias type (struct c10::Half) should be the same

本着先让项目能跑起来的原则,对train_cones2.py文件中的代码做了一些修改:

# weight_dtype = torch.float32 注释原来的这行代码
if accelerator.mixed_precision == "fp16":
    weight_dtype = torch.float16
elif accelerator.mixed_precision == "bf16":
    weight_dtype = torch.bfloat16
weight_dtype = torch.float #在这行添加这行代码

踩完上面这些坑基本上就能跑起来了,后面遇到其他问题还是陆续更新

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值