摘要

很多刚入门大模型、视觉大模型、多模态大模型的同学,第一步不是卡在论文,而是卡在环境。

教程里动不动就是:

  • 安装 Linux 双系统
  • 配置虚拟机
  • 安装 CUDA
  • 安装 cuDNN
  • 配环境变量
  • 装 PyTorch
  • 下载模型
  • 跑不起来
  • C 盘爆炸

对于新手来说,这一套流程非常劝退。

其实,如果你是 Windows 用户,现在已经不一定要装传统虚拟机,也不一定要折腾双系统。更推荐的方式是:

Windows + WSL2 + Ubuntu + Conda + PyTorch + 视觉大模型

这篇文章会从零开始,带你在 Windows 上安装 Linux 环境,并最终跑通一个真正的视觉大模型。

本文适合:

  • 大模型入门新手
  • 视觉大模型 / 多模态大模型方向研究生
  • Windows 用户
  • 不想装虚拟机、不想装双系统的人
  • 想用 conda 管理深度学习环境的人
  • 担心 C 盘爆满的人

一、为什么跑大模型更推荐 Linux?

在大模型和深度学习领域,Linux 是更常见的开发环境。

原因很简单:

  1. 服务器基本都是 Linux;
  2. CUDA、PyTorch、Transformers、DeepSpeed、vLLM 等工具在 Linux 下更稳定;
  3. 论文代码通常默认按 Linux 环境写;
  4. 后续你上实验室服务器、云服务器,也基本都是 Linux;
  5. 命令行、脚本、环境管理更统一。

但是很多同学自己的电脑是 Windows。这个时候最推荐的方案不是装虚拟机,而是使用 WSL2。


二、什么是 WSL2?

WSL 的全称是:

Windows Subsystem for Linux

也就是 Windows 的 Linux 子系统。

简单理解:

它可以让你在 Windows 上直接运行一个 Linux 系统。

你可以在 Windows 电脑上打开 Ubuntu 终端,使用 Linux 命令,例如:

ls
cd
sudo apt update
conda activate
python train.py

它不像传统虚拟机那么笨重,也不像双系统那样需要重启切换系统。对于大模型学习和日常开发来说,WSL2 是非常适合新手的方案。

最终你的电脑结构大概是这样:

Windows
 └── WSL2
      └── Ubuntu
           └── Conda
                └── PyTorch
                     └── 视觉大模型

三、安装 WSL2 + Ubuntu

1. 打开 PowerShell 管理员模式

在 Windows 搜索栏搜索:

PowerShell

右键选择:

以管理员身份运行

然后输入:

wsl --install

执行完成后,按提示重启电脑。


2. 第一次打开 Ubuntu

重启后,在开始菜单搜索:

Ubuntu

第一次打开时,会让你创建 Linux 用户名和密码。

例如:

用户名:james
密码:自己设置

注意,输入密码时终端不会显示字符,这是正常现象。


3. 检查 WSL 版本

在 PowerShell 中输入:

wsl -l -v

如果看到类似结果:

NAME      STATE           VERSION
Ubuntu    Running         2

说明 Ubuntu 已经安装成功,并且是 WSL2。

如果 VERSION 不是 2,可以执行:

wsl --set-version Ubuntu 2

四、强烈建议:把 Ubuntu 迁移到 G 盘,防止 C 盘爆满

跑大模型最容易爆的不是代码,而是:

  • conda 环境
  • pip 缓存
  • PyTorch 包
  • Hugging Face 模型权重
  • 数据集
  • checkpoint

如果默认安装 WSL,Ubuntu 很可能会占用 C 盘空间。

WSL2 的 Ubuntu 本质上会对应一个虚拟磁盘文件,通常叫:

ext4.vhdx

所以,如果你的 C 盘不大,建议直接把 Ubuntu 迁移到 G 盘。


1. 查看你的 Ubuntu 名称

PowerShell 输入:

wsl -l -v

假设看到:

NAME      STATE           VERSION
Ubuntu    Running         2

那么你的发行版名字就是:

