Phi-3-Mini-128K十分钟入门:WSL2中配置GPU加速推理环境
2026/4/14 22:51:10 网站建设 项目流程

Phi-3-Mini-128K十分钟入门:WSL2中配置GPU加速推理环境

想在Windows电脑上体验最新的Phi-3-Mini-128K大模型,又不想折腾复杂的虚拟机或双系统?那你来对地方了。今天咱们就聊聊怎么用WSL2这个“神器”,在Windows里轻松搭一个Linux环境,然后把GPU资源用起来,让Phi-3-Mini跑得飞快。

WSL2,也就是Windows Subsystem for Linux的第二版,它最大的好处就是能让你在Windows里无缝运行一个完整的Linux系统,而且性能损耗极小。更重要的是,从某个版本开始,它可以直接调用你Windows主机上的NVIDIA GPU了,这对于咱们玩AI模型来说简直是福音。不用再为驱动兼容性头疼,也不用在Windows和Linux之间反复重启切换。

这篇文章就是为你准备的快速上手指南。咱们的目标很明确:用最短的时间,最清晰的步骤,让你在WSL2里把Phi-3-Mini-128K的GPU推理环境给配好。整个过程顺利的话,十分钟左右就能看到成果。准备好了吗?咱们开始。

1. 准备工作:检查你的Windows环境

在动手之前,得先确认你的电脑“底子”够不够。这就像盖房子前得看看地基牢不牢。

首先,你的Windows版本必须得是Windows 10版本 2004 及更高(内部版本 19041 及更高)或者 Windows 11。这个是最低门槛。怎么查呢?很简单,按Win + R键,输入winver,回车。弹出的窗口里就能看到具体的版本号和内部版本号。

其次,也是最关键的一点:你得有一块NVIDIA的独立显卡。因为咱们要用的CUDA和相关的AI计算库,目前对NVIDIA的GPU支持是最好的。你可以通过任务管理器里的“性能”标签页,或者用NVIDIA控制面板来确认显卡型号。

最后,为了后续安装方便,建议你先在Windows上安装好最新的NVIDIA显卡驱动。直接去NVIDIA官网,根据你的显卡型号下载对应的Game Ready或者Studio驱动就行。装好驱动后,最好重启一下电脑。

2. 启用WSL2并安装Linux分发版

基础打好了,现在来安装WSL2的核心组件。

2.1 启用WSL功能

Windows系统默认是不开启WSL的,我们需要手动把它打开。有两种方法,选一种你觉得顺手的就行。

方法一:图形界面(推荐新手)

  1. 在开始菜单搜索“启用或关闭Windows功能”,打开它。
  2. 在弹出的窗口里,找到“适用于Linux的Windows子系统”和“虚拟机平台”这两项,把它们前面的勾都打上。
  3. 点击“确定”,系统会开始安装必要的组件,完成后会提示你重启电脑。一定要重启。

方法二:命令行(更快)以管理员身份打开PowerShell(在开始菜单里右键点击PowerShell,选择“以管理员身份运行”),然后依次输入下面两条命令:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

执行完后,同样需要重启电脑。

2.2 设置WSL2为默认版本并安装Ubuntu

重启后,再次以管理员身份打开PowerShell,输入下面的命令,将WSL2设置为默认版本:

wsl --set-default-version 2

接下来,我们去微软商店安装一个Linux系统。这里我推荐使用Ubuntu 22.04 LTS。LTS代表长期支持版,比较稳定,社区资源也丰富,对新手友好。

  1. 打开微软商店(Microsoft Store)。
  2. 在搜索框里输入“Ubuntu 22.04 LTS”。
  3. 找到它,点击“获取”进行安装。安装过程会自动下载,速度取决于你的网络。

安装完成后,你可以在开始菜单里找到它,点击启动。第一次启动会需要几分钟来初始化,然后会提示你设置一个用户名密码。这个用户名和密码是WSL里Linux系统的,和你的Windows账户无关,但请务必记住它,以后安装软件、提权操作(sudo)时都会用到。

