以前跑实验用的pytorch和transformers的版本都比较低,最近的论文放出的代码使用的两个软件的版本都已经很高了,为了减少修代码的麻烦,决定升级这两个软件的版本。废了一番周折。
1、anaconda创建新的环境,安装上述两个包之前,先安装python,python不要安装当前的最高版本(估计最高版本还不被pytorch 1.9.1支持),我选择的是安装python 3.7.10
conda install python=3.7.10
2、安装pytorch
完成1后就可以使用pip安装,从pytorch官网(Start Locally | PyTorch)查到安装命令:
pip3 install torch torchvision torchaudio
可以只安装 torch
3、安装 transformers
从transformers的官方文档(Installation — transformers 4.11.3 documentation)找到安装命令:
pip install transformers
注意:
(1)使用上述命令就可以安装当前包的最高版本,如果需要的就是当前最高版本,就不需要再指定版本号了。
(2)安装pytorch包的时候,无需指定cuda版本,pip3会自己检测
(3)如果选择pip安装pytorch,那么就也用pip安装transformers。如果一个用pip安装,一个用conda安装,在执行语句:
from transformers import BertConfig, BertModel
会出现错误:
ImportError: /lib64/libm.so.6: version `GLIBC_2.29' not found ...
这个问题不知道是为什么引起的,但是我注意到安装torch(通过pip安装)和transformers(通过conda安装)的时候,numpy分别被安装了一次,有可能是numpy引起的。我后来把transformers用conda卸载,然后重新用pip安装后,问题解决。