Qwen3-4B-2507 模型的 Ollama 部署指南

  • 昨天千问发布了最新的Qwen3-4b-Instruct-2507 和Qwen3-4b-Thinking-2507 模型,有如下两个亮点:
    1. Qwen3-4B-Instruct-2507 的通用能力超越了商业闭源的小尺寸模型 GPT-4.1-nano,与中等规模的 Qwen3-30B-A3B(non-thinking)性能接近。
    2. Qwen3-4B-Thinking-2507 的推理表现可媲美中等模型 Qwen3-30B-Thinking,在聚焦数学能力的 AIME25 测评中以4B参数获81.3分;且通用能力相关评测均超越了更大尺寸的Qwen3-30B-Thinking模型。

本指南介绍如何使用 llama.cpp 和 Ollama 部署 Qwen3-4b-Instruct-2507 和Qwen3-4b-Thinking-2507 模型。

## 直接用转换好的

模型已转换好,直接使用 Ollama 运行即可。

bash ollama run hopephoto/qwen3-4b-thinking-2507_q8 # 推理模型 ollama run hopephoto/qwen3-4b-instruct-2507_q8 # 指令模型

大概需要8G左右的磁盘空间。

## 性能评估

在 AMD 7950X + 128G DDR5 RAM + 4060 GPU 8GRAM 的配置的笔记本电脑上运行。

推理模型的评估命令为:

bash ollama run hopephoto/Qwen3-4B-Thinking-2507_q8 "请写一个Python函数来计算斐波那契数列" --verbose

得到的性能评测结果为:

total duration: 1m20.0929826s load duration: 3.9914417s prompt eval count: 26 token(s) prompt eval duration: 518.139ms prompt eval rate: 50.18 tokens/s eval count: 3032 token(s) eval duration: 1m15.5805682s eval rate: 40.12 tokens/s

指令模型的评估命令为:

bash ollama run hopephoto/Qwen3-4B-Instruct-2507_q8 "请写一个Python函数来计算斐波那契数列" --verbose

得到的性能评测结果为:

total duration: 13.281791s load duration: 3.6564452s prompt eval count: 53 token(s) prompt eval duration: 268.922ms prompt eval rate: 197.08 tokens/s eval count: 394 token(s) eval duration: 9.3551987s eval rate: 42.12 tokens/s

不出意外,4B模型,Q8量化,显存占用不足6G,4060上达到了40tokens/s。

## 自行转换

  • Python 3.10+
  • Git
  • Ollama
  • 足够的磁盘空间(约30GB+,单个模型本体大约7.5G,q8量化后大约4G)

## 步骤一:安装依赖

### 1.1 安装 ModelScope

bash pip install modelscope

### 1.2 克隆 llama.cpp 仓库

bash git clone https://github.com/ggml-org/llama.cpp cd llama.cpp

## 步骤二:下载模型

使用 ModelScope 下载 Qwen3-4B-2507 模型:

bash modelscope download --model Qwen/Qwen3-4B-Thinking-2507 # 推理模型 modelscope download --model Qwen/Qwen3-4B-Instruct-2507 # 指令模型

推理模型和指令模型的下载的默认位置分别如下,注意将用户名 替换成实际的用户名。

C:\Users\用户名\.cache\modelscope\hub\models\qwen\Qwen3-4B-Thinking-2507

C:\Users\用户名\.cache\modelscope\hub\models\qwen\Qwen3-4B-Instruct-2507

## 步骤三:转换模型格式

将 Hugging Face 格式转换为 GGUF 格式,注意将用户名 替换成实际的用户名。

```bash python convert_hf_to_gguf.py "C:\Users\用户名.cache\modelscope\hub\models\qwen\Qwen3-4B-Thinking-2507" --outfile models\qwen3-4b-thinking-2507_q8.gguf --verbose --outtype q8_0 # 推理模型

python convert_hf_to_gguf.py "C:\Users\用户名.cache\modelscope\hub\models\qwen\Qwen3-4B-Instruct-2507" --outfile models\qwen3-4b-instruct-2507_q8.gguf --verbose --outtype q8_0 # 指令模型 ```

