[THUDM/ChatGLM-6B][Help] <torch1.7.1版本没有 skip_init 方法 导致加载报错>

2024-06-12 836 views
1

在自己电脑上部署GPU版本,由于cuda 版本原因, 使用的pytorch为1.7.1,执行web_demo.py 报错, 执行这个modeling_chatglm.py时报错, 在这个版本下要怎么修改呢,能帮忙贴下代码吗,感谢 image

在torch为1.7.1 时 正常加载模型

python web-demo.py

Environment
- OS:window
- Python:3.9
- Transformers:
- PyTorch:1.7.1
- CUDA Support (`python -c "import torch; print(torch.cuda.is_available())"`) : true

回答

5

from torch.nn.utils import skip_init 换成

def skip_init(cls, *args, **kwargs):
    return cls(*args, **kwargs)
8

skip_init 方法只在PyTorth版本1.10.0以上才开始有的,如下步骤看看能不能解决你的问题: 1、检查当前你的PyTorth版本:python -c "import torch; print(torch.version)" 2、如果是1.10.1以下版本则没有skip_init 方法,需要升级PyTorth版本,升级步骤: (1)卸载旧的PyTorth版本:pip uninstall torch (2)安装新的PyTorth版本:pip install torch==1.10.1+cpu torchvision==0.11.2+cpu torchaudio==0.10.1 -f https://download.pytorch.org/whl/cpu/torch_stable.html 其中新版的PyTorth版本根据你的实际情况安装,官网PyTorth历史下载地址:https://pytorch.org/get-started/previous-versions/

5

from torch.nn.utils import skip_init 换成

def skip_init(cls, *args, **kwargs):
    return cls(*args, **kwargs)

还是有点问题,int-4的模型 image

8

skip_init 方法只在PyTorth版本1.10.0以上才开始有的,如下步骤看看能不能解决你的问题: 1、检查当前你的PyTorth版本:python -c "import torch; print(torch.version)" 2、如果是1.10.1以下版本则没有skip_init 方法,需要升级PyTorth版本,升级步骤: (1)卸载旧的PyTorth版本:pip uninstall torch (2)安装新的PyTorth版本:pip install torch==1.10.1+cpu torchvision==0.11.2+cpu torchaudio==0.10.1 -f https://download.pytorch.org/whl/cpu/torch_stable.html 其中新版的PyTorth版本根据你的实际情况安装,官网PyTorth历史下载地址:https://pytorch.org/get-started/previous-versions/

可我的cuad是11 看官方用的是1.7.1的 ,能升级吗? image

2

请问找到解决办法了吗,

8

同问,这里1.9.1 pytorch