3. 在WSL2中配置GPU支持

Linux系统装好了,但现在的WSL2还“看”不到你的显卡。我们需要打通这层壁垒。

3.1 安装WSL2内核更新包

为了让WSL2能稳定地使用GPU,微软提供了一个专门的内核更新包。你需要去微软的官方下载页面,搜索“WSL2 Linux kernel update package for x64 machines”并下载安装。安装过程就是一路下一步,很简单。

3.2 在WSL2中安装NVIDIA CUDA Toolkit

这是核心步骤。我们不需要在Windows和Linux里装两遍驱动,只需要在WSL2的Ubuntu里安装CUDA Toolkit就行。NVIDIA为WSL2提供了专门的CUDA版本。

打开你的Ubuntu终端(就是刚才安装的那个),依次执行下面的命令:

  1. 更新软件包列表

    sudo apt update
  2. 安装CUDA Toolkit(WSL2专用)

    sudo apt install -y cuda-toolkit-12-4

    这里安装的是CUDA 12.4版本,这是一个比较新且稳定的版本,对大多数AI框架支持良好。安装过程可能需要一些时间,并且会占用几个G的磁盘空间。

  3. 验证安装: 安装完成后,输入下面的命令来检查CUDA是否安装成功,以及WSL2是否能识别到GPU:

    nvidia-smi

    如果一切顺利,你会看到一个表格,显示了你的GPU型号、驱动版本、CUDA版本以及GPU当前的运行状态(比如温度、风扇转速、显存使用情况)。看到这个,就恭喜你,GPU通道已经打通了!

4. 配置Python环境与安装必要库

有了CUDA,我们还需要一个Python环境来运行模型代码。为了避免和系统自带的Python冲突,也为了方便管理不同项目的依赖,强烈建议使用condavenv创建虚拟环境。这里我用conda举例,因为它管理包更方便。

4.1 安装Miniconda(如果尚未安装)

如果你的WSL2里还没有conda,先安装它。在Ubuntu终端里执行:

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

安装脚本运行后,一直按回车阅读许可协议,输入yes同意,然后它会问你把conda安装到哪里,直接回车用默认路径就行。最后会问你是否要初始化conda,输入yes。安装完成后,关闭当前终端,重新打开一个新的,这样conda才能生效。

4.2 创建并激活虚拟环境

新终端打开后,你会看到命令行前面多了个(base),这表示你已经在conda的base环境里了。但我们不要用base环境,自己新建一个:

# 创建一个名为 phi3 的Python 3.10环境 conda create -n phi3 python=3.10 -y # 激活这个环境 conda activate phi3

激活后,命令行提示符前的(base)会变成(phi3)

4.3 安装PyTorch和Transformers库

现在,在这个干净的环境里安装我们运行Phi-3模型需要的核心库:PyTorch(带CUDA支持)和Hugging Face的Transformers库。

访问 PyTorch官网,在安装命令生成器里选择:

  • PyTorch Build: Stable
  • Your OS: Linux
  • Package: Conda
  • Language: Python
  • Compute Platform: CUDA 12.4

它会生成一条命令,类似下面这样(版本号可能略有不同):

conda install pytorch torchvision torchaudio pytorch-cuda=12.4 -c pytorch -c nvidia

把这条命令复制到你的(phi3)环境终端里执行。这会安装支持CUDA 12.4的PyTorch。

接着安装Transformers库和加速库(用于优化加载和推理速度):

pip install transformers accelerate

5. 运行Phi-3-Mini-128K进行测试

环境全部就绪,是时候请出主角了。Phi-3-Mini-128K是一个参数规模较小但能力很强的模型,特别适合在消费级GPU上运行。

5.1 编写一个简单的推理脚本

