MiniJev lit les logits et accélère la classification des requêtes d'un facteur 5,4
Lorsqu'on attend d'un LLM qu'il choisisse parmi des options prédéfinies, générer du JSON ne fait que perdre du temps. MiniJev prend les logits du premier token de la réponse, compare les étiquettes A, B, C et renvoie des probabilités sans génération séquentielle. Sur Qwen 2.5 1.5B dans Colab, le prototype a traité une requête en 0,196 seconde contre 1,051 seconde pour le JSON, et la calibration sur SST-2 a ramené l'ECE de 6,8 % à 2,5 % sans modifier la précision.
Traité par IA depuis Habr AI ; édité par Hamidun News
Lorsqu'un modèle doit choisir un service d'assistance, attribuer un niveau d'urgence ou répondre « oui » ou « non », il n'a pas besoin d'une réponse textuelle complète. Pourtant, un pipeline LLM classique le force quand même à générer du JSON séquentiellement : accolades, clés, guillemets et valeurs. Chaque nouveau token attend le précédent, alors que la décision est souvent déjà visible dans la distribution de probabilités après le traitement du prompt.
L'auteur du prototype MiniJev propose de lire cette décision directement dans les logits, c'est-à-dire les nombres que le modèle calcule avant de choisir le token suivant. Cette approche rappelle l'interface Jev de TypeSafe AI, mais ne cherche pas à reproduire le modèle lui-même : l'expérience utilise un Qwen 2.5 1.5B Instruct standard, sans fine-tuning. Le tout s'exécute sur un Nvidia T4 gratuit dans Google Colab.
Comment obtenir une décision sans générer de texte
Imaginons la demande suivante : « Mon paiement a été débité deux fois, remboursez-moi un des prélèvements ». Le système pose trois questions au modèle : le client est-il en colère, quel service doit prendre en charge la demande et quel est son degré d'urgence. Pour chaque question, les options sont énumérées à l'avance et désignées par les lettres A, B, C, etc.
Après une seule passe, le modèle dispose déjà des logits du premier token possible de la réponse. MiniJev ne conserve que les logits des lettres autorisées, applique un softmax et obtient une distribution de probabilités. Pour le service, cela peut donner : billing — 99,99 %, support technique — 0,005 %, ventes — 0,001 %. Aucune accolade ni aucun nom de champ n'a besoin d'être généré.
Le code tient compte de deux subtilités pratiques. Premièrement, le tokenizer peut encoder différemment une lettre précédée ou non d'une espace ; les probabilités des tokens simples valides sont donc regroupées. Deuxièmement, le modèle préfère parfois le premier ou le dernier choix, indépendamment du sens. Pour contrer ce biais, les options sont permutées de manière circulaire, puis leurs log-probabilités sont moyennées. Le coût : des prompts et des calculs supplémentaires, surtout lorsque les options sont nombreuses.
La vitesse est au rendez-vous, les probabilités fiables viennent après
Sur une requête de test, le temps médian de MiniJev a été de 0,1959 seconde. La génération d'un JSON équivalent a pris 1,0514 seconde, soit environ 5,4 fois plus. C'est un repère utile, mais pas un résultat universel : la mesure a été réalisée sur un seul modèle, un seul GPU et un seul type de requête. De plus, la comparaison dépend du batching, de la longueur du JSON et du nombre de permutations des options.
Les probabilités brutes ne peuvent pas être interprétées automatiquement comme un niveau de confiance réel. Le modèle a été entraîné à prédire le token suivant, pas à indiquer la fréquence de ses réussites. L'auteur a vérifié la calibration sur 600 exemples de SST-2 : 200 ont servi à régler le Platt scaling, 400 au test. La précision est restée à 92,7 %, tandis que l'erreur de calibration attendue (ECE) est passée de 6,8 % à 2,5 %. Le résultat est encourageant, mais il porte sur un seul jeu de données et un seul découpage.
Cas d'usage
Cette approche convient au routage des demandes, aux indicateurs de modération, à la détection d'intention, au choix de la prochaine action d'un agent et aux notations sur une échelle fixe. Elle garantit que la réponse restera dans la liste définie, mais pas qu'elle soit exacte : le modèle peut choisir avec assurance une mauvaise option.
La conclusion pratique est simple. Si l'ensemble des réponses est connu à l'avance, testez d'abord la lecture des logits plutôt que la génération de texte structuré. Rassemblez ensuite au moins quelques centaines d'exemples annotés issus de votre environnement, calibrez les probabilités et mesurez non seulement la latence, mais aussi la précision, l'ECE et le coût des permutations supplémentaires. Pour les réponses ouvertes et les explications complexes, cette technique ne convient pas : la génération y reste nécessaire.
- 8 nov. 2026LLM 0.37 ajoute des embeddings multimodaux et intègre les correctifs de 12 contributeurs
- 8 nov. 2026Anthropic a multiplié son chiffre d’affaires trimestriel par 12, mais a perdu 23,3 milliards de dollars
- 8 nov. 2026MOSS-Live accepte l'audio 16 kHz et ne met pas la conversation en pause pendant une recherche
- 8 nov. 2026ChatGPT ne cherche pas via Google : 97 % de ses sources ne figurent pas dans le top 50 des résultats
Questions clés sur cet article
Comment obtenir une décision sans générer de texte?
Imaginons la demande suivante : « Mon paiement a été débité deux fois, remboursez-moi un des prélèvements ». Le système pose trois questions au modèle : le client est-il en colère, quel service doit prendre en charge la demande et quel est son degré d'urgence. Pour chaque question, les options sont énumérées à l'avance et désignées par les lettres A, B, C, etc. Après une seule passe, le modèle dispose déjà des logits du premier token possible de la réponse.
Que sait-on sur La vitesse est au rendez-vous, les probabilités fiables viennent après ?
Sur une requête de test, le temps médian de MiniJev a été de 0,1959 seconde. La génération d'un JSON équivalent a pris 1,0514 seconde, soit environ 5,4 fois plus. C'est un repère utile, mais pas un résultat universel : la mesure a été réalisée sur un seul modèle, un seul GPU et un seul type de requête. De plus, la comparaison dépend du batching, de la longueur du JSON et du nombre de permutations des options.
Que sait-on sur Cas d'usage ?
Cette approche convient au routage des demandes, aux indicateurs de modération, à la détection d'intention, au choix de la prochaine action d'un agent et aux notations sur une échelle fixe. Elle garantit que la réponse restera dans la liste définie, mais pas qu'elle soit exacte : le modèle peut choisir avec assurance une mauvaise option. La conclusion pratique est simple. Si l'ensemble des réponses est connu à l'avance, testez d'abord la lecture des logits plutôt que la génération de texte structuré.
Test Frontier LLMs & Autonomous Agents in One Workspace
Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.
L'essentiel de l'IA — une fois par semaine
Sept actus qui ont vraiment compté, choisies à la main. Sans bruit ni communiqués.
C'est fait ! Vérifiez votre boîte mail pour la confirmation.