不能访问huggingface解决方法
如果是从 huggingface.co 下载模型,由于国内不能访问,所以建议先配置一下环境变量,
通过访问国内镜像站点 https://hf-mirror.com来下载模型。
(1)Linux系统设置环境变量:
export HF_ENDPOINT=https://hf-mirror.com
示例源码很多需要连接huggingface,连接不上的话,请读者使用下面解决方案。
连接不上huggingface的解决方案
(1)对于部分需要学习使用bert的内容,可以参考如下链接:
GitHub - 649453932/Bert-Chinese-Text-Classification-Pytorch: 使用Bert,ERNIE,进行中文文本分类
(2)而对于其他部分,可以参考将huggingface替代使用modelscope完成,一个示例代码如下:
from modelscope import AutoTokenizer, AutoModel, snapshot_download
model_dir = "../chatglm3-6b" #直接提供chatGLM3的存储地址
tokenizer = AutoTokenizer.from_pretrained(model_dir, trust_remote_code=True)
model = AutoModel.from_pretrained(model_dir, trust_remote_code=True).half().cuda()
model = model.eval()
response, history = model.chat(tokenizer, "小孩牙龈肿痛服用什么药", history=[])
print("普通ChatGLM询问结果:")
print(response)
这里就是将huggingface改成了modelscope,其他在使用上没有变化。
解决GPU模式不工作的一种方法
(1)PyTorch GPU 2.0.1版本安装,请读者学习本书时,直接使用官网地址https://pytorch.org/get-started/previous-versions/ 给出的conda命令安装。
命令如下:
# CUDA 11.8
conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.8 -c pytorch -c nvidia
安装方法为,在Windows菜单上,点击打开Anaconda Prompt(Miniconda3) 窗口:
线管软件下载安装很快,安装完成后,使用conda list命令查看最终结果,可以看到如下安装包,注意查看一下pytorch-cuda那一行的信息:
直接采用(1)方法安装就解决问题了,不会出现(2)的问题。
(2)有一种情况:按官网给的pip命令行安装,但是GPU模式运行不起来。这是因为不能直接下载该版本 cuda 对应的 PyTorch,需要到官网上手动下载 torch 以及对应的 torchvision、torchaudio。
对于 torch 的下载网址为: https://download.pytorch.org/whl/torch_stable.html。下载你本机的 python 版本对应的 torch、torchvision、torchaudio 版本到指定文件夹下,直接在该文件夹下打开 cmd,在命令行中执行命令pip install ***.whl安装torch、torchvision、torchaudio。
如此,可能解决GPU模式运行不起来的问题。
我的驱动用了cuda 11.8,建议读者都用这个cuda 11.8版本。
DNN版本下了这个:cudnn-windows-x86_64-8.9.4.25_cuda11-archive。
本书使用PyTorch 2.0.1版本,因此相应的安装包版本和执行命令如下
pip install torch-2.0.1+cu118-cp39-cp39-win_amd64.whl
pip install torchvision-0.15.2+cu118-cp39-cp39-win_amd64.whl
pip install torchaudio-2.0.2+cu118-cp39-cp39-win_amd64.whl
运行测试代码如下:
注意:代码打印出来的PyTorch版本号是2.0.1+cu118,不是2.0.1。
(3)nvcc --version和nvidia-smi命令查看cuda版本不一致的问题怎么解决。
原因可能是因为nvcc和nvidia-smi显示的版本信息来源不同。
nvcc是NVIDIA CUDA编译器,它显示的是CUDA Toolkit的版本号。而nvidia-smi是NVIDIA System Management Interface,它显示的是NVIDIA驱动程序的版本号。
因此,如果您安装了不同版本的CUDA Toolkit和NVIDIA驱动程序,可以按NVIDIA驱动程序的版本,重新下载安装CUDA Toolkit。
我的驱动和Toolkit的版本一致的,都是11.8。