Qwen3-Coder-30B-A3B-Instruct 模型的 Ollama 部署指南

本指南介绍如何使用 llama.cpp 和 Ollama 部署 Qwen3-Coder-30B-A3B-Instruct 模型。

环境要求

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

步骤零:直接用转换好的

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

ollama run hopephoto/qwen3-coder-30b-a3b-instruct_q8

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

步骤一:安装依赖

1.1 安装 ModelScope

pip install modelscope

1.2 克隆 llama.cpp 仓库

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

步骤二:下载模型

使用 ModelScope 下载 Qwen3-Coder-30B-A3B-Instruct 模型:

modelscope download --model Qwen/Qwen3-Coder-30B-A3B-Instruct

模型将下载到:C:\Users\HP\.cache\modelscope\hub\models\qwen\Qwen3-Coder-30B-A3B-Instruct

步骤三:转换模型格式

将 Hugging Face 格式转换为 GGUF 格式:

python convert_hf_to_gguf.py "C:\Users\HP\.cache\modelscope\hub\models\qwen\Qwen3-Coder-30B-A3B-Instruct" --outfile models\qwen3-coder-30b-a3b-instruct_q8.gguf --verbose --outtype q8_0

参数说明

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

步骤四:创建 Ollama Modelfile

创建配置文件 Modelfile_qwen3_coder

FROM models/qwen3-coder-30b-a3b-instruct_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: 设置系统提示词

步骤五:在 Ollama 中创建模型

ollama create qwen3-coder-30b-a3b-instruct_q8 -f Modelfile_qwen3_coder

步骤六:验证安装

运行以下命令测试模型:

ollama run qwen3-coder-30b-a3b-instruct_q8

使用示例

代码生成示例

ollama run qwen3-coder-30b-a3b-instruct_q8 "请写一个Python函数来计算斐波那契数列"

代码解释示例

ollama run qwen3-coder-30b-a3b-instruct_q8 "解释这段代码的功能:def quicksort(arr): ..."

性能评估

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

ollama run hopephoto/qwen3-coder-30b-a3b-instruct_q8 "请写一个Python函数来计算斐波那契数列" --verbose

得到的性能评测结果为:

total duration:       1m37.1833561s
load duration:        11.3397894s
prompt eval count:    53 token(s)
prompt eval duration: 2.8421457s
prompt eval rate:     18.65 tokens/s
eval count:           410 token(s)
eval duration:        1m23.0009177s
eval rate:            4.94 tokens/s

故障排除

常见问题

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

性能优化

  • GPU 加速:如果有 NVIDIA GPU,确保安装了 CUDA 支持
  • 内存优化:调整 --ctx-size 参数控制上下文长度

文件结构

llama.cpp/
├── models/
│   └── qwen3-coder-30b-a3b-instruct_q8.gguf
├── Modelfile_qwen3_coder
└── convert_hf_to_gguf.py

注意事项

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

相关资源