ToolNavs Outils IA à découvrir
Proposer Connexion
Retour à Encyclopédie de l’IA
Décodage spéculatif : le petit modèle devine, le grand vérifie

Décodage spéculatif : le petit modèle devine, le grand vérifie

Encyclopédie de l’IA • Admin • • 8 vues

Le décodage spéculatif (Speculative Decoding) accélère la génération de texte des grands modèles : un modèle brouillon, beaucoup plus petit, devine d'abord les prochains jetons, puis le grand modèle vérifie ces propositions en un seul passage parallèle. Les bonnes sont conservées, la première erreur est corrigée. On modifie l'ordre de génération et la répartition du calcul, pas le grand modèle lui-même. Dans une implémentation standard, la distribution finale reste donc identique à celle d'une génération jeton par jeton : plus rapide, sans perte de qualité.

Pourquoi la génération jeton par jeton est lente

Chaque jeton exige un passage complet dans tout le modèle. Or, pour un seul jeton, ce qui prend le plus de temps n'est souvent pas le calcul, mais le chargement des paramètres, énormes, depuis la mémoire. Le matériel passe donc une grande partie du temps à attendre les données. Ne valider qu'un jeton par chargement de paramètres, c'est là que se situe le gaspillage.

Celui qui devine, celui qui vérifie

Le procédé comporte deux étapes. Le modèle brouillon — souvent quelques dizaines de fois plus petit que le modèle cible — propose d'un coup quatre à huit jetons candidats. Le grand modèle les traite ensuite en parallèle avec le contexte et compare chaque position à sa propre distribution de probabilité. Les propositions correctes sont toutes acceptées. À la première position fausse, le grand modèle rééchantillonne un jeton selon sa propre distribution, les candidats restants sont abandonnés, et le tour suivant repart de là. Comme la vérification se fait en un seul passage parallèle, un unique chargement des paramètres valide plusieurs jetons à la fois.

Le gain réel dépend du taux d'acceptation du brouillon. Les textes prévisibles — complétion de code, réponses au format fixe, continuations fidèles au contexte — sont souvent acceptés et générés deux à trois fois plus vite. Les textes imprévisibles sont rejetés plus souvent, et le bénéfice diminue.

Ni quantification, ni distillation

Deux autres techniques d'accélération sont souvent confondues avec celle-ci. La quantification stocke les paramètres en précision réduite : le modèle devient plus petit, mais la qualité de sortie varie légèrement. La distillation fait apprendre à un petit modèle les sorties d'un grand, et c'est l'élève lui-même qui est déployé, plafond de capacité compris. Dans le décodage spéculatif, le petit modèle ne fait que brouillonner ; la décision finale revient toujours au grand modèle, d'où une accélération sans perte. En contrepartie, il faut faire tourner deux modèles à la fois : davantage de mémoire, et une relation d'alignement à entretenir.

Quand cela n'aide guère

Si le modèle brouillon a des habitudes trop éloignées du modèle cible, le taux d'acceptation tombe près de zéro — d'où l'usage, en pratique, d'un petit modèle de la même famille ou d'une tête de brouillon entraînée spécialement. Le bénéfice s'estompe aussi en cas de forte concurrence : quand de nombreux utilisateurs sollicitent le GPU en même temps, c'est le calcul lui-même qui devient le goulot, plus le chargement mémoire. La technique brille surtout en usage individuel ou à faible concurrence. Enfin, elle ne raccourcit pas l'attente du tout premier jeton : c'est la suite qui s'accélère.

Les options de modèle brouillon et d'échantillonnage spéculatif des outils de déploiement local, ainsi que les réglages équivalents des frameworks de service comme vLLM, reposent tous sur ce mécanisme « deviner puis vérifier ». Une règle à retenir pour le réglage : choisir un brouillon de la même famille que le modèle principal, ne pas abuser de la longueur de devinette, et privilégier le taux d'acceptation plutôt que la longueur du pas.

Outils Recommandés

Plus