在你的WSL2家目录(~)或者任意你喜欢的位置,创建一个Python文件,比如叫test_phi3.py

nano test_phi3.py

然后把下面的代码粘贴进去。这段代码会从Hugging Face Hub下载模型(第一次运行需要下载,模型大约8GB),并使用GPU进行文本生成。

from transformers import AutoModelForCausalLM, AutoTokenizer import torch # 指定模型名称 model_id = "microsoft/Phi-3-mini-128k-instruct" # 加载分词器和模型,并指定使用GPU print("正在加载分词器...") tokenizer = AutoTokenizer.from_pretrained(model_id) print("正在加载模型(首次运行需要下载,请耐心等待)...") model = AutoModelForCausalLM.from_pretrained( model_id, device_map="auto", # 自动将模型层分配到可用的设备(GPU) torch_dtype=torch.float16, # 使用半精度浮点数,节省显存并加速 trust_remote_code=True ) # 将模型设置为评估模式 model.eval() # 准备对话提示词(使用该模型支持的聊天格式) messages = [ {"role": "user", "content": "用简单的语言解释一下什么是人工智能?"} ] # 应用聊天模板 input_text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True) # 将输入文本转换为模型可接受的输入格式 inputs = tokenizer(input_text, return_tensors="pt").to(model.device) # 进行文本生成 print("\n模型正在思考...") with torch.no_grad(): # 禁用梯度计算,推理时不需要 outputs = model.generate( **inputs, max_new_tokens=200, # 最多生成200个新token do_sample=True, # 使用采样方式,使生成结果更多样 temperature=0.7, # 控制随机性,值越低越确定 top_p=0.9 # 核采样参数,控制生成质量 ) # 解码并打印生成的文本 # 跳过输入部分,只打印模型新生成的部分 generated_ids = outputs[0][inputs['input_ids'].shape[1]:] # 获取新生成的token id response = tokenizer.decode(generated_ids, skip_special_tokens=True) print("\nPhi-3的回答:") print(response)

Ctrl + O保存文件,再按Ctrl + X退出nano编辑器。

5.2 运行脚本并观察结果

在终端里运行这个脚本:

python test_phi3.py

第一次运行会花一些时间下载模型,如果你的网络连接Hugging Face比较慢,可能需要耐心等待一会儿。下载的模型会缓存在~/.cache/huggingface/hub目录下,下次运行就快了。

模型加载完成后,你会看到“模型正在思考...”的提示,稍等片刻,它就会输出对“什么是人工智能”这个问题的回答。如果成功运行并看到了流畅的文本输出,那么恭喜你,整个WSL2下的Phi-3-Mini GPU推理环境就配置成功了!

6. 总结与后续建议

走完这一趟,你应该已经成功在WSL2里跑起了Phi-3-Mini。整个过程的核心其实就是三步:把WSL2和GPU的桥搭好(安装驱动和CUDA Toolkit)、准备好一个干净的Python工作间(用conda创建虚拟环境)、最后把模型请进来运行(下载并加载模型)。

用下来感觉,WSL2这个方案对Windows用户确实很友好,它把Linux的开发便利性和Windows的日常使用性结合在了一起,不用做双系统那种“二选一”的纠结。特别是对于AI学习和轻度开发,在本地有个能调用GPU的环境,调试和实验起来会方便很多。

如果你在配置过程中遇到了问题,比如nvidia-smi命令报错,或者模型加载时提示CUDA不可用,别着急。大部分问题都可以通过检查驱动版本、确认WSL2内核更新包已安装、以及验证CUDA Toolkit安装是否正确来解决。多看看终端的错误信息,通常都能找到线索。

接下来,你可以尝试用Phi-3-Mini做更多事情,比如写个小脚本让它帮你总结长文章、生成代码片段,或者试试它的长文本处理能力。也可以探索一下Hugging Face上其他有趣的模型,有了这个环境,很多模型都可以拉下来跑跑看。玩得开心!


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询