2、环境搭建:Python环境配置、CUDA与cuDNN安装、PyTorch框架安装、依赖库管理
说实话,环境搭建是很多人入门AI绘画的第一道坎。我见过太多同学在群里问「为什么我的代码跑不起来」,最后发现是CUDA版本不对。嗯,今天我们就来把这套东西捋清楚。
2.1 Python环境配置
我个人习惯用Anaconda来管理Python环境。为什么?因为省心。你想想看,一个项目要PyTorch 1.13,另一个要2.0,用conda创建虚拟环境就能完美隔离。
核心要点:Python版本建议选3.8或3.10。3.9我踩过坑,有些老库兼容性不太好。
安装步骤很简单:
- 去Anaconda官网下载安装包(选Python 3.8版本)
- 安装时记得勾选「Add Anaconda to my PATH」
- 打开终端验证:
python --version
创建虚拟环境的命令:
conda create -n ai_painting python=3.8
conda activate ai_painting
小技巧:我习惯把环境名起得短一点,比如「sd」代表Stable Diffusion,「pt」代表PyTorch。这样切换起来快。
2.2 CUDA与cuDNN安装
这是最容易出问题的一步。说白了,CUDA是NVIDIA的并行计算平台,cuDNN是它的深度学习加速库。没有它们,你的GPU就是个摆设。
先检查你的显卡:
nvidia-smi
这个命令会显示你的驱动版本和最高支持的CUDA版本。比如我自己的机器显示CUDA 11.8,那我就装对应版本的CUDA Toolkit。
注意:我曾经因为驱动版本太低,装了个CUDA 12.0,结果PyTorch死活不认GPU。后来才发现驱动只支持到11.8。所以一定要先看nvidia-smi的输出。
安装步骤:
- 去NVIDIA官网下载CUDA Toolkit(选你的系统版本)
- 安装时选「自定义安装」,只勾选CUDA组件
- 下载cuDNN(需要注册NVIDIA账号)
- 把cuDNN的bin、include、lib文件夹复制到CUDA安装目录
验证安装:
nvcc --version # 查看CUDA版本
# 然后跑一个简单的PyTorch代码看GPU是否可用
2.3 PyTorch框架安装
PyTorch的安装其实是最简单的。去官网 pytorch.org,选你的配置,它会生成一条命令。
举个例子,CUDA 11.8的安装命令:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
重要:千万别用pip install torch不加参数。那样会装CPU版本,你的显卡就白买了。
验证PyTorch是否识别GPU:
import torch
print(torch.cuda.is_available()) # 应该返回True
print(torch.cuda.get_device_name(0)) # 显示你的显卡型号
我记得第一次跑这个代码时,看到「True」那个瞬间,心里踏实多了。嗯,这就是环境搭好的信号。
2.4 依赖库管理
AI绘画项目依赖的库很多。我建议用requirements.txt来管理,这样换机器时一键安装。
一个典型的AI绘画项目依赖:
| 库名 | 用途 | 推荐版本 |
|---|---|---|
| diffusers | 扩散模型推理 | ≥0.21.0 |
| transformers | 文本编码器 | ≥4.30.0 |
| accelerate | 多GPU加速 | ≥0.25.0 |
| safetensors | 安全加载模型 | ≥0.4.0 |
| omegaconf | 配置文件管理 | ≥2.3.0 |
安装命令:
pip install diffusers transformers accelerate safetensors omegaconf
避坑指南:我曾经一次性装了所有依赖,结果版本冲突导致diffusers和transformers不兼容。后来我学乖了,先装核心库,跑通后再加其他库。这样排查问题快很多。
还有一个实用技巧:用pip freeze > requirements.txt导出当前环境的依赖列表。下次换机器时,直接pip install -r requirements.txt就行。
2.5 完整环境验证
最后,跑一个完整的验证脚本:
import torch
import diffusers
import transformers
print(f"PyTorch版本: {torch.__version__}")
print(f"CUDA可用: {torch.cuda.is_available()}")
print(f"GPU型号: {torch.cuda.get_device_name(0)}")
print(f"diffusers版本: {diffusers.__version__}")
print(f"transformers版本: {transformers.__version__}")
# 测试一个简单的推理
from diffusers import StableDiffusionPipeline
pipe = StableDiffusionPipeline.from_pretrained(
"runwayml/stable-diffusion-v1-5",
torch_dtype=torch.float16
)
pipe = pipe.to("cuda")
image = pipe("a cat wearing a hat").images[0]
image.save("test.png")
print("环境搭建成功!")
如果这个脚本能跑通,恭喜你,环境搭建完成了。如果报错,别慌。99%的问题都是CUDA版本或依赖版本不对。检查一下nvidia-smi的输出,再对照PyTorch官网的版本表,基本能解决。
最后提醒:Windows用户注意,CUDA安装后可能需要重启。Linux用户注意,记得把CUDA路径加到.bashrc里。Mac用户...嗯,建议用云GPU吧,M系列芯片跑AI绘画确实吃力。
好了,环境搭好了,下一章我们开始真正动手训练模型。