添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

ChatGPT本地化 | 如何在你的电脑上部署开源GPT-3语言模型 | ChatGLM

相关阅读

杂谈

之前的一期分享里,我们分享了 dalai ,但是dalai支持的 LLaMA Alpaca 对中文并不友好,因此,我最近又研究了一下清华大学的开源项目 ChatGLM

准备工作

安装CUDA

首先,你肯定是要有一个显卡的,我这里使用的Nvidia 3070的显卡,显存为 8GB

官网给的说明是 最低6GB显存 就可以跑,但是个人认为最佳显存应该是 13GB以上 ,可以接收更多的输入。

我们首先需要装好CUDA相关驱动,我使用的是Windows操作系统,这里是安装了以下软件

最终上面的驱动会用于Pytorch中。

检查CUDA是否成功安装

你可以通过终端的命令,查看自己是否安装完成

nvidia-smi

这里可以看到CUDA的版本号以及你的显存,我这里可以看到8192MiB就是8GB显存

nvcc --version

同样的这里也可以看到CUDA编译器版本号,也是11.8

安装Pytorch

安装Pytorch的时候,请一定要使用下面的命令

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

上面的命令中会指定我们下载 CUDA11.8 对应的pytorch,实际上目前最新的已经有了CUDA12.0,但Pytorch似乎目前并未支持,只支持了CUDA11.7和11.8。如果你需要自定义安装,可以在下面的链接中,选择对应的配置,使用相应的命令进行安装

pytorch.org/get-started

如果版本pytorch与CUDA不一致,可能会导致运行程序的时候出现类似下面的报错

raise AssertionError("Torch not compiled with CUDA enabled")
AssertionError: Torch not compiled with CUDA enabled


当然,这里也有一个小技巧。

你如果不确定自己CUDA是否安装、配置正确,你可以新建一个Python文件,譬如

pytorch.py

import torch
print(torch.__version__)
print(torch.version.cuda)

运行一下,就可以看到自己的相关版本号了,如果有None的情况,则代表没有配置正确

这里值得补充的是有的人可能很早之前使用pip3就安装过了pytorch,在使用新的命令安装的时候会提示 Requirement already satisfied

Requirement already satisfied: torch in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (2.0.0)
Requirement already satisfied: torchvision in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (0.15.1)
Requirement already satisfied: torchaudio in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (2.0.1+cu118)
Requirement already satisfied: sympy in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (from torch) (1.11.1)
Requirement already satisfied: filelock in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (from torch) (3.10.0)
Requirement already satisfied: networkx in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (from torch) (3.0)
Requirement already satisfied: jinja2 in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (from torch) (3.1.2)
Requirement already satisfied: typing-extensions in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (from torch) (4.5.0)
Requirement already satisfied: pillow!=8.3.*,>=5.3.0 in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (from torchvision) (9.4.0)
Requirement already satisfied: requests in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (from torchvision) (2.28.2)
Requirement already satisfied: numpy in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (from torchvision) (1.24.2)
Requirement already satisfied: MarkupSafe>=2.0 in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (from jinja2->torch) (2.1.2)
Requirement already satisfied: certifi>=2017.4.17 in c:\users\66396\pycharmprojects\chatglm-6b-main\lib\site-packages (from requests->torchvision) (2022.12.7)