【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则是使用私有数据集,我不知道是版本更新还是怎么的,我就直接删除了这个参数就好了。

相关推荐
code tsunami3 小时前
【无标题】
开发语言·python
CodeGL4 小时前
10、Python基础之进程和线程
开发语言·python
TechWayfarer5 小时前
PHP漏洞被利用,怎么揪出攻击IP?
开发语言·python·tcp/ip·网络安全·php
陈 洪 伟5 小时前
Transformer彻底剖析(9):归一化演进——BatchNorm、LayerNorm、RMSNorm、Post-LN / Pre-LN、DeepNorm
人工智能·深度学习·transformer
Kari115 小时前
AI 手写 OCR 在教育场景的工程化:为什么准确率从 82% 做到 99% 这么难
人工智能·深度学习·机器学习
数聚天成DeepSData5 小时前
两批标注数据合并前要核对什么
人工智能·深度学习·机器学习·数据集·deepsdata
2601_967980115 小时前
Python列表操作方法详解
python·数据类型·修改·列表操作·功能汇总
Patrick在香港6 小时前
台风在变少,来香港的没有
python·数据分析·香港·开放数据·热带气旋
qq_406981036 小时前
大白话rust系列09 函数调用两次有什么错?
开发语言·python·rust
布吉岛的石头7 小时前
Java 程序员第 50 阶段3:数据工程:预训练语料清洗与去重
java·开发语言·人工智能·深度学习·transformer