La version b10981 de llama.cpp résout des problèmes critiques de correction dans le chemin de décodage d'état du backend OpenVINO, en corrigeant spécifiquement la prise en charge des modèles comme Gemma-4 qui utilisent des tailles de tête par couche. Elle introduit également des optimisations pour l'inférence GPU Mixture of Experts (MoE) et améliore les performances grâce à des réorganisations d'état KV.
- Corrige les échecs de décodage d'état pour Gemma-4 en gérant correctement les comptes de tête par type de couche et les couches à fenêtre glissante.
- Améliore les performances du décodage d'état sur GPU, avec gemma-4-12B passant de 6,27 à 9,11 t/s à une profondeur de 8192.
- Ajoute la prise en charge de GGML_OPENVINO_REQUANT_KQUANT pour sélectionner une cible de requantification 4 bits et GGML_OPENVINO_SPILL_DIR pour déverser les tampons de poids sur le disque.
- Optimise l'inférence GPU MoE en fusionnant le bloc d'expert dans MOECompressed et en requantifiant les experts groupés 8 bits.
- Active les modèles encodeurs sans cache sur NPU en acceptant des vues RoPE QKV packées et en détectant l'attention sans cache à partir de masques.
- Corrige les opérations ADD/SWIGLU_CLAMP de type mixte en convertissant les types d'opérandes non correspondants en f32 pour préserver la précision.
Ces modifications garantissent une inférence précise pour des architectures de modèles complexes comme Gemma-4 tout en fournissant des accélérations mesurables pour le décodage d'état et les charges de travail MoE sur du matériel compatible.