Skip to content

Releases: zgsndzq/llama.cpp-qwen38-flash

v0.1.0 - Ternary-Bonsai-2-27B runtime + engine fork

Choose a tag to compare

@zgsndzq zgsndzq released this 15 Oct 16:18

v0.1.0 — Qwen3.8-27B-Flash-MTP

Own your tokens. 一个 27B 三值模型,8 GB 笔记本显卡跑到 70 t/s,无 API、无云端、无账号。

Ternary-quantised Qwen3.8-27B (PTQ1_0) with a built-in MTP self-speculative draft head.
5.79 GB of weights, runs on an 8 GB consumer GPU. Windows x64; Linux builds from source.


这套东西分三处,不是一个压缩包

拿什么 在哪
启动脚本 llmserver.bat / .sh、features.ini、命令行客户端 👉 qwen38-27b-flash-mtp
引擎二进制(本页资产) 这里
权重 Qwen3.8-27B-Flash-MTP.gguf Hugging Face
引擎源码 llama.cpp-qwen38-flash

脚本刻意不放进这个 zip。 它们住在一个真正的 git 仓里,才能被读、被提 PR、被 diff ——
以前只能整包解压才看得到。所以这里的 zip 只含编译产物。


资产

文件 大小 是什么
qwen38-27b-flash-win64-sm89-binaries.zip 566 MB 预编译引擎。只有 build\(bin + cuda),解压进运行包根目录即可
qwen38-27b-flash-src-*.zip 37 MB 同一 commit 的源码快照(给不装 git 的人)

权重不在这里 —— 5.8 GB 的 gguf 在 Hugging Face。


快速开始

git clone https://github.com/zgsndzq/qwen38-27b-flash-mtp
cd qwen38-27b-flash-mtp
  1. 解压 qwen38-27b-flash-win64-sm89-binaries.zip 到当前目录 → 得到 build\bin\ + build\cuda\
  2. 从 Hugging Face 下两个 gguf 放进 weights\
  3. 双击 llmserver.bat

看到 listening on http://127.0.0.1:18080 就好了。

模型文件必须叫 Qwen3.8-27B-Flash-MTP.gguf(或改 llmserver.bat 里的 MODEL=)。
详细说明见运行包仓的 README.md(中文)/ README.en.md(English)。

自己编的人不需要这个 zip:code\_build_q8.bat 把产物写到 build\src\bin\,
启动脚本两个位置都认,优先用你自己编的。


引擎

平台 Windows x64(Linux 见运行包 README,用 CMake 自编)
GPU NVIDIA,compute capability 89(Ada)。86(Ampere)需自行以 CUDA_ARCH=86 重编
上游基线 PrismML-Eng/llama.cpp 的 prism 分支(e8fd209c9)

自带 CUDA 运行时 dll(cublas / cublasLt / cudart / nvrtc / nvJitLink),不需要装 CUDA Toolkit。


这一版有什么

在 PrismML-Eng/llama.cpp 之上加了三层,全部可在运行时开关,默认等于上游行为:

层 内容
速度层 tiered KV cache(--kv-vram-cells)、原地量化 KV 的 flash attention、PTQ1_0 mat-vec 扩到 8 列、--spec-draft-window / -n-max-tail
patch 0039 --spec-lookup-n-max:给 lookup drafter 单独的草稿上限
feature 层 --features-file + features.ini:INI 在参数解析之前应用,改开关不用重编

另外修了上游 #189 那个「量化 V + 短 query 走 f16 MMA」的转折点 —— 在本模型上实测会
让输出退化成重复 token,用一个独立开关拦掉。


已知限制

  • 必须配这个 fork。PTQ1_0 张量类型和 MTP 草稿上下文都是本 fork 才有的;官方 llama.cpp 加载会失败。
  • features.ini 不是可有可无的,也不在二进制里 —— 引擎没有它的内置默认路径,是运行时读的。
    缺了它,自己编出来的二进制跑的是上游行为。见运行包仓。
  • sm_89 二进制。Ampere 用户要自己编(build.local.bat 里 CUDA_ARCH=86)。
  • 仓库是从上游 fork 的,本 fork 的提交历史较浅(上游历史完整)。
  • 自投机(MTP)在 --spec-type 里必须带 draft-mtp-adaptive,否则 MTP 头不参与起草,速度掉一半以上。

许可

  • 引擎:MIT,同上游 llama.cpp
  • 权重(HF 上那部分):Apache 2.0,衍生链为
    Qwen3.8-27B(Alibaba)→ Ternary Bonsai 2 27B(PrismML,三值化)→ Swift Bonsai 2(UkisAI,reasoning-efficiency)→ 本项目(合并 MTP 头并按精度重新打包)

逐层的版权与改动说明见运行包仓的 NOTICE,必填署名 "Created using Bonsai by Prism ML."