llama.cpp Releases更新于

[预发布 / 持续构建版本] b11436

这是 llama.cpp 的 OpenVINO 后端连续构建,明确标注为“experimental build, not a stable release”。该构建修复 CI 测试与 GPU 回归,包括让 inp_scale_rows 的 token 维度变为动态、对量化类型的 CONCAT 报为不支持,并跳过未选中的图分支、支持 DUP。

预发布 / 持续构建版本:这是实验性构建版本,并非稳定版本。

ggml-openvino: 修复 CI 测试; 修复 GPU 回归问题。(#30037) * ggml-openvino: 跳过未选择的图分支并支持 DUP 上游 #29622 通过 ggml_build_forward_select() 为每个输入 嵌入图添加了混合 token/embd 分支。其节点未被标记为需计算, 但后端仍然对它们进行了转换,并且该分支中的 DUP 不受支持, 因此调度器拆分了图,并以固定的 token 数量将嵌入传递到 拆分边界。随后第一次单 token 解码失败 (CPU 和 GPU 上的 test-thread-safety)。 仅从计算节点构建 OV 模型,并将同类型的连续 DUP 像 CONT 一样进行转换,使图保持在单个后端上。 * ggml-openvino: 使 inp_scale_rows 的 token 维度动态化 #29622 还将每 token 的嵌入缩放(gemma3、gemma3n、 gemma4)移入新的 [1, n_tokens] 输入。为其赋予动态 token 维度, 并在静态(NPU)路径上按块进行填充。 * ggml-openvino: 跳过使用未绑定 Q4_1/Q4_K 权重的 GPU MUL_MAT 算子测试 算子测试将 Q4_1/Q4_K 权重建为带有 f16 零点的 u4。GPU 插件在某些行数下无法编译该形式,报错 "clFinish, error code: -5 CL_OUT_OF_RESOURCES",这会中止 #29869 中添加的 MUL_MAT 用例的 test-backend-ops (例如 m=1000, n=2, k=1024)。模型 权重使用 u4 零点,不受影响。 在插件修复之前,在 GPU 上将这些用例报告为不支持。 算子测试在分配之前会检查支持情况,因此该检查仅匹配未绑定的 权重;模型加载使用虚拟缓冲区进行探测,并将其权重保留在 GPU 上。 * ggml-openvino: 以输出类型创建 FILL translate_fill 总是构建 f32 常量,因此 f16 FILL 会产生 f32 数据,拷贝回写时超出 f16 输出缓冲区。常量改用 输出类型。 * ggml-openvino: 拒绝量化类型的 CONCAT 量化输入在转换时会被反量化,因此后端无法 写入量化的 CONCAT 输出。将其报告为不支持, 如同 CPY 到量化类型的处理。 * ggml-openvino: 处理 build_rs 的单个循环状态 gather #29856 更改了 build_rs,使其在 s_copy 叶节点上通过一次 GET_ROWS gather 所有循环状态,并将 ubatch 和额外状态作为它的视图。 有状态路径此前仅匹配旧形式,即 s_copy 的每个视图对应一次 GET_ROWS, 因此 Qwen3.5 在 CPU 和 GPU 上执行有状态推理时失败 (Concat 中的 "is_axis_valid(axis, r)")。 对于单槽缓存,将 s_copy 叶节点上的 GET_ROWS 视为 活动状态的 gather,保留读取其视图的 reshape 的 rank-4 布局, 并将空额外状态视图的拷贝映射到单槽的余量回写。 不要对空视图的动态维度发出警告。 * openvino: 对齐逐元素操作数秩以规避 GPU 插件缺陷 * openvino: 在 rank-3 有状态图上匹配 MoE 融合 * ggml-openvino: 在 AlignEltwiseOperandRanks 中不要对 RMS 归一化输出做 unsqueeze 该 pass 会对操作数秩不同的 Add/Multiply/Subtract 中 较低秩的操作数做 unsqueeze。在 gemma-3 中,注意力后 残差相加的较低秩操作数是归一化输出,对其进行 unsqueeze 会使 GPU 插件错误地计算该层:gemma-3 在 GPU 上 执行有状态推理时返回空答案。 当较低秩操作数是 RMS 归一化输出时跳过该重写。 * docs : 更新 OpenVINO 已验证模型 --------- Co-authored-by: Mustafa Cavus

网站: - https://llama.app

证明(Attestations): - https://github.com/ggml-org/llama.cpp/attestations/53122299

macOS/iOS: - macOS Apple Silicon (arm64) - macOS Apple Silicon (arm64, 启用 KleidiAI) 已禁用 - macOS Intel (x64) - iOS XCFramework

Linux: - Ubuntu x64 (CPU) - Ubuntu arm64 (CPU) - Ubuntu s390x (CPU) - Ubuntu x64 (Vulkan) - Ubuntu arm64 (Vulkan) - Ubuntu x64 (CUDA 12) - CUDA 12.8 库 - Ubuntu x64 (CUDA 13) - CUDA 13.4 库 - Ubuntu arm64 (CUDA 13) - CUDA 13.4 库 - Ubuntu x64 (ROCm 10.0) - Ubuntu x64 (OpenVINO) - Ubuntu x64 (SYCL FP32) - Ubuntu x64 (SYCL FP16) - Linux arm64 (Snapdragon:CPU、Adreno GPU、Hexagon NPU) - 安装指南

Android: - Android arm64 (CPU) - Android arm64 (Snapdragon:CPU、Adreno GPU、Hexagon NPU) - 安装指南

Windows: - Windows x64(CPU 版) - Windows arm64(CPU 版) - Windows arm64(OpenCL Adreno 版) - Windows x64(CUDA 12 版) - CUDA 12.4 DLL 文件 - Windows x64(CUDA 13 版) - CUDA 13.4 DLL 文件 - Windows arm64(CUDA 13 版) - CUDA 13.4 DLL 文件 - 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 Releases

内容说明

原始发布及相关权利归来源方。

机器翻译 · 请以原文为准