Ubuntu

如果你看到的是:

Ubuntu-22.04

那么后面的命令里就把 Ubuntu 替换成 Ubuntu-22.04


2. 进入 Ubuntu,记录默认用户

打开 Ubuntu,输入:

whoami

假设输出:

james

然后执行:

printf "[user]\ndefault=%s\n" "$USER" | sudo tee /etc/wsl.conf

这一步是为了防止迁移后默认用户变成 root。


3. 关闭 WSL

回到 PowerShell:

wsl --shutdown

4. 创建 G 盘目录

mkdir G:\WSL
mkdir G:\WSL\Ubuntu
mkdir G:\WSL\Backup

5. 导出整个 Ubuntu

wsl --export Ubuntu G:\WSL\Backup\Ubuntu.tar

如果你的发行版叫 Ubuntu-22.04,就用:

wsl --export Ubuntu-22.04 G:\WSL\Backup\Ubuntu-22.04.tar

这一步会把整个 Ubuntu 打包,包括:

  • Linux 系统
  • conda
  • Python 环境
  • 已安装的包
  • 项目文件
  • Hugging Face 模型缓存

6. 注销 C 盘旧 Ubuntu

确认导出成功后,再执行:

wsl --unregister Ubuntu

注意:这一步会删除 C 盘旧 Ubuntu。


7. 从 G 盘重新导入

wsl --import Ubuntu G:\WSL\Ubuntu G:\WSL\Backup\Ubuntu.tar --version 2

导入后检查:

wsl -l -v

然后启动 Ubuntu:

wsl -d Ubuntu

8. 检查迁移是否成功

进入 Ubuntu 后执行:

whoami
pwd

再检查 conda:

conda --version
conda env list

如果之前已经装过模型,可以检查 Hugging Face 缓存:

du -sh ~/.cache/huggingface

迁移完成后,你的 Ubuntu 主体就会在:

G:\WSL\Ubuntu

以后你在 Ubuntu 里安装的环境、模型、项目,只要放在 Linux 主目录中,就会占用 G 盘,而不是 C 盘。


五、更新 Ubuntu 基础环境

进入 Ubuntu 后,先更新系统包:

sudo apt update && sudo apt upgrade -y

安装常用基础工具:

sudo apt install -y build-essential git wget curl unzip vim ca-certificates

这些工具的作用大概是:

build-essential:编译工具
git:下载 GitHub 项目
wget/curl:下载文件
unzip:解压文件
vim:命令行编辑器
ca-certificates:HTTPS 证书

六、安装 Miniconda

不建议新手直接在系统 Python 里乱装包。

更推荐用 conda 创建独立环境。

先进入用户主目录:

cd ~

下载 Miniconda:

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

执行安装:

bash ./Miniconda3-latest-Linux-x86_64.sh

安装过程中:

Do you accept the license terms? yes
安装路径:直接回车
Do you wish to initialize Miniconda3? yes

安装完成后刷新配置:

source ~/.bashrc

检查 conda 是否安装成功:

conda --version

如果能看到版本号,说明安装成功。


七、创建视觉大模型专用环境

以后不要直接在 base 环境里装深度学习包。

我们创建一个专门的环境:

conda create -n vlm python=3.11 -y

激活环境:

conda activate vlm

升级 pip:

python -m pip install --upgrade pip

以后每次跑视觉大模型项目,都先执行:

conda activate vlm

八、配置 NVIDIA GPU

如果你有 NVIDIA 显卡,先在 Windows PowerShell 里输入:

nvidia-smi

如果能看到显卡信息,例如:

NVIDIA GeForce RTX 3060
Driver Version: xxx
CUDA Version: xxx

说明 Windows 已经识别显卡。

然后进入 Ubuntu,也输入:

nvidia-smi

如果 Ubuntu 里也能看到显卡信息,说明 WSL2 已经能调用 GPU。

这里有一个非常重要的点:

WSL2 下不要在 Ubuntu 里安装 NVIDIA Linux 显卡驱动。

