【BUG】P-tuningv2微调ChatGLM2-6B时所踩的坑

0.前言

P-tuning v2的实验在网上一抓一大把,这里就说一下我在微调过程中遇到的有些bug,踩过的一些坑,在网上找了很久都没有一些好的解决方案,在这里记录一下。

1.下载预训练模型

在官方给出的教程中,并不需要预先将模型下载到本地,而是直接连接hugging face获取,但是!在国内因为限制问题,就会导致连接失败,于是需要将预训练模型预先下载到本地,放在ptuning目录下,比如

这里!我就踩到了第一个坑里,在大部分的教程中,一般会用

python 复制代码
git clone https://github.com/THUDM/ChatGLM2-6B.git

来下载预训练模型,但是!我又是等了好半天都没有下载下来。

所以,在这里倾情推荐智谱AI的下载连接:

chatglm2-6b-int4 · 模型库 (modelscope.cn)https://modelscope.cn/models/ZhipuAI/chatglm2-6b-int4/files 但是一定要用下面的这条指令下载到你的指定目录下

python 复制代码
pip install modelscope  # 安装modelscope
modelscope download --model ZhipuAI/chatglm2-6b-int4 --local_dir ./chatglm2-6b-int4 

2.torch.distributed.elastic.multiprocessing.errors.ChildFailedError

这个bug真的很恐怖,折磨了我三天,我在8月份微调的时候,相同的参数配置,并没有出现报错,结果10月份来,一直报错。看似是报错ChildFailedError,实际上你要看它上面那一部分的报错:

我们再对应到源码

这里的意思大概就是所用的load_dataset方法并没有"use_auth_token"这个参数 ,我大致查了一下,这个参数为True则使用公开数据集,为False则是使用私有数据集,我不知道是版本更新还是怎么的,我就直接删除了这个参数就好了。

相关推荐
燕双嘤1 分钟前
Bug:Nginx 转发末尾斜杠导致 404 问题分析
bug
TeleostNaCl3 分钟前
一种解决 Win10的微软输入法无法禁用 shift + 空格 切换半角/全角切换bug的方法
经验分享·微软·bug
阿_旭1 小时前
Python中3类目标检测方法详解:从原理到实践
python·目标检测
吴佳浩8 小时前
Python入门指南(五) - 为什么选择 FastAPI?
后端·python·fastapi
寰天柚子8 小时前
Java并发编程中的线程安全问题与解决方案全解析
java·开发语言·python
2503_928411569 小时前
项目中的一些问题(补充)
人工智能·python·tensorflow
superman超哥9 小时前
仓颉语言中锁的实现机制深度剖析与并发实践
c语言·开发语言·c++·python·仓颉
vv_Ⅸ9 小时前
打卡day42
python
Lvan的前端笔记9 小时前
python:深入理解 Python 的 `__name__ == “__main__“` 与双下划线(dunder)机制
开发语言·python
BB_CC_DD10 小时前
超简单搭建AI去水印和图像修复算法lama-cleaner二
人工智能·深度学习