vllm安装运行本地大模型 - windows篇
前言
目前 vLLM 对 Windows 的原生支持(Native Windows Support)非常有限且处于早期实验阶段,而在 WSL2 环境下则非常成熟和稳定,所以在windows电脑上运行vllm,尽可能的需要安装wsl2
WSL安装及相关命令
官网地址 https://learn.microsoft.com/zh-cn/windows/wsl/install
一、WSL 基础安装与版本管理
| 命令 | 功能说明 |
|---|
wsl --install | 一键安装 WSL(默认安装 Ubuntu,自动启用所需系统组件,无需手动配置) |
wsl --install -d <发行版名称> | 安装指定发行版(示例:wsl --install -d Debian,可通过 wsl --list --online 查看支持的发行版) |
wsl --list --online / wsl -l -o | 列出微软官方支持的所有 WSL 发行版,方便选择安装 |
wsl --set-default-version <版本号> | 设置 WSL 默认版本(仅支持 1 或 2,示例:wsl --set-default-version 2,建议优先选择 WSL2,性能更优) |
wsl --update | 一键更新 WSL 内核和相关组件,修复已知兼容性问题 |
wsl --status | 查看当前 WSL 状态,包括默认版本、默认发行版、内核版本等关键信息 |
二、WSL 实例管理
| 命令 | 功能说明 |
|---|
wsl --list --verbose / wsl -l -v | 列出已安装的所有 WSL 实例,清晰显示实例名称、状态(运行/停止)、WSL 版本 |
wsl / wsl.exe | 快速启动默认 WSL 发行版,直接进入 Linux 终端环境 |
wsl -d <发行版名称> | 启动指定 WSL 发行版(示例:wsl -d Ubuntu-22.04,需与已安装实例名称完全一致) |
wsl -u <用户名> / wsl --user <用户名> | 以指定用户身份启动 WSL(示例:wsl -u root,即 root 管理员身份,方便执行高权限操作) |
wsl --set-default <发行版名称> | 设置默认启动的 WSL 发行版,后续输入 wsl 可直接启动该实例 |
wsl --shutdown | 关闭所有运行中的 WSL 实例和 WSL 虚拟机,释放系统资源,无需逐个终止 |
wsl -t <发行版名称> / wsl --terminate <发行版名称> | 终止指定的 WSL 实例(强制关闭,适用于单个实例卡死或需单独停止的场景) |
三、WSL 版本切换与迁移
| 命令 | 功能说明 |
|---|
wsl --set-version <发行版名称> <版本号> | 将指定发行版切换为 WSL1 或 WSL2(示例:wsl --set-version Ubuntu 2,切换过程可能需要几分钟) |
wsl --export <发行版名称> <导出路径> | 导出 WSL 实例为备份文件(示例:wsl --export Ubuntu D:\ubuntu-backup.tar,用于数据备份或迁移) |
wsl --import <新实例名称> <安装路径> <备份文件路径> --version <版本号> | 导入备份的 WSL 实例(示例:wsl --import Ubuntu-22.04 D:\WSL\Ubuntu D:\ubuntu-backup.tar --version 2,恢复备份或迁移到其他路径) |
四、WSL 卸载与重置
| 命令 | 功能说明 |
|---|
wsl --unregister <发行版名称> | 卸载指定 WSL 实例(删除该实例所有数据,不可恢复,示例:wsl --unregister Ubuntu) |
wsl --cleanup | 清理 WSL 无用资源(如未使用的内核、临时文件),释放磁盘空间 |
五、WSL 高级操作
| 命令 | 功能说明 |
|---|
wsl <Linux 命令> | 在 PowerShell 中直接执行单个 Linux 命令(示例:wsl ls -l /home,无需进入 WSL 终端) |
wsl --mount <磁盘路径> | 挂载 Windows 磁盘到 WSL(示例:wsl --mount \\.\PhysicalDrive1,需管理员权限,方便在 WSL 中访问 Windows 磁盘文件) |
wsl --unmount <磁盘路径> | 卸载已挂载的 Windows 磁盘(示例:wsl --unmount \\.\PhysicalDrive1,避免磁盘占用) |
Get-ChildItem HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss\ | 查看 WSL 实例的注册表配置(高级排查用,用于解决实例启动失败等异常问题) |
vLLm安装
WSL 安装Ubuntu
wsl -d Ubuntu
WSL- Ubuntu安装vLLm
创建虚拟环境
// 1. 备份原有源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
// 2. 替换为清华大学镜像源或阿里源
sudo sed -i 's/archive.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list
sudo sed -i 's/security.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list
//更新
sudo apt update && sudo apt upgrade
//下载python3
sudo apt upgrade python3
//下载pip
sudo apt install python3-pip
//创建虚拟环境文件夹
mkdir vllm_dev
//创建虚拟环境
cd vllm_dev/
python3 -m venv .venv
//启动虚拟环境
source .venv/bin/activate
下载vLLm
pip更换下载源
92 mkdir -p ~/.pip
93 # 写入清华源配置
94 cat > ~/.pip/pip.conf <<EOF
95 [global]
96 index-url = https://pypi.tuna.tsinghua.edu.cn/simple
97 trusted-host = pypi.tuna.tsinghua.edu.cn
98 [install]
99 trusted-host = pypi.tuna.tsinghua.edu.cn
100 EOF
下载vllm
//查看是否安转cuda
nvidia-smi
//安装vLLm
pip install vllm
//安装openai
pip install openai
//安装huggingface_hub
pip install huggingface_hub
//下载模型
hf download cyankiwi/Qwen3-VL-4B-Instruct-AWQ-4bit --local-dir ./Qwen3-VL-4B-Instruct/
启动vllm
python -m vllm.entrypoints.openai.api_server \
--model /home/t-mac/code/vllm_dev/models/Qwen3-VL-4B-Instruct/Qwen3-VL-4B-Instruct \
--host 0.0.0.0 \
--port 8000 \
--gpu-memory-utilization 0.85 \
--max-model-len 4096 \
--trust-remote-code \
--limit-mm-per-prompt '{"image": 4}' \
--served-model-name Qwen3-VL-4B-Instruct # 新增:指定对外暴露的模型名(必填)