Un guide et une communauté indépendants pour les développeurs
Informations officielles sur Jev : typesafe.ai

Le modèle Jev AI.
Des décisions à intégrer.

Jev est le premier modèle System One de TypeSafe. Il renvoie des décisions typées et des probabilités exploitables par un logiciel. Découvrez quand l’utiliser et comment l’intégrer via l’API.

Choisir selon la tâche

En quoi Jev est-il différent ?

TypeSafe présente Jev comme un modèle System One : il renvoie des réponses structurées selon des types prédéfinis et leurs probabilités, plutôt que de générer du texte libre. Comparez cette approche aux modèles génératifs et aux règles codées.

CritèreJevLLM génératifsRègles codées
SortieChoix, scores et probabilités définis à l’avanceTexte, code ou sortie structurée flexibleValeurs déterminées par des conditions explicites
VitesseOptimisé pour une faible latence ; TypeSafe annonce 70 à 500 ms dans ses testsDépend du modèle, de la requête et de la longueur de sortieGénéralement très rapide pour des conditions connues
Idéal pourJugements sémantiques répétés dans un logicielRédaction, raisonnement complexe et tâches ouvertesConditions claires et stables
Limite cléNe génère pas de texte libre ; une réponse typée peut être erronéeLes réponses peuvent nécessiter une analyse et une validationDifficiles à maintenir lorsque les entrées sont ambiguës
i

Les chiffres de vitesse proviennent de tests TypeSafe sur certaines décisions structurées. Il ne s'agit ni d'une mesure indépendante ni d'une garantie générale. Lire la méthode

Quel outil choisir ?

Si les réponses sont connues mais que le sens de l’entrée doit être interprété, Jev peut convenir. Pour produire du texte ou du code, choisissez un modèle génératif. Si les conditions sont claires, écrivez simplement des règles.

L'idée essentielle

Pour les décisions répétées dans vos applications.

Jev évalue un texte ou des données structurées à partir des questions que vous définissez. Il renvoie un choix, un score ou une probabilité que votre code peut exploiter directement.

Jev en trois étapesExemple de fonctionnement · pas une vraie réponse du modèle
01Message du client

“Mon abonnement a été facturé deux fois. Pouvez-vous m'aider ?”

02Question et choix

Quelle équipe doit s'en charger ?

Réponses possibles : facturation · technique · vente
03Résultat au format défini
FacturationJev

Probabilité fictive 0.92

01

Fournir le contexte

Envoyez du texte, des données JSON ou une liste de textes. Jev ne prend pas encore en charge les images, l’audio ni la vidéo en entrée.

02

Définir les réponses possibles

Avant l’appel, choisissez le format attendu : une option, un score ou une valeur pour une question oui/non.

03

Laisser le code décider de la suite

Selon le résultat et le niveau de confiance, votre code peut orienter une demande, déclencher une action ou demander une vérification humaine. Un format correct ne garantit pas un bon choix.

D'après la documentation officielle de TypeSafe

Où l'utiliser

Des décisions précises, au cœur de vos applications.

Jev convient aux décisions répétées dont les réponses possibles sont connues à l’avance. Ces exemples donnent des pistes ; évaluez les résultats sur vos propres données.

01

Service client

Classez les réclamations et les retours des commerçants, évaluez leur urgence, puis orientez chaque dossier vers la bonne équipe. Confiez les cas incertains à une personne.

Décision possibleEst-ce une question de facturation ou un problème technique ?
02

Recommandation et classement

Filtrez un fil selon les préférences exprimées par l’utilisateur, puis évaluez la pertinence des contenus proposés avec vos propres critères de classement.

Décision possibleCet élément est-il pertinent pour cette demande ?
03

Orchestration d'agents

Dirigez une demande vers un modèle, un outil ou un agent ; décidez s’il faut lancer une recherche et vérifiez si le résultat permet de poursuivre.

Décision possibleFaut-il confier cette demande à un modèle spécialisé ?
04

Modération et sécurité

Contrôlez les messages, les changements de code et les appels d’outils selon des règles précises. Faites examiner les cas risqués ou incertains.

Décision possibleCe message enfreint-il cette règle ?
GitHubjev-guard
05

Jeux et simulations

À partir de l’état du jeu et d’une liste limitée de coups autorisés, Jev choisit la prochaine action d’un adversaire IA ou d’un PNJ. Le code du jeu vérifie les règles et exécute l’action.

Décision possibleQuel coup autorisé l’adversaire doit-il jouer ensuite ?
06