### 参数说明

  • --outfile: 输出文件路径
  • --verbose: 显示详细转换信息
  • --outtype q8_0: 量化类型,q8_0 提供较好的质量与大小平衡

## 步骤四:创建 Ollama Modelfile

创建配置文件 Modelfile_qwen3_coder_thinking用于推理模型:

```dockerfile FROM models/qwen3-4b-thinking-2507_q8.gguf

TEMPLATE """<|im_start|>system {{ .System }}<|im_end|> <|im_start|>user {{ .Prompt }}<|im_end|> <|im_start|>assistant """

PARAMETER stop "<|im_end|>" PARAMETER stop "<|im_start|>"

SYSTEM """你是Qwen,由阿里云开发的AI助手。你对用户的问题和请求总是有帮助、准确和诚实的。""" ```

创建配置文件 Modelfile_qwen3_coder_instruct用于指令模型:

```Dock FROM models/qwen3-4b-instruct-2507_q8.gguf

TEMPLATE """<|im_start|>system {{ .System }}<|im_end|> <|im_start|>user {{ .Prompt }}<|im_end|> <|im_start|>assistant """

PARAMETER stop "<|im_end|>" PARAMETER stop "<|im_start|>"

SYSTEM """你是Qwen,由阿里云开发的AI助手。你对用户的问题和请求总是有帮助、准确和诚实的。""" ```

### 配置说明

  • FROM: 指定模型文件路径
  • TEMPLATE: 定义对话模板,使用 Qwen 特定的格式
  • PARAMETER stop: 设置停止标记
  • SYSTEM: 设置系统提示词

### 文件结构

text llama.cpp/ ├── models/ │ └── Qwen3-4B-Thinking-2507_q8.gguf │ └── Qwen3-4B-Instruct-2507_q8.gguf ├── Modelfile_qwen3_coder_thinking ├── Modelfile_qwen3_coder_instruct └── convert_hf_to_gguf.py

## 步骤五:在 Ollama 中创建模型

```bash ollama create Qwen3-4B-Thinking-2507_q8 -f Modelfile_qwen3_coder_thinking

ollama create Qwen3-4B-Instruct-2507_q8 -f Modelfile_qwen3_coder_instruct ```

## 步骤六:验证安装

运行以下命令测试模型:

bash ollama run Qwen3-4B-Thinking-2507_q8 ollama run Qwen3-4B-Instruct-2507_q8

## 使用示例

### 代码生成示例

```bash ollama run Qwen3-4B-Thinking-2507_q8 "请写一个Python函数来计算斐波那契数列"

ollama run Qwen3-4B-Instruct-2507_q8 "请写一个Python函数来计算斐波那契数列" ```

### 代码解释示例

```bash ollama run Qwen3-4B-Thinking-2507_q8 "解释这段代码的功能:def quicksort(arr): ..."

ollama run Qwen3-4B-Instruct-2507_q8 "解释这段代码的功能:def quicksort(arr): ..." ```

## 故障排除

### 常见问题

  1. 转换失败:确保有足够的磁盘空间和内存
  2. Ollama 创建失败:检查 Modelfile 路径是否正确
  3. 运行缓慢:考虑使用更小的量化级别(如 q4_0)

## 注意事项

  1. 确保有足够的磁盘空间
  2. 转换过程可能需要较长时间,请耐心等待
  3. 量化级别影响模型质量和大小,可根据需求调整

## 相关链接

Category: LLM
Category
Tagcloud
Translation 蓝牙 Lesson Scholar ChromeBook Raspbian NAS Life Cursor Science Linux Discuss VirtualBox Hardware Hackintosh Hadoop Virtualization QEMU Code Generation IDE HBase GIS Kivy Lens Xcode Photography Python VTK Disease Story Microscope Library VisPy Junck Learning Mac Shit Qwen3 Download Photo Communicate Data Pyenv Moon Software RTL-SDR University Hack Conda Translate 音频 GlumPy FuckChunWan OpenCL macOS 耳机 Game PyOpenCL Memory Hate CUDA Poem Radio Ollama GeoPython Programming QGIS MayaVi Chat Windows11 Camera Server QT Telescope FuckZhihu Visualization Mount&Blade Video RaspberryPi FckZhiHu Geology Book AI PHD DIY