4.Windows11 with WSL2 Ubuntu运行Qwen2-7B

目录:

        一. 前言

        二. 系统环境

        三. 新建虚拟环境

        四. 安装依赖库

        五. 下载模型文件

        六. 运行大模型

一. 前言

本次介绍如何在Ubuntu子系统下,使用python代码运行Qwen2-7B开源大模型。

二. 系统环境

  • 操作系统:Windows 11 23H2
  • 子系统:Ubuntu 22.04
  • 显卡: Nvidia RTX 4090
  • minicoda: v24.5

三. 新建虚拟环境

PowerShell执行wsl,进入子系统,子系统内执行:

conda create -n qwen2-7b python=3.10
conda activate qwen2-7b

 conda安装请参考:3.Windows11 with WSL2 Ubuntu 子系统下安装minicoda-CSDN博客

四. 安装依赖库

先设置pip镜像源为清华源

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

安装依赖

pip install torch torchvision torchaudio
pip install transformers
pip install modelscope
pip install accelerate

五. 下载模型文件

1. 新建一个工作目录

比如:/mnt/e/llm/qwen2-7b

子系统中的 /mnt/e/ 目录指向的是Windows11中的E盘

2. 新建一个download.py文件

代码如下:

# 模型下载
from modelscope import snapshot_download
model_dir = snapshot_download('qwen/Qwen2-7B-Instruct', cache_dir='/mnt/e/llm/qwen2-7b/models')

注意:修改cache_dir参数为你本地的真实路径

3. 执行python文件,开始下载

python download.py

输出:

六. 运行大模型

注意:代码中有两处模型目录: /mnt/e/...,替换为你自己的

新建run.py,代码如下:

from modelscope import AutoModelForCausalLM, AutoTokenizer
device = "cuda" # the device to load the model onto

model = AutoModelForCausalLM.from_pretrained(
    "/mnt/e/llm/qwen2-7b/models/Qwen/Qwen2-7B-Instruct",
    torch_dtype="auto",
    device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained("/mnt/e/llm/qwen2-7b/models/Qwen/Qwen2-7B-Instruct")

prompt = "请介绍一下钱学森"
messages = [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(device)

generated_ids = model.generate(
    model_inputs.input_ids,
    max_new_tokens=512
)
generated_ids = [
    output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]

response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)

运行:

python run.py

代码会先加载模型,然后推理,需要等待一段时间,如图输出,成功了

参考网址:

魔搭社区

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yoyokaka

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值