cuda、cudann、conda安装教程
输入以下命令,查看 GPU 支持的最高 CUDA 版本。
nvidia-smi
cuda安装(cudatoolkit)
前往 Nvidia 的 CUDA 官网:CUDA Toolkit Archive | NVIDIA Developer
CUDA Toolkit 11.8 Downloads | NVIDIA Developer
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run
接下来配置环境变量,直接在 Linux 命令行输入以下命令:
sudo vim ~/.bashrc
在文件末尾添加 (这里笔者假设你已经熟悉 Linux 下 Vim 文本编辑器的使用,不熟悉的强烈推荐去学习一下) :
export PATH=/usr/local/cuda-11.8/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda-11.8
更新系统环境:
source ~/.bashrc
sudo ldconfig
验证 CUDA 是否安装成功,输入以下命令:
nvcc -V
cudnn安装
linux
CUDA Toolkit Archive | NVIDIA Developer
下载下来后扔到服务器上:
cudnn-linux-x86_64-8.4.1.50_cuda10.2-archive.tar.xz
注意他是 xz 不是 gz 所以解压就是:
tar -xf cudnn-linux-x86_64-8.4.1.50_cuda10.2-archive.tar.xz
之前,是将 cudnn 的文件扔到 cuda 的路径就OK了,然而事实上,不一定放到cuda的路径,只要添加到 LD_LIBRARY_PATH 即可
解压之后,有目录cudnn-linux-x86_64-8.4.1.50_cuda10.2-archive,其下有 include 和 lib
将该路径添加到 LD_LIBRARY_PATH,给这个路径起一个名字:
放到配置文件里:
echo "export CUDNN_DIR=$(pwd)" >> /etc/profile
echo "export LD_LIBRARY_PATH=$CUDNN_DIR/lib:$LD_LIBRARY_PATH" >> /etc/profile
之后刷新一下环境变量:
source /etc/profile
刷新完看看是否正确添加:
echo $CUDNN_DIR
/root/cudnn-linux-x86_64-8.4.1.50_cuda10.2-archive
返回这个就OK
再看看 LD_LIBRARY_PATH 对不对
echo $LD_LIBRARY_PATH
torch安装
pip install torchaudio torch==2.0.0+cu118 torchvision ninja --force-reinstall --extra-index-url https://download.pytorch.org/whl/cu118
根据自己电脑和系统在网页上选择适配自己的选项。
- 第一行是选择torch是否稳定版本,默认稳定版本。
- 第二行是选择自己的系统,有linux,mac,windows。
- 第三行是在什么环境安装:有anacoda里面安装, cmd里面pip安装,在libtorch安装,或者源码安装。
- 第四行是语言选择:提供了python和c++/java
- 第五行是否选择用cuda gpu版本的,如果是就要去看自己cuda版本(自行谷歌,百度),我这里选择none,不用gpu,这样就是cpu版本的torch
- 第六行是安装的命令直接复制即可,到选择相应的环境安装,用anaconda或者pip这两个环境居多。
还有一个要特别说明,一定要用64位的环境,不论是python IDE或者Anaconda都要安装64位的,否则你尝试网上各种方法都没用。(博主含泪的经验,花了大量时间,网上查遍方法,结果发现是位数问题,直接卸载了32位的anaconda,装了64位发现成功了),至于位数怎么看,如果安装的是系统python,直接在cmd命令里面输入python,前提是添加了系统环境变量给python才行。如下图我就是开始安装的32位,尝试了很多方法都失败。ana从打开始也是32位的。
bitsandbytes安装
window
魔改bitsandbytes库让他支持windows。
python -m pip install bitsandbytes --prefer-binary --extra-index-url=https://jllllll.github.io/bitsandbytes-windows-webui
安装window版本的bitsandbytes
或者
pip uninstall bitsandbytes
pip install bitsandbytes-windows
另一种选择https://github.com/acpopescu/bitsandbytes/releases/tag/v0.38.0-win0
linux
GitHub - TimDettmers/bitsandbytes: 8-bit CUDA functions for PyTorch
1.pip安装
pip install bitsandbytes
2.本地编译,选择自己的cuda版本
git clone https://github.com/timdettmers/bitsandbytes.git
cd bitsandbytes
# CUDA_VERSIONS in {110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 120}
# make argument in {cuda110, cuda11x, cuda12x}
# if you do not know what CUDA you have, try looking at the output of: python -m bitsandbytes
CUDA_VERSION=117 make cuda11x
python setup.py install
将 Int8 推理与 HuggingFace 转换器结合使用
from transformers import AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained(
'decapoda-research/llama-7b-hf,
device_map='auto',
load_in_8bit=True,
max_memory=f'{int(torch.cuda.mem_get_info()[0]/1024**3)-2}GB')
int4
from transformers import AutoModelForCausalLM, AutoTokenizer
from transformers.generation import GenerationConfig
from transformers import AutoModelForCausalLM, BitsAndBytesConfig
# quantization configuration for NF4 (4 bits)
quantization_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_quant_type='nf4',
bnb_4bit_compute_dtype=torch.bfloat16
)
。。。。。。
model = AutoModelForCausalLM.from_pretrained(
"Qwen/Qwen-7B-Chat",
quantization_config=quantization_config,
device_map="auto",
trust_remote_code=True
).eval()
int4效果,12G显卡可以带动
from transformers import AutoModelForCausalLM, BitsAndBytesConfig, AutoTokenizer
# quantization configuration for NF4 (4 bits)
quantization_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_quant_type='nf4',
bnb_4bit_compute_dtype=torch.bfloat16
)
# quantization configuration for Int8 (8 bits)
# quantization_config = BitsAndBytesConfig(load_in_8bit=True)
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen-7B-Chat", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
"Qwen/Qwen-7B-Chat",
device_map="cuda:0",
quantization_config=quantization_config,
trust_remote_code=True,
).eval()
response, history = model.chat(tokenizer, "你好", history=None)
print(response)
response, history = model.chat(tokenizer, "给我讲一个年轻人奋斗创业最终取得成功的故事。", history=history)
print(response)
你好!很高兴为你提供帮助。
这是一个关于一个年轻人奋斗创业最终取得成功的故事。
这个年轻人叫做李明,他来自一个普通的家庭。他从小就对商业感兴趣,梦想着有一天能够成为一名成功的企业家。然而,他的家庭条件并不富裕,他需要通过自己的努力来实现自己的梦想。
李明在大学期间就开始创业,他成立了一家电子商务公司。一开始,公司的发展并不顺利,面临着很多困难和挑战。但是,李明并没有放弃,他坚定地相信自己的梦想,并且不断地努力工作。
他不断地学习和探索,寻找新的商机和创意。他也不断地与人交流和合作,寻求帮助和支持。最终,他的公司开始逐渐发展壮大,获得了越来越多的客户和投资者。
经过几年的努力,李明的公司已经成为了一家成功的电子商务企业。他的创业经历也激励了很多人,让他们相信只要努力奋斗,就能够实现自己的梦想。
这个故事告诉我们,创业并不是一件容易的事情,需要付出大量的努力和时间。但是,只要我们相信自己,不断努力工作,就一定能够取得成功。
pyopenjtalk 安装
ModuleNotFoundError: No module named 'pyopenjtalk'
pip install pyopenjtalk --no-build-isolation
其他量化方式
model = model.quantize(4).cuda()
git-lfs安装
一,git-lfs简介
git-lfs是一种GIT扩展,通常用于大型文件进行版本控制和管理,LFS全称为Large File Storage,它允许Git用户存储和管理大型二进制文件,而不会将其直接存储在Git仓库中,而是将其存储在外部的对象存储中。通过使用 git-lfs,用户可以避免将大型二进制文件存储在Git仓库中,从而提高Git仓库的性能和可维护性。
使用 git-lfs 需要先安装该扩展,然后在Git仓库中配置相应的LFS追踪规则,以指定哪些文件应该使用LFS进行管理。一旦配置完成,Git用户就可以像管理其他代码文件一样管理大型二进制文件。在执行Git操作时, git-lfs会自动处理LFS追踪的大型二进制文件,从而确保这些文件可以被正确地上传、下载和版本控制。
二,安装
apt-get update # 更新安装包列表
apt-get install git # 安装git
apt-get install git-lfs # 安装git-lfs
git lfs install # 初始化
安装NVIDIA显卡驱动
Ubuntu安装NVIDIA显卡驱动(新手教程)-CSDN博客
一次必搞定Ubuntu上安装nvidia驱动教程--nvidia-smi_ubuntu nvidia-smi-CSDN博客
安装Docker
如何在 Ubuntu 20.04 上安装和使用 Docker - 知乎
安装更新的nodejs
ubuntu 20.04上安装更新的nodejs_ubuntu20 nodejs-CSDN博客
SSH安装
1. 更新源列表
打开"终端窗口",输入"sudo apt-get update"-->回车-->"输入当前登录用户的管理员密码"-->回车,就可以了。
2. 安装openssh-server
在终端中输入: sudo apt-get install openssh-server -y
3. 查看 查看ssh服务是否启动
打开"终端窗口",输入"sudo ps -e |grep ssh"-->回车-->有sshd,说明ssh服务已经启动,如果没有启动,输入"sudo service ssh start"-->回车-->ssh服务就会启动。
安装ssh服务并开启root用户ssh权限。
1.输入命令"sudo passwd root"
2.输入命令"sudo apt -y install openssh-server"
输入当前用户密码,等待完成openssh-server安装。
3.安装完毕,运行命令"sudo vi /etc/ssh/sshd_config"
4.在行"#PermitRootLogin prohibit-password"后
添加行"PermitRootLogin yes"并保存。
5.输入命令"sudo service ssh start"启动服务
输入命令"sudo service ssh status"查看服务运行状态
"active(running)"说明服务正常。
6.在另一台计算机运行ssh root@ubuntu ip地址
登陆成功。
# 开机自动启动ssh命令
sudo systemctl enable ssh
# 关闭ssh开机自动启动命令
sudo systemctl disable ssh
# 单次开启ssh
sudo systemctl start ssh
# 单次关闭ssh
sudo systemctl stop ssh
# 设置好后重启系统
reboot
#查看ssh是否启动,看到Active: active (running)即表示成功
sudo systemctl status ssh
参考资料
GitHub - Keith-Hon/bitsandbytes-windows: 8-bit CUDA functions for PyTorch in Windows 10