LocalLLaMA 討論:大模型用 IQ1_S 量化到底行不行
r/LocalLLaMA 上一則帖子以「FP8/BF16 使用者看到有人跑 IQ1_S」為題引發討論。多位使用者認為量化影響取決於用途:創意寫作、閒聊可容忍 IQ1/IQ2,但編碼、複雜推理和結構化 JSON 提取會明顯崩壞。有人實測 Qwen 3.8 27b 後稱 mxfp4/nvfp4 品質接近 Q6,GSQ-RCO 在 IQ3_S、IQ3_XXS 仍可用;也有人認為 Q4_K_M 或 Q5_K_M 是多數模型的甜點區。
依意思最接近的 30 筆
r/LocalLLaMA 上一則帖子以「FP8/BF16 使用者看到有人跑 IQ1_S」為題引發討論。多位使用者認為量化影響取決於用途:創意寫作、閒聊可容忍 IQ1/IQ2,但編碼、複雜推理和結構化 JSON 提取會明顯崩壞。有人實測 Qwen 3.8 27b 後稱 mxfp4/nvfp4 品質接近 Q6,GSQ-RCO 在 IQ3_S、IQ3_XXS 仍可用;也有人認為 Q4_K_M 或 Q5_K_M 是多數模型的甜點區。
LittleBit 專案放出論文官方實現,可把 LLM 權重壓縮到 1.0 至 0.1 bits-per-weight,推理時保持原模型結構不變。ICML 2026 的 LittleBit-2 新增 Joint-ITQ 初始化,通過 --use_itq 開啟,只改初始化、不增加推理開銷,並支援 SmoothSign 量化感知訓練與可選殘差分解。
哈工大(深圳)與新加坡國立大學團隊提出免訓練 2-bit KV Cache 量化框架 QuantWM,面向影片世界模型,實際壓縮最高 6.20 倍。研究指出,現有量化方法在 VBench 等指標上接近 BF16,畫面卻仍有閃爍、模糊和失真,原因是 Key 的量化誤差改變了注意力分數排序,使模型選中不同的歷史幀或影像塊。
llama.cpp 合併 PR #29717,為 Hexagon 後端新增 q2_k 和 q3_k 兩種量化型別支援,並統一了 src1_row_size 的分配方式。該改動由高通工程師 Max Krasnyansky 參與提交,面向在驍龍 Hexagon NPU 上執行本地推理的使用者,相關建置覆蓋 Linux arm64 與 Android arm64 的 Snapdragon CPU、Adreno GPU、Hexagon NPU 組合。
llama.cpp 建置 b11685 合入 #29696,為 SYCL 後端在 q4_K/q5_K 權重的反量化中加入寬儲存(wide stores),以提升該後端上的推理效率。該版本照常覆蓋 macOS/iOS、Linux、Android 與 Windows,含 CUDA 12/13、Vulkan、ROCm 10.0、OpenVINO、SYCL FP32/FP16 以及 Snapdragon 的 CPU、Adreno GPU、Hexagon NPU 等建置。
llama.cpp 發布 b11489,為 Hexagon NPU 的 Q6_K 權重反量化帶來加速,做法是再增加 2 倍迴圈展開,改動由 OpenCode 協助完成。該版本繼續提供 macOS/iOS、Linux、Android、Windows 多平台預編譯包,Snapdragon 版本可分別使用 CPU、Adreno GPU 與 Hexagon NPU,Windows arm64 另有 OpenCL Adreno 建置;
llama.cpp 合併 PR #29483,為 WebGPU 的 MMVQ 路徑新增 Q1_0、Q5_0、Q5_1、Q3_K、Q5_K、Q6_K 和 MXFP4 量化支援,併為 Q1_0 引入 K_QUANTS_HANDLING 宏。該改動擴充套件了 WebGPU 後端可加速的量化模型範圍,相關建置覆蓋 macOS、Linux、Windows、Android 及 openEuler 等多個平台。
llama.cpp 發布 b11713,CUDA 後端針對低位元型別的 MMVQ 矩陣乘向量計算提速,同時修復 HIP 在 small nwarps GCN 上 Q3_K(ncols=2、3)與 Q6_K(ncols=4)的問題。
llama.cpp 合併 PR #29817,修復 ggml-quants 中 qkx3 量化縮放搜尋的非法舍入問題:當 imatrix 擬合的最小值塌縮為最大值或範圍極小時,會產生無窮、NaN 或越界值,傳入 nearest_int 後可能觸發 Debug 建置斷言。修復方式是在舍入前把量化級別鉗制到 [0, nmax],並新增 q2_K、q4_K、q5_K、q4_1、q5_1 的退化 imatrix 組迴歸測試,對應 issue #29804。
llama.cpp 的 Hexagon 後端新增 tiled Q4_K 與 Q6_K 的 GET_ROWS 支援,使驍龍 Hexagon NPU 能對這兩種量化格式執行嵌入查表,同一提交還修正了 Q4_K 檢視的校驗邏輯。改動由 OpenCode 協助完成,已隨本次建置發布,覆蓋 Android arm64 與 Linux arm64 的 Snapdragon CPU、Adreno GPU、Hexagon NPU 組合包。
llama.cpp 建置 b11558 修復了 OpenCL 後端處理 Q4_K 量化權重時的映象大小限制:當權重映象超出裝置限制時改為回退,而不是直接失敗。同一批提交還修正了 q4_0 的廣播邏輯,並避免 rms_norm 中出現不完整的子組計算,提交者來自高通(qti.qualcomm.com)。
MLX 發布 0.32.4,Metal 後端新增 1-bit 仿射量化支援,mlx.core.fft 新增 stft 與 istft 音訊變換運算元。同版本加入 Python 3.15 與 3.15t 支援、整數整除原語 FloorDivide、SDPA 與 gated delta net 的 VJP,並新增 MLX_CONV_WINOGRAD 開關以停用 conv2d 的 Winograd 實現。
開發者 roofkid 發布 Ninfer 4080,在 RTX 4080 16GB 上以 100k 上下文執行 ISTA-DASLab-Qwen-3.8-27B-GSQ,實測最高 prefill 2720 tok/s、生成 262 tok/s。專案採用 DFlash2 推測解碼與 KV 壓縮,程式碼已在 GitHub 開源並提供 Docker 映象。
llama.cpp 建置 b11741 在 OpenCL 後端為 q4_0、q4_k、q6_k 三種量化格式加入 cooperative-k dp4a GEMM,並修復對齊問題。這意味著在 OpenCL 上執行這些 4bit、6bit 量化模型的裝置可以用上新的矩陣乘實現。該版本同時更新了 macOS、Linux、Windows、Android 多平台建置,覆蓋 CUDA 12/13、ROCm 10.0、Vulkan、SYCL 等後端。
llama.cpp 建置 b11717 為高通 Hexagon NPU 後端加入 Hadamard 變換的 MUL_MAT 與 GET_ROWS,覆蓋 flat 與 tiled 兩種佈局的 Q1_0、Q2_0 量化,並新增 hex-hadamard 運算元。同一提交還減少了 q8_1 量化器與 vec_dot_q1 的資料包數量。
Reddit 的 r/LocalLLaMA 版塊一則帖子被版主以違反第 3 條規則為由刪除,評論區仍在討論 8GB 視訊記憶體加 16GB 記憶體的低配硬體如何跑本地模型。有使用者提到 32GB 記憶體加 12GB 視訊記憶體可執行 LFM2.5,也有人建議 Ling 3.0 tiny 或 Gemma 配合 mmap。另有評論稱專家快取即將進入 llama.cpp,未來或支援從磁碟流式載入專家。
llama.cpp 建置 b11716 為高通 Hexagon NPU 新增 Q1_0、Q2_0 兩種低位元量化的支援,其中 Q1_0 權重已可在 2D HMX MUL_MAT 路徑中啟用。同一批提交還改寫了分塊(tiling)實現、去掉迴圈內除法、最佳化 Q1_0 佈局以降低解包與 vrmpy 開銷,並修正 MUL_MAT_NX 對正方形分塊的假設,因為 Q1/Q2 使用非正方形分塊。
llama.cpp 建置版本 b11541 在 OpenCL 後端新增兩個 MoE 矩陣乘二進位制核心:kernel_gemm_moe_q4_k_q8_1_dp4a_bin 與 kernel_gemm_moe_q6_k_q8_1_dp4a_bin,分別處理 Q4_K、Q6_K 量化權重搭配 Q8_1 啟用的乘法,並用 dp4a 整數點積指令加速。這類核心主要服務於在 Adreno GPU 等 OpenCL 裝置上執行 MoE 量化模型的場景。
llama.cpp 的 HIP 後端把 64 行/128 執行緒的 MMQ tile 擴充套件到更多量化型別與 J 值組合,覆蓋 RDNA3.5(gfx115x);此前該配置只在 J≤32 時使用,更大的 tile 會佔滿 LDS,無法讓每個 CU 再容納一個工作組。在 gfx1151 上對 100 個 MUL_MAT 形狀做三輪測試,中位提升 2.1%、最佳 26.0%,5 個 MUL_MAT_ID 形狀中位提升 8.0%。J=96 因未獲益被明確排除,其餘條目保持不變。
Ollama 發布 v0.40.6 預發布版,GGUF 格式新增 q2_0 張量與檔案型別,為更低位元的模型量化提供支援。該版本還修復了 Windows 上 runner 程序殘留(孤兒程序)的問題,並在 Ollama 雲端上線 clef,同時把 --ask 模式的提問鍵改為識別符號。更新由 jmorganca、dhiltgen、jberg5 提交,共 1 個 commit。
llama.cpp 發布 b11446,Metal 後端修復量化 flash attention 中 threadgroup memory 超額佔用的問題,對應 PR #29340。
llama.cpp 建置 b11620 修復了 OpenCL 後端 q8_0 dp4a 路徑下 MoE 矩陣乘法(MUL_MAT_ID)與 GEMM 的最小值處理錯誤,避免量化 MoE 模型在 GPU 上算出錯誤結果。同一批改動還讓 Adreno GPU 直接拒絕 PREC_F32 的 MUL_MAT_ID,不再走不支援的精度路徑。
Ollama 上線 NVIDIA Nemotron 3.5 Bolt 74B-A9B,官方稱其採用原生 2-bit 量化,可壓進 24GB 記憶體,並能與其他應用同時執行。該模型是視覺語言模型(VLM),定位是在本地處理日常 agentic 任務。執行 ollama run nemotron-3.5-bolt 即可拉取執行。
llama.cpp 發布 b11718,恢復 FFN 路徑上的 ESIMD 核心,並將 FFN 路徑的 ESIMD 融合擴充套件到 Q8_0 量化。該改動由 Intel 的 Todd Malsbary 提交,同時移除了 test-backend-ops 中顯式引用 ESIMD 的註釋。
llama.cpp 合併 PR #29639,為 Vulkan 後端加入針對量化 K/V 快取的稀疏 Flash Attention,並把稀疏 FA 的索引壓縮改為單次掃描。原實現每行 mask 用一個 workgroup、按 BLOCK_SIZE 分塊各做一次掃描,解碼時單個 workgroup 要跑 KV/1024 次受 barrier 限制的迭代,128k 單元格下開銷超過它服務的稀疏注意力本身。
llama.cpp 發布 b11564 建置,Vulkan 後端為 CM2 matmul 專門化量化塊大小,並改用三元表示式避免 switch 降低帶來的開銷,同時澄清了相關注釋。該版本照例附帶全平台建置,涵蓋 macOS/iOS、Linux、Windows、Android 與 openEuler,包括 CUDA 12/13、ROCm 10.0、Vulkan、SYCL、OpenVINO 等後端。
llama.cpp 發布 b11515,主要變更是 SYCL 後端為 Q5_K 量化補上重排佈局的 MMVQ 核心,並加入融合 GLU(#29375),面向 Intel GPU 的量化推理。建置矩陣照舊覆蓋 macOS/iOS、Linux、Windows、Android 與 openEuler,包含 CUDA 12/13、ROCm 10.0、Vulkan、OpenVINO、SYCL FP32/FP16 等後端;
llama.cpp 的 Metal 後端將通用 few-row MMA 矩陣乘法核心擴充套件到更多權重量化型別,BF16、Q1_0、Q2_0、MXFP4、Q2_K、Q3_K、TQ2_0 及 IQ 系列現已納入。該核心適用於任何帶 16-weight 反量化器的型別,各型別從在 M3 Ultra 上能勝過現有核心的行數起啟用:TQ2_0 為 5 行,BF16 為 4 行,MXFP4、Q2_0、Q2_K、IQ4_NL 為 3 行,其餘為 2 行。
llama.cpp 發布建置 b11604,為 KleidiAI 加入 SME2 指令集的 Q4_K 與 Q6_K 矩陣乘支援,補丁編號 #29219,提交者來自 Arm。SME2 屬於 Armv9 的矩陣擴充套件,這項改動面向支援該指令集的 Arm CPU,用於加速這兩種常用量化格式的矩陣乘法。同一版本中,macOS Apple Silicon 的 KleidiAI 啟用建置被標記為 DISABLED,openEuler 也有一項標註 DISABLED;
llama.cpp 建置 b11582 引入 ggml-zdnn 的 Q8_0 矩陣乘法原型,由 IBM 的 Aaron Teo 提交,並同步更新了 zdnn 文件。zdnn 面向 IBM Z(s390x)平台,目前這一支援仍屬初步原型。