1. 准备工作

1.1 确保 WSL 2 已安装

wsl --install -d Ubuntu-22.04  # 推荐 Ubuntu 22.04 LTS
wsl --set-default-version 2

1.2 安装 NVIDIA 驱动

  • 在 Windows 主机 上安装最新 NVIDIA 驱动:

    • 从 官网 下载对应 P100 的驱动

    • 安装后运行 nvidia-smi 应能正常显示 GPU 信息

1.3 启用 WSL CUDA 支持

  • 安装 CUDA on WSL 工具包:

    wsl --update
  • 重启电脑


2. WSL 环境配置

2.1 进入 WSL

wsl  # 进入默认发行版

2.2 安装基础工具

 

sudo apt update && sudo apt upgrade -y
sudo apt install -y python3-pip python3-venv git

2.3 安装 CUDA Toolkit (WSL 内)

 

wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt update
sudo apt install -y cuda-toolkit-12-4  # P100 支持的最高 CUDA 版本

2.4 验证 CUDA

 

nvcc --version  # 应显示 12.x
nvidia-smi     # 应显示 GPU 信息

3. Python 环境配置

3.1 创建虚拟环境

 

python3 -m venv ~/qwen_env
source ~/qwen_env/bin/activate

3.2 安装 PyTorch (适配 WSL CUDA)

 

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

3.3 安装其他依赖

 

pip install fastapi uvicorn transformers sentencepiece accelerate

4. 模型部署调整

4.1 修改代码关键部分

 

# 修改模型加载部分(确保使用 GPU)
model = AutoModelForCausalLM.from_pretrained(
    MODEL_PATH,
    torch_dtype=torch.float16,
    device_map="auto",
    local_files_only=True
).eval().cuda()  # 显式指定 GPU

4.2 共享 Windows 模型文件到 WSL

 

# 在 WSL 中创建软链接
ln -s /mnt/d/Qwen2.5-7B-Instruct ~/qwen_model

4.3 启动服务 (WSL 内)

 

uvicorn main:app --host 0.0.0.0 --port 8111

5. 端口转发 (可选)

如果要从 Windows 主机访问:

 

netsh interface portproxy add v4tov4 listenport=8111 listenaddress=0.0.0.0 connectport=8111 connectaddress=$(wsl hostname -I).trim()

常见问题解决

  1. CUDA 不可用

     

    export LD_LIBRARY_PATH=/usr/lib/wsl/lib:$LD_LIBRARY_PATH
  2. 显存不足

     

    # 修改模型加载
    model = AutoModelForCausalLM.from_pretrained(
        MODEL_PATH,
        torch_dtype=torch.float16,
        device_map="auto",
        max_memory={0: "14GB"}  # P100 16GB 显存预留 2GB
    )
  3. 性能优化

     

    sudo apt install nvidia-cuda-toolkit

验证 GPU 使用

 

watch -n 1 nvidia-smi  # 实时监控 GPU 使用

声明:本站内容来自公开平台,如若侵犯到您的权益,请联系我们,我们会第一时间删除!联系QQ:502428990。