first commit

This commit is contained in:
2026-03-02 23:22:33 +08:00
parent 1c5822d16b
commit c5ae56c463
22 changed files with 606 additions and 462 deletions

View File

@@ -0,0 +1,13 @@
# Qwen3.5-27B Example
本目录保存 Qwen3.5-27B Claude-Opus Distill 的一套已跑通案例,用于后续模型复用时参考。
## 内容
- `docs/`:当时执行的模型专用文档
- `modelscope_upload/`:当时发布用元数据快照
- `artifacts/`:参考产物(如 imatrix
## 说明
该示例主要用于“参数与流程参考”,新模型接入请优先使用根目录 `docs/` 的模板文档。

View File

View File

@@ -0,0 +1,36 @@
# ModelScope 上传 SOPQwen3.5-27B 示例)
## 1. 组装上传目录
示例上传目录:`examples/qwen35_27b/modelscope_upload/`
应包含:
- `README.md`
- `configuration.json`
- `.gitattributes`
- `Qwen3.5-27B-IQ4_KS.gguf`
- `Qwen3.5-27B-IQ5_K.gguf`
- `Qwen3.5-27B-IQ6_K.gguf`
- `Qwen3.5-27B.imatrix.dat`
## 2. 登录与上传
推荐命令(关闭代理):
```bash
./scripts/upload_to_modelscope.sh \
"jiaoyuan/Qwen3.5-27B-Claude-Opus-4.6-Distill-GGUF" \
"<MODELSCOPE_TOKEN>" \
"examples/qwen35_27b/modelscope_upload" \
direct \
"Upload Qwen3.5-27B quantized GGUF"
```
如需代理,第四个参数改为 `proxy`
## 3. 发布后检查
- 页面文件是否完整
- README 是否展示 `tasks``license`
- 是否脱离 preview 状态

View File

@@ -0,0 +1,59 @@
# Qwen3.5-27B 量化手册(示例归档)
本文件是 `examples/qwen35_27b` 的历史实操记录,已按当前仓库结构整理。
## 1. 输入与输出
输入 BF16 GGUF
- `artifacts/qwen35_27b/base_gguf/Qwen3.5-27b-Opus-4.6-Distill-BF16-00001-of-00002.gguf`
输出:
- `artifacts/qwen35_27b/quantized_gguf/Qwen3.5-27B-IQ4_KS.gguf`
- `artifacts/qwen35_27b/quantized_gguf/Qwen3.5-27B-IQ5_K.gguf`
- `artifacts/qwen35_27b/quantized_gguf/Qwen3.5-27B-IQ6_K.gguf`
- `examples/qwen35_27b/artifacts/Qwen3.5-27B.imatrix.dat`
## 2. 校准数据
执行:
```bash
./.venv/bin/python scripts/prepare_calib_data.py --force-refresh
```
混合数据:`calibration/calibration_data_v5_rc_code.txt`4152 blocks
## 3. imatrix
```bash
docker run --gpus all --rm \
--entrypoint sh \
-v /home/zly/project/modelscope_qwen35_27b_quantized:/workspace/models \
-v /home/zly/project/modelscope_qwen35_27b_quantized/calibration/calibration_data_v5_rc_code.txt:/workspace/calib_data.txt \
hotwa/ik:latest \
-c "/llama-imatrix \
-m /workspace/models/artifacts/qwen35_27b/base_gguf/Qwen3.5-27b-Opus-4.6-Distill-BF16-00001-of-00002.gguf \
-f /workspace/calib_data.txt \
-o /workspace/models/examples/qwen35_27b/artifacts/Qwen3.5-27B.imatrix.dat \
--ctx-size 512 -ngl 99 --threads 16"
```
## 4. 量化
示例IQ4_KS
```bash
docker run --gpus all --rm \
--entrypoint sh \
-v /home/zly/project/modelscope_qwen35_27b_quantized:/workspace/models \
hotwa/ik:latest \
-c "/llama-quantize \
--imatrix /workspace/models/examples/qwen35_27b/artifacts/Qwen3.5-27B.imatrix.dat \
/workspace/models/artifacts/qwen35_27b/base_gguf/Qwen3.5-27b-Opus-4.6-Distill-BF16-00001-of-00002.gguf \
/workspace/models/artifacts/qwen35_27b/quantized_gguf/Qwen3.5-27B-IQ4_KS.gguf \
IQ4_KS"
```
`IQ5_K``IQ6_K` 仅替换输出名与量化类型。

View File

@@ -0,0 +1,5 @@
*.gguf filter=lfs diff=lfs merge=lfs -text
*.dat filter=lfs diff=lfs merge=lfs -text
*.md text eol=lf
*.json text eol=lf
.gitattributes text eol=lf

View File

@@ -0,0 +1,76 @@
---
tags:
- text-generation
- qwen
- qwen35
- gguf
- quantization
tasks:
- text-generation
license: Apache License 2.0
---
# Qwen3.5-27B Quantized GGUF (IQ4_KS / IQ5_K / IQ6_K)
## 模型说明
该仓库提供 Qwen3.5-27B 的 GGUF 量化版本,适配 llama.cpp 生态,包含 IQ4_KS、IQ5_K、IQ6_K 三种规格。权重由 BF16 GGUF 输入文件通过 imatrix 方式量化,重点平衡了体积、推理速度与精度表现,适用于不同显存预算下的文本生成任务。
## 权重来源
- 原始 BF16 GGUF 来源:`TeichAI/Qwen3.5-27B-Claude-Opus-4.6-Distill-GGUF`
- 本仓库内容为基于该来源进行 imatrix + GGUF 量化后的发布版本IQ4_KS / IQ5_K / IQ6_K
## 量化方法
本仓库采用 `ik_llama.cpp` Docker 镜像(`hotwa/ik:latest`)进行两阶段量化:
1. 先用 `llama-imatrix` 基于校准语料计算 importance matrix`Qwen3.5-27B.imatrix.dat`
2. 再用 `llama-quantize --imatrix ...` 分别导出 `IQ4_KS``IQ5_K``IQ6_K`
核心量化参数:
- imatrix 输入模型:`Qwen3.5-27b-Opus-4.6-Distill-BF16-00001-of-00002.gguf`
- `--ctx-size 512`
- `-ngl 99`
- `--threads 16`
该流程使用 imatrix 对不同权重的重要性进行建模,可在同等量化位宽下减少关键层信息损失,提升量化后推理稳定性。
## 校准数据来源与选择依据
量化校准文件为 `calibration_data_v5_rc_code.txt`,总计 `4152` blocks构成如下
- `1152` blocks基础校准数据 `calibration_data_v5_rc.txt`
- `2000` blocks`QuixiAI/Code-74k-ShareGPT-Vicuna`
- `1000` blocks`alvarobartt/openhermes-preferences-coding``chosen` 分支)
基础校准数据下载源:
- 社区常用版本:`https://gist.githubusercontent.com/tristandruyen/9e207a95c7d75ddf37525d353e00659c/raw/571fda718462de863e5a0171078c175420c7649a/calibration_data_v5_rc.txt`
- 官方备用源:`https://raw.githubusercontent.com/ggerganov/llama.cpp/master/examples/calibration/calibration_data.txt`
选择这三部分数据的目的:
- 基础数据用于覆盖通用语义与常见文本分布,避免模型只对代码域过拟合
- Code-74k 对话样本提升代码生成、调试、解释等场景的量化保真度
- OpenHermes coding preference 样本提供“更优回答偏好”信号,帮助保持代码输出的结构化与可读性
该组合在“通用文本 + 代码任务”之间做了平衡,适合 Qwen3.5-27B Distill 模型的实际使用场景。
## 文件内容
- `Qwen3.5-27B-IQ4_KS.gguf`:低显存优先
- `Qwen3.5-27B-IQ5_K.gguf`:性能和质量平衡
- `Qwen3.5-27B-IQ6_K.gguf`:更高保真优先
- `Qwen3.5-27B.imatrix.dat`:量化使用的 importance matrix
## 使用建议
- 设备资源紧张时优先 IQ4_KS
- 通用推理场景优先 IQ5_K
- 对质量要求更高时使用 IQ6_K
## 备注
该仓库用于发布可直接推理的 GGUF 权重,不包含训练过程文件。推理时请使用支持 GGUF 的推理框架(如 llama.cpp 相关实现)。

View File

@@ -0,0 +1,10 @@
{
"framework": "ggml",
"task": "text-generation",
"model": {
"type": "qwen35"
},
"pipeline": {
"type": "text-generation"
}
}