你只需要在 Windows 侧安装或更新 NVIDIA 驱动即可。WSL2 会通过 Windows 驱动把 GPU 能力暴露给 Linux 环境。


九、安装 PyTorch

vlm 环境里执行:

conda activate vlm

然后安装 PyTorch。

示例命令如下:

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

如果你的显卡或驱动不适合这个版本,可以去 PyTorch 官网选择:

OS: Linux
Package: Pip
Language: Python
Compute Platform: CUDA

然后复制官网给出的安装命令。

安装完成后,测试 PyTorch 是否能调用 GPU:

python -c "import torch; print(torch.__version__); print(torch.cuda.is_available()); print(torch.cuda.get_device_name(0))"

如果输出类似:

True
NVIDIA GeForce RTX ...

说明 PyTorch GPU 环境成功。


十、安装视觉大模型相关包

我们这里以 Qwen2.5-VL 为例。

先安装常用依赖:

pip install -U transformers accelerate pillow requests sentencepiece

再安装 Qwen 视觉输入处理工具:

pip install qwen-vl-utils

如果后面要处理视频,可以安装:

pip install qwen-vl-utils[decord]

如果运行 Qwen2.5-VL 时出现:

KeyError: 'qwen2_5_vl'

可以改用最新版 Transformers 源码安装:

pip install git+https://github.com/huggingface/transformers accelerate

十一、跑通第一个视觉大模型

这里选择:

Qwen/Qwen2.5-VL-3B-Instruct

不要一上来就跑 7B、14B、72B。

新手第一步不是追求大,而是先把完整链路跑通:

Linux 环境 → Conda → PyTorch → CUDA → Transformers → 视觉大模型推理

1. 创建项目目录

mkdir -p ~/projects/vlm_test
cd ~/projects/vlm_test

2. 新建测试脚本

vim test_qwen_vl.py

写入下面代码:

from transformers import Qwen2_5_VLForConditionalGeneration, AutoProcessor
from qwen_vl_utils import process_vision_info
import torch

model_name = "Qwen/Qwen2.5-VL-3B-Instruct"

model = Qwen2_5_VLForConditionalGeneration.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto"
)

processor = AutoProcessor.from_pretrained(model_name)

messages = [
    {
        "role": "user",
        "content": [
            {
                "type": "image",
                "image": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg",
            },
            {
                "type": "text",
                "text": "请用中文描述这张图片。"
            },
        ],
    }
]

text = processor.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True
)

image_inputs, video_inputs = process_vision_info(messages)

inputs = processor(
    text=[text],
    images=image_inputs,
    videos=video_inputs,
    padding=True,
    return_tensors="pt",
)

inputs = inputs.to(model.device)

generated_ids = model.generate(
    **inputs,
    max_new_tokens=128
)

generated_ids_trimmed = [
    out_ids[len(in_ids):]
    for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]

output_text = processor.batch_decode(
    generated_ids_trimmed,
    skip_special_tokens=True,
    clean_up_tokenization_spaces=False
)

print(output_text[0])

保存退出:

按 Esc
输入 :wq
回车

3. 运行模型

python test_qwen_vl.py

第一次运行会自动下载模型文件,速度取决于网络情况。

如果一切正常,你会看到模型对图片的中文描述。

这就说明:

你的 Windows 电脑已经通过 WSL2 跑通了 Linux 环境,并且成功运行了一个视觉大模型。


十二、模型文件下载到哪里了?

Hugging Face 模型默认会缓存到:

~/.cache/huggingface

可以查看大小:

du -sh ~/.cache/huggingface

也可以查看具体模型:

ls ~/.cache/huggingface/hub

如果你已经把 Ubuntu 迁移到了 G 盘,那么这些模型缓存也会随着 Ubuntu 虚拟磁盘一起占用 G 盘空间。


十三、推荐的日常项目目录

建议以后项目放在:

~/projects

例如:

~/projects/vlm_test
~/projects/papers
~/projects/datasets

不要长期放在:

/mnt/c/Users/你的用户名/Desktop

也不要把大模型项目放在 Windows 桌面、下载目录里。

