llama.cpp 项目发布了构建版本 b10750,重构了键值单元管理以改进序列位置索引和 n-gram 历史查找。
- `get_prev_tokens()` 函数被重建为执行直接查找,而不是在每个 ubatch 上遍历所有已使用的单元。
- 内部索引现在在 `std::set` 中存储 `(pos, cell)` 对,通过新的 `seq_pos_tok_le` 方法实现对数时间检索。
- 此更改消除了对旧窗口查找和 M-RoPE 间隙回退逻辑的需求。
- 在 Qwen3.8-Flash-Next UD-Q4_K_XL 模型、71k 上下文长度的基准测试中,令牌生成速度提高了 4.9%(从 69.3 提升至 72.7 t/s),而预填充性能保持不变。
该优化减少了推理期间的计算开销,从而在长上下文场景中实现更快的文本生成。