【LLM】关于transformers模型‘init_empty_weights‘报错
在新版本的transformers中(例如我的版本是4.51.0),init_empty_weights已被移动到accelerate库中,而不是直接通过transformers提供,这是hugging face生态重构模块路径的结果。1.安装accelerate库。
·
关于transformers模型‘init_empty_weights‘报错
问题:报错
NameError: name ‘init_empty_weights’ is not defined
在新版本的transformers中(例如我的版本是4.51.0),init_empty_weights已被移动到accelerate库中,而不是直接通过transformers提供,这是hugging face生态重构模块路径的结果。
解决方案
1.安装accelerate库
init_empty_weights现在由accelerate库提供,需要先安装这个库:
pip install accelerate
2.修改导入路径
导入路径添加
from accelerate import init_empty_weights # 新路径
旧写法:
import torch
from transformers import GPTNeoForCausalLM, GPT2Tokenizer
model = GPTNeoForCausalLM.from_pretrained("EleutherAI/gpt-neo-125M")
新写法:
import torch
from accelerate import init_empty_weights
from transformers import GPTNeoForCausalLM, GPT2Tokenizer
model = GPTNeoForCausalLM.from_pretrained("EleutherAI/gpt-neo-125M")
新写法运行成功。
更多推荐
所有评论(0)