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

相关推荐
咕白m6252 小时前
用 Python 实现一键批量查找与替换 Excel 数据
后端·python
SelectDB19 小时前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python
荣码1 天前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
金銀銅鐵2 天前
[Python] 基于欧几里得算法,实现分数约分计算器
python·数学
Lyn_Li2 天前
Kaggle Top 5 | 198只股票、200条数据的金融预测——BattleFin高分方案从零复现
python·kaggle·比赛复盘·金融预测
Lihua奏2 天前
从单核到多核:CPU为什么不能再只靠提频变快
深度学习
拾年2752 天前
大模型的"聪明"从哪来?聊聊 AI 数据集的那些事儿
人工智能·深度学习·机器学习
小九九的爸爸2 天前
前端想要入门Agent开发,要具备哪些Python基础?
python·agent·ai编程
阿耶同学2 天前
手把手教你用 LangGraph 搭建三层嵌套 Agent 架构
python·程序员
花酒锄作田3 天前
Pydantic校验配置文件
python