Draft Model (Modèle de Brouillon)
Un draft model (ou modèle de brouillon) est un modèle de langage petit et rapide utilisé dans le décodage spéculatif pour proposer plusieurs tokens candidats à l’avance, que le modèle principal (target model) vérifie ensuite en un seul forward pass afin d’accélérer l’inférence.
- Rôle
- Proposer rapidement des tokens candidats pour le décodage spéculatif
- Taille typique
- 5x à 50x plus petit que le modèle cible
- Exemples classiques
- Llama-8B (draft) → Llama-70B (cible), GPT-2 Small → GPT-4
- Alternatives modernes
- EAGLE (draft head greffé), Medusa (têtes parallèles), LayerSkip (self-draft)
- Métrique clé
- Taux d’acceptation (α) : % de tokens draft acceptés par le modèle cible
- Speedup possible
- 1,5x à 6,5x selon la méthode et le taux d’acceptation
- Frameworks
- vLLM, SGLang, TensorRT-LLM, AWS SageMaker
Pourquoi les LLM ont besoin d’un draft model
L’inférence des LLM souffre d’un paradoxe : les GPU modernes disposent d’une puissance de calcul colossale, mais le décodage autorégressif (un token à la fois) sous-utilise cette puissance. Chaque nouveau token nécessite un forward pass complet à travers le modèle, et la majorité du temps est passée à transférer les poids depuis la mémoire GPU (HBM) vers les unités de calcul. On parle de workload memory-bound.
L’idée du décodage spéculatif, inspirée de l’exécution spéculative des processeurs, consiste à prédire plusieurs tokens à l’avance puis à vérifier ces prédictions en parallèle. Le draft model est la pièce maîtresse de ce mécanisme : c’est lui qui génère les propositions.
L’observation fondamentale est la suivante : vérifier K tokens en parallèle avec un Transformer coûte à peine plus cher que d’en vérifier un seul, car l’attention traite naturellement toutes les positions simultanément. Si le draft model propose 5 tokens et que le modèle cible en accepte 4, on a généré 4 tokens pour le coût d’un seul forward pass de vérification, plus le coût (faible) des 5 forward passes du draft.
Fonctionnement du draft model dans le décodage spéculatif
Le cycle draft-then-verify
Le décodage spéculatif fonctionne en cycles répétés de deux phases :
Phase 1 : Draft (brouillon). Le draft model génère autoregressivement K tokens candidats. Comme il est beaucoup plus petit que le modèle cible, cette étape est rapide. Par exemple, Llama 3.2 3B génère un token environ 10x plus vite que Llama 3.3 70B sur le même matériel.
Phase 2 : Verify (vérification). Le modèle cible reçoit la séquence existante plus les K tokens candidats, et calcule les distributions de probabilité pour chaque position en un seul forward pass. Un algorithme de rejection sampling compare les distributions du draft et du target. Les tokens dont la distribution du draft correspond suffisamment à celle du target sont acceptés ; le premier token rejeté et tous les suivants sont supprimés, et le target génère un token de remplacement.
Ce mécanisme garantit que la distribution finale du texte généré est mathématiquement identique à celle du décodage standard. Le draft model accélère le processus sans jamais compromettre la qualité.
Le rejection sampling : garantie de qualité
L’algorithme de rejection sampling est ce qui rend le décodage spéculatif « lossless » (sans perte). Pour chaque token candidat à la position i, on compare la probabilité p(x) assignée par le draft model à la probabilité q(x) assignée par le target model :
Si p(x) ≤ q(x), le token est accepté avec probabilité q(x)/p(x). Si p(x) > q(x), le token est rejeté avec probabilité 1 – q(x)/p(x), et un nouveau token est échantillonné à partir de la distribution corrigée. Dès qu’un token est rejeté, tous les tokens suivants dans la séquence draft sont également rejetés.
Cette procédure, formalisée par Leviathan et al. (2022) chez DeepMind, garantit que chaque token accepté suit exactement la distribution du modèle cible, que l’on utilise le greedy decoding, le top-k, le top-p, ou toute autre stratégie d’échantillonnage.
Les différents types de draft models
Draft model indépendant (approche classique)
L’approche historique consiste à utiliser un modèle plus petit de la même famille comme draft. Par exemple :
| Modèle cible | Draft model classique | Ratio de taille |
|---|---|---|
| Llama 3.3 70B | Llama 3.2 3B | ~23x |
| Llama 3.1 405B | Llama 3.1 8B | ~50x |
| GPT-4 / GPT-5.x | Modèle interne plus petit | Variable |
| Mixtral 8x7B | Mistral 7B | ~7x (params actifs) |
L’avantage : c’est simple à mettre en place. L’inconvénient majeur : le draft model fonctionne indépendamment du modèle cible. Il ne réutilise aucune représentation interne, ce qui limite le taux d’acceptation et gaspille de la mémoire GPU (il faut maintenir deux sets de poids et deux KV caches séparés).
Une étude approfondie de plus de 350 expériences avec LLaMA-65B et OPT-66B a révélé un résultat contre-intuitif : la performance d’un draft model en décodage spéculatif dépend principalement de sa latence (vitesse brute), et non de sa capacité de modélisation du langage. Un draft model plus rapide mais moins « intelligent » peut surpasser un draft plus gros et plus précis, car les gains de vitesse compensent le taux d’acceptation plus faible.
Draft head greffé (EAGLE et variantes)
EAGLE a révolutionné le concept de draft model en le réduisant à une simple « tête » de 1 à 2 couches Transformer, greffée directement sur les couches internes du modèle cible. Au lieu de maintenir un modèle séparé, le draft head réutilise les représentations (features) calculées par le target pendant l’inférence.
Les avantages sont considérables. La consommation mémoire du draft est négligeable. Le taux d’acceptation est bien meilleur car le draft travaille à partir des features riches du modèle cible. Et la latence du drafting est minimale puisqu’on ne traverse que 1 à 2 couches au lieu de dizaines.
EAGLE-3, la dernière version (NeurIPS 2025), atteint des speedups allant jusqu’à 6,5x, soit environ le double de l’approche classique à deux modèles.
Self-speculative decoding (auto-draft)
L’approche self-speculative élimine complètement le besoin d’un modèle ou module séparé. Le modèle cible sert lui-même de draft en utilisant ses propres couches de manière partielle :
LayerSkip (Meta, ACL 2024). L’idée est que les couches superficielles d’un LLM suffisent souvent à prédire les tokens « faciles ». Pendant le drafting, seules les E premières couches sont exécutées, et leur sortie passe directement à la tête LM. Pendant la vérification, les couches restantes complètent le calcul. L’avantage principal : le KV cache des couches partagées est réutilisé entre les phases draft et verify, ce qui réduit la mémoire et le calcul.
SWIFT (ICLR 2025). Méthode plug-and-play qui sélectionne adaptativement les couches à sauter pendant l’inférence, sans entraînement supplémentaire. SWIFT analyse la sparsité des couches pour chaque tâche et obtient des speedups de 1,3x à 1,6x tout en préservant la distribution.
CLaSp (ACL 2025). Va plus loin que SWIFT en ajustant dynamiquement l’ensemble des couches sautées à chaque round de décodage, en utilisant les informations de la vérification précédente pour optimiser le prochain tour.
Têtes de prédiction parallèles (Medusa)
Medusa prend une approche différente : au lieu de générer les tokens candidats autoregressivement, elle ajoute plusieurs têtes de prédiction en parallèle au modèle cible. Chaque tête prédit le token à une position future différente (+1, +2, +3…) simultanément. Les prédictions sont combinées en un arbre de candidats qui est vérifié en un seul pass.
L’inconvénient principal de Medusa est qu’elle ne fournit pas de garantie mathématique de préservation de la distribution (contrairement à EAGLE et aux approches draft-verify classiques). Cela peut ou non être important selon votre cas d’usage.
Draft récurrent (ReDrafter, Apple)
Apple Research a développé ReDrafter (Recurrent Drafter), qui utilise un petit réseau récurrent (RNN) conditionné sur les hidden states du LLM comme draft model. Combiné à un algorithme d’attention arborescente dynamique et à de la distillation de connaissances depuis le LLM, ReDrafter atteint des speedups allant jusqu’à 2,8x sur H100 et 2,3x sur Apple Silicon (Metal GPU).
Comment choisir son draft model
Les métriques qui comptent
Le choix d’un draft model repose sur trois métriques interdépendantes :
Taux d’acceptation (α). La probabilité qu’un token draft soit accepté par le modèle cible. Un α élevé signifie plus de tokens acceptés par round, moins de forward passes du modèle cible, et donc plus de speedup. Un α de 0,8 signifie qu’en moyenne, sur une séquence de 5 tokens draft, environ 4 seront acceptés.
Longueur d’acceptation (τ). Le nombre moyen de tokens acceptés par round de décodage. C’est le produit du taux d’acceptation et de la longueur de draft (K). Augmenter K augmente potentiellement τ mais au prix d’une latence de draft plus élevée.
Latence du draft. Le temps que met le draft model à générer ses K tokens candidats. Une étude majeure a démontré que la latence du draft est le facteur le plus déterminant pour le speedup final. Un draft rapide avec un taux d’acceptation moyen surpasse souvent un draft lent avec un meilleur taux d’acceptation.
| Taux d’acceptation (α) | Impact sur le speedup | Action recommandée |
|---|---|---|
| > 0,8 | Excellent (2x à 6x) | Le draft model est bien aligné, déployer en production |
| 0,6 à 0,8 | Bon (1,5x à 3x) | Envisager un fine-tuning du draft sur vos données |
| 0,4 à 0,6 | Modéré (1,2x à 1,5x) | Fine-tuning nécessaire ou changement de stratégie de draft |
| < 0,4 | Faible voire contre-productif | Le draft model n’est pas adapté à votre workload |
Facteurs influençant la performance
Similarité de distribution. Plus le draft model ressemble au target dans ses prédictions, plus le taux d’acceptation est élevé. Utiliser un modèle de la même famille (ex. Llama 3.2 3B pour Llama 3.3 70B) aide, mais ce n’est pas suffisant pour les workloads spécialisés.
Domaine des données. Un draft model entraîné sur des conversations de type chat performera moins bien sur de la traduction ou du code spécialisé. Les benchmarks montrent que les gains varient considérablement selon la tâche : EAGLE obtient d’excellents résultats sur le RAG et le raisonnement mathématique, mais des performances médiocres sur la traduction allemand-anglais.
Stratégie de décodage. Le nucleus sampling (top-p) et le random sampling entraînent des taux d’acceptation plus faibles que le greedy decoding, car l’espace de prédiction est plus large et donc plus difficile à anticiper.
Batch size. Le décodage spéculatif est optimal à faible concurrence. Au-delà d’un batch size de 8, les gains diminuent car le GPU passe de memory-bound à compute-bound. À haute concurrence, le continuous batching seul suffit généralement.
Fine-tuning du draft model
Pour les déploiements en production sur un domaine spécifique, le fine-tuning du draft model sur vos propres données est souvent l’investissement le plus rentable. L’objectif est d’aligner la distribution du draft sur celle du target pour votre cas d’usage précis.
Plusieurs approches existent. L’entraînement par distillation depuis le modèle cible (le draft apprend à imiter les sorties du target). L’entraînement en ligne via des frameworks comme SpecForge (SGLang), qui collecte les données pendant l’inférence réelle du target. Et les jobs d’optimisation intégrés d’AWS SageMaker, qui entraînent automatiquement des prediction heads spécialisées à partir de vos données applicatives ou de datasets curés.
Draft models en production
Déploiement avec les frameworks majeurs
Tous les frameworks d’inférence LLM majeurs supportent le décodage spéculatif avec draft model. Voici les options principales :
vLLM est le point de départ le plus simple. Le support du décodage spéculatif est natif et configurable via des paramètres de lancement du serveur. Vous spécifiez le draft model et le nombre de tokens spéculatifs souhaités.
SGLang offre des performances légèrement meilleures à concurrence modérée et un meilleur écosystème d’entraînement de draft models via SpecForge. C’est le framework recommandé pour les déploiements EAGLE-3.
TensorRT-LLM de NVIDIA est optimal si vous êtes déjà dans l’écosystème NVIDIA et utilisez des GPU H100, H200 ou B200. L’intégration avec le hardware NVIDIA est plus poussée.
Combinaison avec d’autres optimisations
Le draft model (et le décodage spéculatif en général) se combine avec les autres techniques d’optimisation de manière multiplicative :
Quantization + décodage spéculatif. Des benchmarks sur AMD MI300X montrent un gain total de 3,6x en combinant la quantization FP8 avec le décodage spéculatif sur Llama 3.1 405B. La quantization réduit le coût mémoire par pass, et le décodage spéculatif réduit le nombre de passes nécessaires.
FlashAttention + décodage spéculatif. FlashAttention accélère le calcul d’attention dans le forward pass de vérification du modèle cible. Les gains sont additifs.
Continuous batching + décodage spéculatif. Combinaison efficace mais avec des rendements décroissants sur le volet spéculatif. À batch size élevé (8+), le continuous batching assure l’essentiel du throughput et le décodage spéculatif apporte un complément modéré.
Recherches récentes et avancées
Speculative Speculative Decoding (ICLR 2026)
Le papier « Speculative Speculative Decoding » (SSD), publié à ICLR 2026, repousse les limites en parallélisant la spéculation elle-même. L’idée : pendant que le modèle cible vérifie les tokens du round T, le draft model prépare les spéculations pour le round T+1 en anticipant plusieurs scénarios d’acceptation/rejet possibles. Les spéculations sont stockées dans un « speculation cache » et, quand le résultat de la vérification arrive, la bonne branche est immédiatement disponible.
SSD est compatible avec les draft models avancés comme EAGLE-3 et peut être combiné avec des architectures de draft innovantes comme les Mamba Drafters (qui utilisent des SSM au lieu de Transformers pour le drafting).
Mirror Speculative Decoding (Apple, ICASSP 2026)
Apple Research a présenté Mirror, une approche spécialement conçue pour les LLM audio/speech. Le constat : pour les tokens acoustiques, la correspondance exacte entre draft et target est trop restrictive car de nombreux tokens discrets sont acoustiquement interchangeables. Mirror introduit le « Principled Coarse-Graining » (PCG), qui vérifie les propositions à un niveau de granularité plus grossier, augmentant significativement les taux d’acceptation pour la génération vocale.
Draft distribué
Des travaux récents explorent le décodage spéculatif distribué, où le draft model tourne sur un appareil différent du modèle cible. Par exemple, dans les réseaux AI-RAN (AI-native Radio Access Networks), un petit draft model local sur un appareil mobile propose des tokens, tandis que le modèle cible vérifie sur un serveur edge. Le défi principal est la bande passante : transmettre les logits complets du vocabulaire à chaque étape est coûteux. La technique TSLT (Truncated Sparse Logits Transmission) résout ce problème en ne transmettant que les logits des candidats les plus probables.
Comparatif des approches de draft
| Approche | Entraînement requis | Mémoire supplémentaire | Speedup typique | Lossless ? | Maturité |
|---|---|---|---|---|---|
| Draft model séparé | Non (modèle existant) | Élevée (2e modèle complet) | 1,5x à 3x | Oui | Production |
| EAGLE-3 (draft head) | Oui (head léger) | Minimale (1-2 couches) | 2x à 6,5x | Oui | Production |
| LayerSkip (self-draft) | Oui (layer dropout) | Aucune | 1,3x à 2x | Oui | Production |
| SWIFT (self-draft) | Non (plug-and-play) | Aucune | 1,3x à 1,6x | Oui | Récent |
| Medusa (têtes parallèles) | Oui (têtes) | Modérée (K têtes) | 1,5x à 2,5x | Non | Production |
| ReDrafter (RNN draft) | Oui (distillation) | Minimale | 2,3x à 2,8x | Oui | Récent |
| SSD (parallélisé) | Variable | Cache de spéculation | >EAGLE-3 | Oui | Recherche |
Verdict : Pour un déploiement en production, EAGLE-3 est le choix par défaut. Si vous ne pouvez pas entraîner de draft head (pas de données, pas de compute), les méthodes self-speculative comme SWIFT offrent un gain gratuit et plug-and-play. Le draft model séparé classique reste pertinent quand un bon modèle de la même famille est disponible et que la simplicité de mise en place prime. Medusa est à éviter si la fidélité stricte de la distribution est importante pour vous.
Impact sur l’industrie
Google a été parmi les premiers à déployer le décodage spéculatif en production, l’utilisant dans AI Overviews pour accélérer les réponses. Le papier original démontrait des améliorations de 2 à 3x sur la traduction et le résumé. Depuis, la technique est passée du stade de recherche au standard industriel.
Un point crucial pour les industries réglementées : puisque le décodage spéculatif est mathématiquement lossless (les tokens acceptés suivent exactement la distribution du target), il n’affecte pas les audits de comportement du modèle ni les résultats d’évaluation. Les benchmarks donnent des résultats identiques avec ou sans décodage spéculatif. Cela signifie que vous pouvez activer cette optimisation sans revalidation du modèle dans un contexte réglementaire.
Le draft model est en train de devenir un composant standard du pipeline de déploiement LLM, au même titre que la quantization ou le batching. On peut anticiper que les futurs services d’inférence cloud proposeront l’activation du décodage spéculatif comme un simple paramètre de configuration, avec entraînement automatique du draft head.
Questions fréquentes sur le draft model
Qu’est-ce qu’un draft model en IA ?
Un draft model est un petit modèle de langage rapide utilisé pour accélérer l’inférence d’un gros modèle (le « target model ») via le décodage spéculatif. Il propose plusieurs tokens candidats à l’avance, que le modèle cible vérifie en parallèle en un seul forward pass. Si les prédictions sont correctes, plusieurs tokens sont générés pour le coût d’une seule vérification. Le gain de vitesse typique est de 1,5x à 6,5x selon la méthode utilisée.
Le draft model dégrade-t-il la qualité du texte ?
Non, pas avec les méthodes lossless (EAGLE, draft-verify classique, LayerSkip, SWIFT). L’algorithme de rejection sampling garantit que chaque token accepté suit exactement la distribution du modèle cible. Le texte final est strictement identique à ce que le modèle cible produirait seul, seule la vitesse de génération change. Attention cependant : certaines méthodes comme Medusa ne fournissent pas cette garantie.
Faut-il un GPU supplémentaire pour le draft model ?
Non, dans la grande majorité des cas. Le draft model et le modèle cible tournent sur le même GPU (ou le même cluster). Les approches modernes comme EAGLE utilisent un draft head si léger (1 à 2 couches) que le surcoût mémoire est négligeable. Les méthodes self-speculative (LayerSkip, SWIFT) n’ajoutent aucune mémoire puisqu’elles réutilisent les couches du modèle cible. Seule l’approche classique à deux modèles complets nécessite une mémoire significative pour le deuxième modèle.
Comment savoir si le décodage spéculatif sera rentable pour mon cas d’usage ?
Mesurez le taux d’acceptation (α). Au-dessus de 0,6, vous obtiendrez des gains significatifs. En dessous de 0,4, le surcoût du draft risque d’annuler les bénéfices. Trois facteurs favorables : une faible concurrence (batch size 1 à 4), des tâches proches de données conversationnelles, et un matériel coûteux (H100/A100 à l’heure). Le décodage spéculatif est moins pertinent à forte concurrence (batch size > 8) ou pour des tâches très éloignées du domaine d’entraînement du draft (traduction de langues rares, par exemple).
Quelle est la différence entre un draft model et EAGLE ?
Un draft model classique est un modèle séparé et complet (par exemple Llama 3.2 3B) qui génère des tokens indépendamment du modèle cible. EAGLE remplace ce modèle séparé par une tête de draft ultra-légère (1 à 2 couches Transformer) greffée directement sur les couches internes du modèle cible. EAGLE réutilise les représentations du target, ce qui donne de meilleurs taux d’acceptation, une consommation mémoire minimale, et des speedups nettement supérieurs (jusqu’à 6,5x pour EAGLE-3 contre 1,5x à 3x pour l’approche classique).