Automatisations personnelles

Triez vos e-mails et notifications selon vos règles, évaluez l’état de votre maison connectée ou décidez quand lancer une routine.

Décision possibleCette notification mérite-t-elle de m’interrompre maintenant ?
GitHubHA-Jev
Pour commencer

De l'idée à la première décision.

Partez d'un jugement précis dont votre application a déjà besoin. Définissez les réponses possibles, puis décidez dans le code comment les utiliser.

01

Choisir une décision

Par exemple, orienter un ticket ou noter la pertinence d'un élément.

02

Définir les choix

Précisez l’entrée, les questions et les réponses autorisées avant d’appeler l’API.

03

Gérer l'incertitude

Servez-vous des probabilités et de la confiance pour agir, prévoir un repli ou demander un contrôle humain.

Exemple avec l’API

Intégrez Jev à votre code.

Cet exemple TypeScript côté serveur envoie une demande d’assistance et deux questions dont le format de réponse est défini à l’avance à Jev 1.13 via OpenRouter. La clé API reste sur le serveur ; votre application décide de la suite.

Essayer Jev gratuitement
TypeScript côté serveurtypesafe/jev-1.13
const apiKey = process.env.OPENROUTER_API_KEY;
if (!apiKey) throw new Error("Set OPENROUTER_API_KEY");

const response = await fetch("https://openrouter.ai/api/alpha/decisions", {
  method: "POST",
  headers: {
    Authorization: "Bearer " + apiKey,
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    model: "typesafe/jev-1.13",
    state: "My card was charged twice. Please help ASAP.",
    questions: {
      department: {
        type: "choice",
        instructions: "Which team should handle this?",
        criteria: {
          billing: "Payments and refunds",
          technical: "Bugs and integrations"
        }
      },
      urgent: {
        type: "noul",
        instructions: "Does this message need urgent attention?"
      }
    }
  })
});

if (!response.ok) throw new Error("Jev request failed: " + response.status);
const {answers} = await response.json();

if (answers.department.choice === "billing" && answers.urgent.noul > 0.8) {
  // Route to the billing review queue.
}
Point d’accèsPOST /api/alpha/decisions
Entréestate + questions
Sortieanswers

Lire la réponse

choice indique l’équipe responsable. noul renvoie une valeur entre 0 et 1 pour la question oui/non. Votre code combine les deux avec ses règles d’orientation.

Avant la mise en production

Testez sur des demandes représentatives, conservez la version du modèle et faites vérifier les cas incertains ou sensibles. La valeur 0,8 sert uniquement d’exemple.

Sources de l’API : OpenRouter · TypeSafe

LangChain · Python

Intégrer Jev au harness d’un agent LangChain

Le harness orchestre les appels au modèle et aux outils. À un point de décision, Jev lit un message, un appel d’outil envisagé ou l’état de l’agent, puis renvoie une réponse typée. Votre code choisit la suite ; le modèle de chat garde les tâches ouvertes.

ModelRouterMiddlewarebefore_agent → wrap_model_call

Classer le dernier message avant l’exécution pour choisir un modèle, puis conserver ce choix pendant le traitement. Le choix, les probabilités et le niveau de confiance restent accessibles dans l’état de l’agent.

AutoModeMiddlewarewrap_tool_call

Contrôler un appel d’outil avant son exécution. Si Jev détecte un risque ou une autorisation insuffisante, le middleware bloque l’appel et renvoie un ToolMessage d’erreur. Il ne demande pas de validation humaine.

TypeSafeClassifierChoice · Score · Noul

Ajoutez aussi vos propres points de contrôle : un middleware personnalisé transmet les messages ou l’état de l’agent à TypeSafeClassifier, puis votre code utilise Choice, Score ou Noul pour bifurquer ou demander une revue.

Comprendre chaque champ

La requête définit les questions et le format attendu. La réponse contient un résultat pour chacune. Voici les champs JSON utilisés dans l’exemple.

Requête

model
L’identifiant du modèle. L’exemple fixe Jev 1.13 pour préciser la version.
state
Le texte ou les données structurées à évaluer, comme un message de support.
questions
Un objet dont les clés sont les noms des questions. Vous retrouverez ces mêmes clés dans answers.
type
Le format de réponse : choice choisit une option ; noul renvoie une valeur pour une question oui/non.
instructions
Le jugement précis demandé au modèle.
criteria
Pour choice, les options autorisées et une courte description de chacune.

Réponse

