Qwen3 性价比新王 Qwen3-30B-A3B 本地私有化部署,可灵活切换思考模式

一、Qwen3

Qwen3Qwen 系列大型语言模型的最新成员。该系列共包含8款模型,2款参数30B235B的混合专家模型和6款参数0.6B1.7B4B8B14B32B的稠密模型,每款模型均获得同尺寸开源模型的最佳性能。

在这里插入图片描述

在这里插入图片描述

其中旗舰模型 Qwen3-235B-A22B 在代码、数学、通用能力等基准测试中,与 DeepSeek-R1OpenAI-o1OpenAI-o3-miniGrok-3Gemini-2.5-Pro 等顶级模型相比,表现出极具竞争力的结果。

在这里插入图片描述

小型的 MoE 模型 Qwen3-30B-A3B 的激活参数数量是 QwQ-32B10%,表现也更胜一筹,甚至像 Qwen3-4B 这样的小模型也能匹敌 Qwen2.5-72B-Instruct 的性能。

在这里插入图片描述

Qwen3 模型其中比较有特色的亮点,支持两种思考模式,并且可以灵活切换:

  • 思考模式:在这种模式下,模型会逐步推理,经过深思熟虑后给出最终答案。这种方法非常适合需要深入思考的复杂问题。

  • 非思考模式:在此模式中,模型提供快速、近乎即时的响应,适用于那些对速度要求高于深度的简单问题。

模式的切换无需更换模型,可直接通过 enable_thinking 参数控制,例如:

text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
    enable_thinking=True # True is the default value for enable_thinking.
)

对于 vLLM 框架,可通过 --reasoning-parser--enable-reasoning 控制思考模式:

vllm serve Qwen/Qwen3-30B-A3B \
  --enable-reasoning \
  --reasoning-parser deepseek_r1

Qwen3 还提供了软切换机制,允许用户在 enable_thinking=True 时动态控制模型的行为。只需在提示或系统消息中添加 /think/no_think 来逐轮切换模型的思考模式。在多轮对话中,模型会遵循最近的指令。

更多亮点介绍可参考官方 Github:

https://github.com/QwenLM/Qwen3

Qwen3-30B-A3B ModelScope 地址:

https://modelscope.cn/models/Qwen/Qwen3-30B-A3B

Qwen3-30B-A3B huggleface 地址:

https://huggingface.co/Qwen/Qwen3-30B-A3B

本次本地部署 Qwen3-30B-A3B 推理优化框架采用 vLLM ,使用 Open-WebUI 交互测试,依赖的版本如下:

torch==2.5.1+cu118
modelscope==1.23.1
transformers==4.49.0
vllm==0.7.2

二、vLLM 部署 Qwen3-30B-A3B

首先使用 modelscope 下载 QWQ-32B 模型到本地:

modelscope download --model="Qwen/Qwen3-30B-A3B" --local_dir Qwen3-30B-A3B

在这里插入图片描述

使用 vLLM 读取模型启动API服务。

export CUDA_VISIBLE_DEVICES=0,1

vllm serve "Qwen3-30B-A3B" \
  --host 0.0.0.0 \
  --port 8060 \
  --dtype bfloat16 \
  --tensor-parallel-size 2 \
  --cpu-offload-gb 0 \
  --gpu-memory-utilization 0.8 \
  --max-model-len 8126 \
  --api-key token-abc123 \
  --enable-prefix-caching \
  --enable-reasoning \
  --reasoning-parser deepseek_r1\
  --trust-remote-code

关键参数说明:

  • export CUDA_VISIBLE_DEVICES=0,1 :指定所使用的GPU
  • dtype: 数据类型,其中 bfloat1616位浮点数,适合 NVIDIA A100 等设备。
  • tensor-parallel-sizeTensor 并行的数量,当多 GPU 分布式推理时使用,建议和GPU的数量一致。
  • cpu-offload-gb:允许将部分模型权重或中间结果卸载到 CPU 的内存中,单位为 GB。,模拟 GPU 内存扩展,如果部署的模型大于了显存大小可以设置该参数,但是推理速度会大大下降。
  • gpu-memory-utilization:设置 GPU 内存利用率的上限。
  • max-model-len:允许模型最大处理的Token数,该参数越大占用显存越大。
  • enable-prefix-caching:启用前缀缓存减少重复计算。

在这里插入图片描述

显存占用情况:

在这里插入图片描述

如果启动显存不足,可适当调整 gpu-memory-utilizationmax-model-len 参数,或通过 cpu-offload-gb 将部分模型权重卸载到内存中。

启动成功后,可通过 /v1/models 接口可查看模型列表:

curl http://127.0.0.1:8060/v1/models -H "Authorization: Bearer token-abc123"

在这里插入图片描述

测试API方式交互,默认思考模式:

