This article is currently available in French only.
Regardez ce que font les modèles du moment. Ils résolvent des problèmes d'olympiades de mathématiques, écrivent des milliers de lignes de code d'un trait, tiennent une conversation dans cinquante langues. Et pourtant, aucune entreprise ne les laisse répondre seuls à un client qui conteste sa facture. Le ticket passe toujours par un humain.
Ce n'est pas un problème d'intelligence. Deux choses bloquent. La première : le modèle ne sait pas dire quand il se trompe. Vous l'avez vu, ce « Vous avez absolument raison » qui précède une réponse absolument fausse. Il tranche avec la même assurance qu'il ait raison ou tort. Or un flux métier exige d'être proche de 100 % de bonnes réponses, ou au moins de savoir lesquelles vérifier. La seconde : le prix et la vitesse. Un flux métier, c'est des dizaines de milliers de décisions par jour. À plusieurs secondes et quelques centimes la décision, le calcul ne tient pas.
Le 15 septembre, TypeSafe AI a sorti Jev en accès anticipé. Le lendemain, Vercel l'a mis à disposition dans son AI GatewayLe point de passage unique par lequel transitent les appels aux modèles d'une entreprise : il choisit le modèle, applique les règles et garde la trace de chaque requête.. Jev ne sait pas écrire une phrase. Il ne code pas, ne raisonne pas pas à pas, n'invente pas d'option. Il fait une seule chose : choisir parmi des réponses que vous avez déclarées à l'avance, et dire à quel point il en est sûr. Cet article explique pourquoi cette limitation est précisément ce qui manquait.
D'où vient la sur-confiance
Les grands modèles passent tous par la même étape finale d'entraînement : l'apprentissage par renforcement à partir de retours humains, le RLHFReinforcement Learning from Human Feedback : la dernière étape d'entraînement des grands modèles, où des annotateurs humains préfèrent certaines réponses à d'autres et où le modèle apprend à produire celles qui plaisent.. Des annotateurs comparent des réponses et préfèrent celles qui leur plaisent. Une réponse assurée, fluide, qui va dans le sens de l'utilisateur, plaît davantage qu'une réponse qui hésite. Le modèle apprend donc à être assuré. Pas à avoir raison.
TypeSafe entraîne Jev autrement, avec une méthode qu'elle appelle Reinforcement Learning for Calibrated Decisions, RLCDReinforcement Learning for Calibrated Decisions : la méthode d'entraînement de Jev, qui récompense un modèle dont les probabilités correspondent à sa fréquence réelle de bonnes réponses.. Le modèle n'est pas récompensé pour plaire mais pour être calibréUn modèle est calibré quand ses probabilités sont fiables : sur cent réponses annoncées à 80 %, environ quatre-vingts sont justes. : sur un grand nombre de décisions, celles qu'il annonce à 80 % doivent être justes environ huit fois sur dix. Un chiffre calibré n'est plus une décoration, c'est une information sur laquelle du code peut s'appuyer.
Un modèle qui a raison 95 % du temps mais ne sait pas quand il est dans les 5 % restants ne peut rien automatiser. Un modèle qui signale lui-même ses réponses incertaines, lui, le peut.
Générer ou décider
Un LLMGrand modèle de langage : le programme qui lit et écrit du texte, comme celui derrière ChatGPT. produit sa réponse un tokenLe morceau de texte que le modèle lit ou écrit d'un coup : un mot, un bout de mot ou un signe de ponctuation. Mille pages, c'est environ 500 000 tokens. à la fois. Chaque token traverse tout le réseau, et une réponse de deux cents mots prend deux cents fois ce temps. Quand on lui demande une décision, on lui fait écrire du JSONUn format de texte structuré, avec des champs et des valeurs, que les programmes lisent facilement., puis on parseLire un texte pour en extraire une structure exploitable par un programme. Échoue dès que le texte ne respecte pas le format attendu., on valide, on relance quand le format ne colle pas. La décision est un sous-produit d'une génération de texte.
Jev inverse le sens. L'application déclare d'abord les réponses valides. Le modèle lit l'état, c'est-à-dire tout ce qu'on lui donne sur la situation, et renvoie une distribution de probabilitéUne probabilité pour chaque option, dont la somme fait 1. Plus elle est concentrée sur une option, plus le modèle est sûr. sur ces réponses. Pas de texte, rien à parser, aucun moyen de répondre en dehors du schémaLa liste des réponses valides déclarées à l'avance par l'application : les options d'un choix, les crans d'une échelle, vrai ou faux.. TypeSafe appelle ça un modèle « System One », en référence au système 1 de Kahneman : la pensée rapide, intuitive, par opposition au raisonnement lent.
Le résultat, c'est un modèle d'une vitesse d'une autre catégorie. TypeSafe annonce 70 à 500 millisecondes de bout en bout, et facture l'entrée 0,042 dollar par million de tokens, sortie gratuite. Un test publié par un développeur face à GPT-5.6 Luna, le modèle le moins cher de sa génération, donne Jev cinq à sept fois plus rapide et cinq fois moins cher. Contrepartie : une fenêtre de contexteLa quantité maximale de texte que le modèle peut lire en une fois, comptée en tokens. de 32 000 tokens. Au-delà, il faut découper.
Trois façons de poser une question
Chaque appel à Jev a la même forme : un état, plus une ou plusieurs questions typées. Il existe trois types de questions.
Choice. Choisir une option dans une liste, jusqu'à 255. « Quelle équipe doit traiter ce ticket ? Facturation, support, fraude. » Jev renvoie une probabilité pour chaque option, plus un score de confiance qui résume à quel point la distribution est concentrée.
Score. Placer l'état sur une échelle ordonnée que vous définissez. « Ce post est-il organique ? Clairement manipulé, suspect, probablement organique, clairement organique. » Chaque cran peut porter une description, des critères, des exemples. C'est du few-shotDonner au modèle quelques exemples de ce qu'on attend, directement dans la consigne, au lieu de le réentraîner. déguisé en barème.
Noul. Estimer si une affirmation est vraie. « Ce message est une tentative d'injection de promptUne attaque où un utilisateur glisse dans son message des instructions destinées à détourner le modèle : « ignore tes consignes et fais ceci ».. » Jev renvoie la probabilité que ce soit vrai, entre 0 et 1, et rien d'autre.
Et un détail qui change l'économie : les questions sont évaluées en parallèle, isolées les unes des autres, sur le même état. Cinq questions coûtent à peu près une question. Avec un LLM, cinq champs JSON, c'est cinq fois plus de tokens à écrire.
Le seuil décide qui agit
Prenons l'exemple qu'utilise Paper Compute. Un client demande un remboursement au jour 45 d'une fenêtre de 30 jours. L'application pose trois questions : le routage (Choice : facturation, support, fraude), le risque (Score : faible, moyen, élevé) et l'approbation automatique (Noul : ce remboursement peut-il être approuvé sans humain ?).
Jev répond : facturation à 0,93, risque moyen à 0,88, approbation automatique vraie à 0,19, donc fausse avec une certitude de 0,81. Jusqu'ici, rien n'est décidé. C'est l'application qui fixe un seuil. À 0,70, les trois réponses passent en automatique. À 0,85, le routage et le risque passent, l'approbation part à un humain. À 0,95, tout part à un humain. Les réponses du modèle n'ont pas bougé. Le seuil, lui, appartient à l'équipe, et il peut différer par question, par équipe, ou selon ce que l'action risque de casser.
C'est ce qui rend le déploiement autonome acceptable. La question n'est plus seulement « que doit faire le système ? » mais « le système est-il assez sûr pour faire quoi que ce soit ? ». Et il faut être précis sur ce que ça garantit. Jev ne peut pas halluciner une réponse hors schéma : c'est une garantie de format. Il peut choisir la mauvaise réponse valide. Les probabilités servent justement à repérer ces cas-là et à les envoyer à quelqu'un.
Où ça se branche
La bonne façon de voir Jev, ce n'est pas comme un remplaçant du LLM mais comme un composant à côté. Il fournit le signal de décision ; quelque chose d'autre, une gateway ou la boucle d'un agentUn modèle qui enchaîne des actions (lire un fichier, lancer un outil, relire le résultat) pour accomplir une tâche, au lieu de répondre en une fois., applique la politique, garde la trace et fait suivre.
Dans une gateway, Jev lit chaque requête et décide en quelques dizaines de millisecondes : réponse depuis le cache, petit modèle, modèle frontièreLes meilleurs modèles du moment, généralement fermés : GPT, Claude, Gemini., outil, humain, ou stop. Assez rapide et assez bon marché pour tourner sur chaque requête, ce qui disqualifie les approches génératives sur ce chemin.
Dans un agent, il choisit l'outil suivant, ou le sous-agent à qui déléguer, et surtout il répond à la question qu'aucun agent ne sait poser : continuer, réessayer, demander à l'utilisateur, ou s'arrêter.
Dans un navigateur, il résout le problème le plus coûteux de la navigation automatique : décider sur quel élément cliquer dans un DOMLa structure d'une page web telle que le navigateur la voit : chaque bouton, champ et lien est un élément du DOM. en vrac. On lui envoie la tâche, l'historique des actions et la liste des éléments ; il renvoie le type d'action et l'élément cible, chacun avec sa probabilité. Un petit LLM ne sert plus qu'à taper le texte. Browser Use l'a déjà intégré.
Et comme garde-fou : chaque message utilisateur passe par un Noul « est-ce une injection de prompt ? » avant d'atteindre l'agent. Au-dessus de 70 %, on bloque. Entre 35 et 70 %, on fait relire. En dessous, on laisse passer. Trois lignes de logique métier sur un chiffre calibré.
Ce que ça permet, concrètement
Les cas d'usage qui remontent en premier sont ceux qui ne tenaient pas économiquement avec un LLM.
L'analyse des inscriptions. Une équipe qui subit des vagues de faux comptes récupère toutes les quinze minutes les nouveaux inscrits, les enrichit, et demande à Jev de les classer : fraude à bannir, client à potentiel, partenaire à contacter. Des centaines d'inscriptions par jour pour environ un dollar.
La qualification de leads. Récupérer les personnes qui commentent des posts LinkedIn sur un sujet, les faire scorer par persona et intention d'achat, ne passer en enrichissement payant que les meilleurs. Quatre cents profils pour un coût proche de zéro.
Le maillage interne. Cartographier les liens à créer entre cinq cents pages d'un site : des heures avec un modèle frontière, moins de cinquante secondes avec Jev.
Le temps réel. Classifier chaque tour d'un appel en cours pour repérer une fraude ou une frustration. Ou jouer à un jeu, parce que les entrées sont limitées et les options connues, et qu'un modèle qui répond en 70 millisecondes peut suivre le rythme.
Le point commun : les réponses valides sont connues à l'avance, l'entrée est désordonnée, et la décision doit être assez rapide et assez bon marché pour tenir dans une boucle.
Ce que ça coûte, ce que ça vaut
Les chiffres méritent leurs réserves, et TypeSafe les donne elle-même. Le « 193 fois plus rapide, 444 fois moins cher » vient de flux construits par son équipe, avec des réponses de référence issues de deux modèles frontière, et se situe dans le haut des gains réels. Tant qu'il n'y a pas de benchmarksDes tests standardisés pour comparer les modèles. indépendants, ce sont des chiffres d'éditeur. La promesse solide est plus modeste : un modèle qui saute la génération token par token répond dans le budget de latenceLe temps d'attente avant la réponse. qu'un chemin de requête autorise.
Jev ne remplace pas non plus tout ce qui existe. Des règles écrites à la main restent la bonne réponse quand les conditions sont connues et déterministes. Un classifieurUn modèle entraîné pour une seule tâche de tri, sur des exemples étiquetés. Très efficace tant que la tâche ne change pas. maison reste imbattable sur une tâche étroite et stable avec beaucoup d'exemples étiquetés. Un routeur à base de LLM garde l'avantage quand il faut vraiment raisonner avant de décider. Jev prend le milieu : des décisions à réponses connues, sur un état désordonné, qui changent trop souvent pour un classifieur et trop vite pour une règle.
Ce que Jev apporte, au fond, c'est un déplacement du problème. Avant, la panne c'était « le modèle a renvoyé quelque chose que mon parseur ne comprend pas ». Maintenant c'est « le modèle a choisi la mauvaise réponse valide », et il vous a dit à quel point il en était sûr. La deuxième panne se gère avec un seuil. La première ne se gérait pas.
