3、环境搭建:GPU驱动与CUDA安装,PyTorch环境配置,Ultralytics库安装与验证

说实话,环境搭建这一步,看着简单,其实坑最多。

我见过太多同学,代码写得挺溜,结果卡在环境上,一卡就是半天。我自己早期也吃过不少亏——有一次在服务器上装CUDA,版本没对上,折腾了整整一个下午。所以这一章,咱们把每一步都走稳了。

3.1 GPU驱动与CUDA安装

先说说最基础的东西。你要跑YOLO,尤其是用GPU加速,那NVIDIA驱动和CUDA就是绕不开的。

第一步:确认你的显卡

打开终端,输入:

nvidia-smi

如果能看到显卡信息,比如型号、驱动版本,那就说明驱动已经装好了。如果提示找不到命令,那就要去NVIDIA官网下载对应驱动。

注意: 驱动版本不是越新越好。我建议你查一下自己显卡的架构,比如RTX 30系列是Ampere架构,RTX 40系列是Ada Lovelace。驱动版本最好和CUDA版本匹配。

第二步:安装CUDA

我个人习惯用CUDA 11.8或12.1,这两个版本对PyTorch的支持最稳定。你可以去NVIDIA官网下载,或者用命令行安装:

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

安装完后,记得配置环境变量:

export PATH=/usr/local/cuda-11.8/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH
小技巧: 装完CUDA后,运行 nvcc --version 确认版本。如果显示的不是你装的版本,八成是环境变量没配好。

我曾经在项目里遇到过一个问题:明明装了CUDA 12.1,但PyTorch一直报错说找不到CUDA。后来发现是系统默认调用了另一个版本的CUDA。嗯,环境变量这东西,真的不能马虎。

3.2 PyTorch环境配置

PyTorch的安装,说白了就是一句话:去官网选对版本。

推荐做法:用conda创建虚拟环境

我建议你为每个项目单独建一个环境,避免依赖冲突。比如:

conda create -n yolo_env python=3.10
conda activate yolo_env

然后安装PyTorch。去 PyTorch官网 选择你的配置,比如CUDA 11.8对应的命令:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
验证安装:
python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"
如果输出 True,恭喜你,PyTorch已经能调用GPU了。

你想想看,这一步要是没验证,后面跑模型时才发现用的是CPU,那得多浪费时间?

3.3 Ultralytics库安装与验证

Ultralytics是YOLOv8的官方库,安装非常简单:

pip install ultralytics

它会自动帮你装好依赖,包括OpenCV、NumPy这些。

验证安装:

yolo predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'

如果能看到检测结果,说明一切正常。

避坑指南: 我曾经在Windows上装Ultralytics时,遇到OpenCV的DLL加载失败。后来发现是系统缺少Visual C++运行库。去微软官网装一下就好了。

另外,我建议你装完后再跑一个简单的Python脚本,确认库能正常导入:

from ultralytics import YOLO
model = YOLO('yolov8n.pt')
results = model('https://ultralytics.com/images/bus.jpg')
print(results[0].boxes.xyxy)

如果能看到边界框坐标,那环境就彻底搭好了。

3.4 常见问题与解决方案

问题 原因 解决方法
nvidia-smi 找不到 驱动未安装或未配置PATH 重新安装驱动,或添加NVIDIA路径到环境变量
PyTorch检测不到GPU CUDA版本不匹配或PyTorch安装的是CPU版 卸载PyTorch,重新安装对应CUDA版本的PyTorch
Ultralytics导入报错 依赖库版本冲突 用conda创建新环境,重新安装
最后提醒: 环境搭建没有捷径。每一步都验证一下,别等到跑模型了才发现问题。我当年就是太心急,结果浪费了更多时间。

好了,环境搭好了,下一章咱们就开始真正跑YOLO模型了。你准备好了吗?