原因是:

  1. Linux 文件系统下速度更好;
  2. 权限问题更少;
  3. 后续迁移和备份更统一;
  4. 不容易把 C 盘撑爆。

十四、常用命令总结

查看 WSL 发行版

wsl -l -v

启动 Ubuntu

wsl -d Ubuntu

关闭 WSL

wsl --shutdown

激活 conda 环境

conda activate vlm

查看 conda 环境

conda env list

查看 GPU

nvidia-smi

测试 PyTorch GPU

python -c "import torch; print(torch.cuda.is_available()); print(torch.cuda.get_device_name(0))"

查看 Hugging Face 模型缓存大小

du -sh ~/.cache/huggingface

查看家目录占用

du -sh ~

十五、常见问题

1. 为什么不用传统虚拟机?

传统虚拟机当然可以,但对新手来说更重:

  • 需要单独分配内存
  • 需要配置虚拟硬盘
  • 文件互通麻烦
  • GPU 配置更复杂
  • 性能开销更明显

WSL2 更适合 Windows 用户快速进入 Linux 开发环境。


2. 为什么不用双系统?

双系统性能很好,但缺点也明显:

  • 安装风险更高
  • 磁盘分区麻烦
  • Windows 和 Linux 需要重启切换
  • 新手容易误删分区
  • 不适合作为第一套学习环境

如果只是为了学习大模型、跑论文代码、配置实验环境,WSL2 已经足够好用。


3. 为什么要用 conda?

因为深度学习项目非常容易出现依赖冲突。

例如一个项目需要:

Python 3.10
PyTorch 2.x
CUDA 11.8
Transformers 某个版本

另一个项目可能需要完全不同的版本。

conda 可以让我们为不同项目创建不同环境:

conda create -n vlm python=3.11
conda create -n clip python=3.10
conda create -n llama python=3.11

这样项目之间不会互相污染。


4. 没有 NVIDIA 显卡可以跑吗?

可以跑,但会很慢。

没有 NVIDIA 显卡时,PyTorch 只能使用 CPU。小模型测试可以,真正跑视觉大模型会非常吃力。

如果你是研究生,后续真正做实验,大概率还是需要:

  • 实验室服务器
  • 云服务器
  • NVIDIA GPU
  • 至少 12GB 以上显存
  • 更推荐 24GB 或更高显存

5. 一上来能不能跑 7B 或 14B?

不建议。

新手第一步应该是跑通链路,而不是追求模型参数量。

推荐顺序:

先跑 3B
再跑 7B
再研究量化
再研究 LoRA 微调
再研究评测和训练

环境没跑通之前,直接上大模型只会让问题变得更复杂。


十六、本文最终完成了什么?

到这里,我们完成了:

1. Windows 上安装 WSL2
2. 安装 Ubuntu
3. 将 Ubuntu 迁移到 G 盘,避免 C 盘爆满
4. 更新 Linux 基础环境
5. 安装 Miniconda
6. 创建视觉大模型 conda 环境
7. 安装 PyTorch
8. 验证 CUDA/GPU
9. 安装 Transformers 和 qwen-vl-utils
10. 跑通 Qwen2.5-VL-3B-Instruct 视觉大模型

也就是说,我们不需要传统虚拟机,不需要双系统,就可以在 Windows 上拥有一个接近真实 Linux 服务器的深度学习开发环境。


总结

对于刚入门大模型、视觉大模型、多模态大模型的同学,我非常推荐这条路线:

Windows + WSL2 + Ubuntu + Conda + PyTorch + Transformers

它比传统虚拟机轻,比双系统简单,又比纯 Windows 环境更接近真实科研和服务器环境。

最关键的是:

先别急着追模型多大、论文多新,先把环境链路跑通。

只要你能成功跑通第一个视觉大模型,后面再去研究 CLIP、BLIP、LLaVA、Qwen-VL、InternVL、MiniGPT-4、微调、LoRA、评测,就会顺很多。

环境不是终点,但它是进入视觉大模型研究的第一道门。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