curl http://127.0.0.1:8060/v1/chat/completions \
    -H "Content-Type: application/json" \
	-H "Authorization: Bearer token-abc123" \
    -d '{
        "model": "Qwen3-30B-A3B",
        "messages": [
            {"role": "system", "content": "You are a helpful assistant."},
            {"role": "user", "content": "你是谁"}
        ]
    }'

在这里插入图片描述

非思考模式测试:

curl http://127.0.0.1:8060/v1/chat/completions \
    -H "Content-Type: application/json" \
	-H "Authorization: Bearer token-abc123" \
    -d '{
        "model": "Qwen3-30B-A3B",
        "messages": [
            {"role": "system", "content": "You are a helpful assistant."},
            {"role": "user", "content": "你是谁/no_think"}
        ]
    }'

在这里插入图片描述

三、Open-WebUI 交互测试

连接 Qwen3-30B-A3B 模型。

在这里插入图片描述

模型ID 可以留空,会自动从 /v1/models 接口中获取。

保存后,回到对话窗口, 可在左上角选择 Qwen3-30B-A3B 模型:

在这里插入图片描述

对话测试

问题:三人三台三桶水,九人九天几桶水

在这里插入图片描述

问题:找规律:
24,14,26,33,46,( )
提示: 24/2+14=26/no_think

在这里插入图片描述

<think>好的,用户想了解如何在本地部署Qwen2.5-VL 3B模型。首先,我需要回忆一下之前提供的引用内容,看看是否有相关的信息。根据引用[1],里面提到了本地部署教程,可能包含步骤。引用[3]也提到了本地部署和真实测评,可能有一些优化方法或者注意事项。 接下来,我需要确认用户提到的模型版本是否正确。用户问的是3B模型,但引用中提到的有7B和72B版本,比如Qwen2.5-VL-7B-Instruct和Qwen2.5-VL-72B。这可能意味着官方文档中可能没有直接提供3B的部署教程,或者用户可能有版本混淆。这时候需要提醒用户确认模型版本,或者推测是否3B的部署步骤与7B类似,需要通用步骤。 然后,根据一般的模型部署流程,步骤通常包括环境准备、依赖安装、模型下载、配置调整、运行示例。需要结合引用中的信息,比如引用[3]提到架构优化,可能需要注意某些特定的依赖项或配置参数。 可能还需要考虑硬件要求,比如GPU显存。3B模型相对较小,可能可以在消费级显卡上运行,但需要具体说明。此外,用户可能希望有代码示例,比如Python脚本或使用Hugging Face的transformers库加载模型。 还需要检查是否有官方文档或GitHub仓库提供具体的部署指南。如果引用[1]有教程链接,可能需要引导用户参考,但用户提供的引用似乎没有具体链接,所以需要给出通用步骤,并建议查阅官方文档。 另外,用户可能遇到常见问题,比如依赖冲突、CUDA版本不匹配,或者模型文件下载问题,需要提前在教程中给出解决建议或注意事项。 最后,生成相关问题,帮助用户深入理解部署过程和相关应用场景,比如性能优化、多模态任务处理等。</think>### Qwen2.5-VL 3B模型本地部署方法 #### 一、部署准备 1. **硬件要求** - GPU建议:至少12GB显存的NVIDIA显卡(如RTX 3060/3080) - 内存:建议16GB以上 - 存储:需预留约10GB空间存放模型及依赖库[^1] 2. **软件环境** ```bash # 安装基础工具 conda create -n qwen2.5 python=3.10 conda activate qwen2.5 pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu118 ``` #### 二、模型获取 1. **官方渠道下载** 通过Hugging Face Model Hub获取模型权重: ```bash git lfs install git clone https://huggingface.co/Qwen/Qwen2.5-VL-3B ``` #### 三、依赖安装 ```bash # 安装核心组件(注意适配3B版本) pip install transformers>=4.37 accelerate sentencepiece pillow # 图像处理扩展 pip install "git+https://github.com/QwenLM/Qwen-VL.git" ``` #### 四、运行示例 ```python from transformers import AutoModelForCausalLM, AutoTokenizer model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen2.5-VL-3B", device_map="auto") tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen2.5-VL-3B") # 多模态输入样例 query = tokenizer.from_list_format([ {&#39;image&#39;: &#39;path/to/image.jpg&#39;}, {&#39;text&#39;: &#39;描述这张图片内容&#39;} ]) inputs = tokenizer(query, return_tensors=&#39;pt&#39;).to(model.device) print(model.generate(**inputs)) ``` #### 五、优化建议 - 启用量化加速(8bit/4bit): ```python model = AutoModelForCausalLM.from_pretrained(..., load_in_4bit=True) ``` - 使用Flash Attention提升推理速度[^3]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小毕超

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

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

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

打赏作者

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

抵扣说明:

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

余额充值