answers
Un résultat par question, sous le même nom.
choice
L’option sélectionnée, celle dont la probabilité est la plus élevée.
probabilities
La probabilité de chaque option ; leur somme vaut 1.
confidence
Un score de confiance calculé à partir de la distribution des probabilités, distinct de la probabilité de l’option retenue.
noul
Un nombre de 0 (non) à 1 (oui) pour une question binaire.

Une réponse au bon format peut être erronée. Testez des cas représentatifs et définissez vos propres seuils de routage.

Projets

System One.

Jev est le modèle de TypeSafe. La communauté explore aussi les décisions rapides et structurées avec des modèles ouverts et d’autres interfaces. Comparez le code, les approches et leurs limites.

Des projets indépendants de la communauté, pas des versions officielles de Jev.

Guide System One pour développeurs Voir tous les projets GitHub
Données ouvertes et actualités de la communauté Ouvrir Jev AI Radar sur GitHub
Autour du modèle

Ce qu’en dit la communauté.

Retrouvez ici les points clés des discussions de lancement, du SDK officiel et d’une vidéo indépendante. Faites-vous une idée sur cette page, puis consultez les sources si vous souhaitez creuser.

X

TypeSafe publie sur X ses actualités et le contexte du produit. Il s’agit de la version de l’équipe ; vérifiez les détails techniques dans la documentation avant de développer.

Voir la source

GitHub

Le SDK JavaScript et TypeScript officiel montre l’API, des exemples et les versions. Il permet de voir comment une requête Jev s’exprime dans le code.

Voir la source

Hacker News

La discussion de lancement porte sur les cas d’usage, l’évaluation et la gestion des réponses fausses malgré un niveau de confiance élevé. Ce n’est pas un test de performance.

Voir la source
ThursdAI · TypeSafe AI

Jev en pratique : entretien avec TypeSafe

Allie Laabs, de TypeSafe, explique dans ThursdAI le modèle System One et les sorties Choice, Score et Noul. L'équipe teste le classement de publications, montre une démo de Doom et aborde les limites de Jev.

Voir la source
À voir ici

Jev en vidéo : décisions structurées et limites

Une présentation indépendante de RepoChad sur le format de sortie, les chiffres de vitesse de TypeSafe, les démos et les questions ouvertes. La vidéo ne se charge qu’après un clic.

Voir la source
Derrière Jev

Intégrer plus simplement les décisions de l’IA aux logiciels.

TypeSafe AI a présenté Jev comme son premier modèle System One. Son objectif déclaré est de rendre les décisions rapides et structurées utilisables dans les processus logiciels ordinaires.

Le fondateur Diogo Almeida a auparavant travaillé chez OpenAI et Google Brain. Selon TypeSafe, ses recherches sur le suivi d'instructions et le RLHF ont contribué aux travaux à l'origine de ChatGPT.

Questions fréquentes

Les réponses à vos questions.

Jev est-il un chatbot ?

Non. Jev est conçu pour renvoyer des décisions typées et des probabilités plutôt que des réponses libres ou du code généré.

Jev peut-il servir aux recommandations ?

Il peut aider à noter ou reclasser des candidats selon leur pertinence sémantique. Un système complet nécessite aussi une sélection des candidats, des règles métier, une évaluation et votre logique de classement.

Une réponse typée est-elle forcément correcte ?

Non. Le type encadre le format, pas la justesse du choix. Testez sur des données représentatives et gérez l'incertitude dans le code.

Où apprendre à utiliser Jev ?

Commencez par la documentation et le SDK officiels de TypeSafe. La page du modèle sur OpenRouter donne également accès à Jev via sa plateforme.

Commencer par une question

Testez Jev sur une décision concrète.

Définissez une question et ses réponses possibles. Votre application reste responsable de la suite donnée au résultat.

Actualités de la communauté

Suivez l’écosystème Jev à votre façon.

Découvrez les nouveaux projets, les modèles System One de la communauté et les cas d’usage concrets grâce aux mises à jour publiques fréquentes ou à un e-mail de sélection occasionnel.

Mises à jour publiques fréquentes

Jev AI Radar

Une collection open source que les développeurs, les scripts et les agents IA peuvent lire, réutiliser et suivre dans le temps.

Ajouter une étoile sur GitHub
Sélection occasionnelle

Newsletter

Recevez de temps en temps une sélection de la communauté : projets GitHub en vue, exemples de code utiles et cas d’usage concrets de Jev.

En vous inscrivant, vous acceptez de recevoir occasionnellement des e-mails de Jev AI Dev.