AISpot

llama.cpp 修復 -hf 量化標籤誤匹配,不再錯拉 BF16 檔案

llama.cpp releases版本更新地端推論開源

llama.cpp 修復了 -hf 從 Hugging Face 拉取 GGUF 時量化標籤按子串誤匹配的問題。此前 :F16 會在倉庫同時有 BF16 時選中 BF16 檔案,:Q4_XS 也會誤中 IQ4_XS;現在標籤必須從路徑中的 token 邊界開始,並新增下劃線作為邊界,因此 step3p5_flash_Q4_K_S-00001-of-00012.gguf 這類命名可正常匹配 :Q4_K_S。

原標題:b12100
閱讀原文

評分42 / 40(平均 41,門檻 60)
狀態未入選

原文

common : fix -hf tag matching inside longer quant names ( #31620 ) common : fix -hf tag matching inside longer quant names ":F16" picked a BF16 file when the repo had both, since "BF16" contains "F16". The same applied to ":Q4_XS" vs "IQ4_XS". The tag now has to start at a token boundary in the path. Assisted-by: dsh:llama.cpp/ggml-org/GLM-5.3-Flash-GGUF (Mac Studio, M5 Ultra, 256GB) common : accept underscore as -hf tag boundary Some repos separate the quant with an underscore, e.g. stepfun-ai/Step-3.5-Flash-GGUF-Q4_K_S ships step3p5_flash_Q4_K_S-00001-of-00012.gguf, which :Q4_K_S no longer matched. Add _ to the token boundary and pin the tag and default lookup cases. Co-authored-by: Pascal [email protected] Website: https://llama.app Attestations: https://github.com/ggml-org/llama.cpp/attestations/63478879 macOS/iOS: macOS Apple Silicon (arm64) macOS Apple Silicon (arm64, KleidiAI enabled) DISABLED macOS Intel (x64) iOS XCFramework Linux: Ubuntu x64 (CPU) Ubuntu arm64 (CPU) Ubuntu s390x (CPU) Ubuntu 26.04 s390x (CPU) Ubuntu 26.04 s390x (zDNN) Ubuntu x64 (Vulkan) Ubuntu arm64 (Vulkan) Ubuntu x64 (CUDA 12) - CUDA 12.8 libraries Ubuntu x64 (CUDA 13) - CUDA 13.4 libraries Ubuntu arm64 (CUDA 13) - CUDA 13.4 libraries Ubuntu x64 (ROCm 10.0) Ubuntu x64 (OpenVINO) Ubuntu x64 (SYCL FP32) Ubuntu x64 (SYCL FP16) Linux arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Android: Android arm64 (CPU) Android arm64 (Snapdragon: CPU, Adreno GPU, Hexagon NPU) - setup guide Windows: Windows x64 (CPU) Windows arm64 (CPU) Windows arm64 (OpenCL Adreno) Windows x64 (CUDA 12) - CUDA 12.4 DLLs Windows x64 (CUDA 13) - CUDA 13.4 DLLs Windows arm64 (CUDA 13) - CUDA 13.4 DLLs Windows x64 (Vulkan) Windows arm64 (Vulkan) Windows x64 (OpenVINO) Windows x64 (SYCL) Windows x64 (ROCm 10.0) openEuler: DISABLED openEuler x86 (310p) openEuler x86 (910b, ACL Graph) openEuler aarch64 (310p) openEuler aarch64 (910b, ACL Graph) UI: UI

相關報導

llama.cpp releasesAI 評分42

llama.cpp 回退 x86 上 FP16→FP32 的 F16C 最佳化,修復量化核心效能回退

llama.cpp 在 ggml-cpu 中撤銷 x86 上 FP16→FP32 的 F16C 內建轉換,恢復使用查詢表,只保留 FP32→FP16 走 F16C。此前 #30270 把兩種標量轉換都改為 F16C,但 Clang 20.1.8 會把該 intrinsic 編譯成 vpinsrw 合併進量化點積的活躍累加暫存器,導致迴圈序列化:估計每輪 19 週期對 4 週期,實測 Q8_0/Q4_0 的 MUL_MAT_ID 核心慢 45–65%。

llama.cpp releasesAI 評分37

llama.cpp 修復 ARM NEON fp32→fp16 未走硬體指令

llama.cpp 建置 b11761 修復了 ARM NEON 分支只選中 fp16→fp32、漏掉 fp32→fp16 的問題:此前該方向一直靜默回退到軟體實現,已定義的 fcvt 硬體指令無人呼叫。補丁讓該分支同時選中兩個方向,並加入 #error,任何定義了 COMPUTE 宏卻未選中對應實現的平台分支會直接編譯失敗。fp16→fp32 方向按 PR 30343 仍刻意走查表,因此保留 !defined(F16C) 例外;