开源llama.cpp Releases·原文 2026年10月3日

llama.cpp b11368为投机解码草稿加入概率采样,默认仍为贪心

llama.cpp发布b11368版本,核心改动来自PR #27694:草稿模型改用概率采样,目标模型用拒绝采样验证,语法约束请求回退到argmax,新增开关默认关闭。

AI解读:llama.cpp在b11368版本中合并了PR #27694,为简单草稿(simple draft)和MTP引入概率采样。

改动方向是让草稿模型按概率分布生成候选,目标模型通过拒绝采样验证,替代原先的贪心草稿方式。

新增一个启用概率草稿采样的标志,默认值为贪心(greedy),即不开启概率采样。

对受语法约束的请求,草稿采样回退到argmax;拒绝采样本身也支持语法约束请求。

其他修复包括:在掩码后重新归一化分布、采样器拷贝时复制随机数生成器、草稿采样器不再共用目标模型的随机数流、在重放时重新接受草稿token、裁剪草稿候选。

该版本还提供多平台二进制,覆盖macOS/iOS、Linux、Android、Windows等,包括CUDA 12/13、Vulkan、ROCm 10.0、OpenVINO、SYCL等构建。

llama.cpp发布b11368版本,合并PR #27694,为简单草稿(simple draft)和MTP加入概率采样。根据变更说明,草稿模型改为概率采样,目标模型用拒绝采样验证。

该功能带有一个启用概率草稿采样的标志,默认值为贪心;对语法约束请求,草稿采样回退到argmax,拒绝采样本身支持语法约束请求。

PR #27694 的具体改动

变更说明列出:让草稿器概率化,目标模型通过拒绝采样验证;在起草前丢弃陈旧的spec_draft_q;为语法约束请求回退到argmax采样,并新增启用概率草稿采样的标志,默认值为贪心;在拒绝采样中支持语法约束请求。

修复项包括:在掩码后重新归一化分布;在采样器拷贝时复制rng,并在重放时重新接受草稿token;修复草稿采样器共用目标模型rng流的问题;简化拒绝采样器的输入并把重放移到服务器端;随草稿一起截断草稿候选。

  • 草稿器概率化,目标模型用拒绝采样验证
  • 起草前丢弃陈旧的spec_draft_q
  • 语法约束请求回退到argmax;拒绝采样支持语法约束请求
  • 新增概率草稿采样标志,默认贪心
  • 掩码后重新归一化分布
  • 采样器拷贝时复制rng,重放时重新接受草稿token
  • 修复草稿采样器共用目标rng流
  • 简化拒绝采样器输入,重放移到服务器端
  • 随草稿截断草稿候选

发布产物范围

b11368提供多平台预编译二进制下载,覆盖macOS/iOS、Linux、Android和Windows。

Linux构建包括Ubuntu x64/arm64/s390x的CPU版本,以及Vulkan、CUDA 12.8、CUDA 13.4、ROCm 10.0、OpenVINO 2026.4、SYCL FP32/FP16等后端;另有面向Snapdragon的Linux arm64包,含CPU、Adreno GPU、Hexagon NPU。

Windows构建包括x64/arm64的CPU版本,以及OpenCL Adreno、CUDA 12.4、CUDA 13.4、Vulkan、OpenVINO 2026.4、SYCL、ROCm 10.0等;Android提供arm64 CPU和Snapdragon版本;iOS提供XCFramework。macOS提供Apple Silicon arm64和Intel x64版本,其中启用KleidiAI的arm64构建在PR #23780 中被禁用,openEuler构建在PR #23705 中被禁用。

  • macOS:Apple Silicon arm64、Intel x64,iOS XCFramework
  • Linux:Ubuntu x64/arm64/s390x CPU,Vulkan,CUDA 12.8/13.4,ROCm 10.0,OpenVINO 2026.4,SYCL FP32/FP16
  • Linux arm64:Snapdragon CPU、Adreno GPU、Hexagon NPU
  • Windows:x64/arm64 CPU,OpenCL Adreno,CUDA 12.4/13.4,Vulkan,OpenVINO 2026.4,SYCL,ROCm 10.0
  • Android:arm64 CPU、Snapdragon
  • 被禁用:macOS KleidiAI arm64构建(PR #23780)、openEuler构建(PR #23705)

信息来源

llama.cpp Releases原始来源