Le projet llama.cpp a publié la version b10750, qui refactorise la gestion des cellules de clé-valeur afin d'améliorer l'indexation des positions de séquence et les recherches dans l'historique des n-grammes.

  • La fonction `get_prev_tokens()` a été reconstruite pour effectuer des recherches directes au lieu de parcourir toutes les cellules utilisées à chaque ubatch.
  • L'index interne stocke désormais des paires `(pos, cell)` dans un `std::set`, permettant une récupération en temps logarithmique via la nouvelle méthode `seq_pos_tok_le`.
  • Ce changement élimine le besoin de l'ancienne logique de recherche par fenêtre et de repli sur les lacunes M-RoPE.
  • Les benchmarks sur Qwen3.8-Flash-Next UD-Q4_K_XL avec un contexte de 71k montrent une augmentation de 4,9 % de la vitesse de génération de tokens (de 69,3 à 72,7 t/s) avec des performances de préremplissage inchangées.

L'optimisation réduit la surcharge computationnelle lors de l'inférence, ce qui se traduit par une génération de texte plus rapide pour les scénarios à contexte long.