Jev évalue un contexte et renvoie des décisions structurées : classer une demande, choisir une capacité, mesurer une urgence ou estimer une probabilité. Utilisez les routes dédiées ci-dessus pour ces évaluations ; elles renvoient du JSON sans streaming.
Il vous faut un abonnement Pro actif, une clé API utilisateur Fantasy et des crédits prépayés. Envoyez votre clé avec Authorization: Bearer ou x-api-key. La clé TypeSafe est configurée par l’administrateur sur le serveur Fantasy.
Recommandations Fantasy — /jev/decisions
Envoyez l’historique texte de votre conversation dans messages. Le preset évalue le type de tâche, le niveau de modèle, la recherche, le contexte nécessaire, la longueur de réponse et l’intérêt d’une mémoire durable. Votre application peut ensuite utiliser ces recommandations.
1 à 50 messages, au plus 24 000 caractères chacun, avec au moins un message user non vide. Seuls les textes user et assistant récents sont utilisés ; les contenus system, developer et tool sont exclus.
Vos propres questions — /systemone
Définissez state (texte, objet ou tableau), puis questions, un objet dont les clés sont vos noms de questions. Chaque question contient type, instructions et, selon le type, criteria. model est facultatif et utilise par défaut le modèle Jev configuré, normalement jev-latest.
1 à 32 questions. Choice : 1 à 255 options nommées. Score : 2 à 10 descriptions ordonnées. Noul : critères true/false facultatifs. Les champs non pris en charge, dont stream, sont refusés.
Définissez FANTASY_API_KEY dans l’environnement de votre application. L’exemple JavaScript utilise fetch dans Node.js ; l’exemple Python utilise requests et présente les trois types de questions. Dans le playground, choisissez Décisions Jev ou API native Jev, collez votre clé puis envoyez la requête ; les évaluations réussies consomment des crédits.
Ces réponses sont illustratives : les valeurs, la latence, le modèle résolu et les tokens dépendent de votre requête.
Pour /jev/decisions, chaque recommandation contient value et confidence. taskType indique une capacité (general, code, reasoning, security ou vision) ; modelTier indique economy, standard ou premium. decision.model est le modèle Jev qui a évalué la demande. À vous de choisir le modèle de chat correspondant dans votre application.
Vérifiez active avant d’appliquer une recommandation Fantasy. En mode shadow, active vaut false : les décisions sont consultatives. Une requête Desktop portant x-fantasy-desktop-context: 1 reçoit alors decision: null et usage.credits: 0. Les évaluations natives /systemone restent utilisables en mode shadow.
Choice : answers.department.choice est le nom de l’option retenue ; probabilities associe une probabilité à chaque option.
Score : answers.urgency.score se situe entre 0 et le nombre de critères moins un, et peut être décimal. legend associe chaque indice à sa description ; probabilities donne la distribution sur ces indices.
Noul : answers.duplicate.noul est une probabilité entre 0 et 1, pas un booléen. Choisissez un seuil adapté à votre application si vous avez besoin d’un résultat vrai/faux.
Pour Choice et Score, confidence est distincte de la probabilité de l’option gagnante. Le seuil 0,7 de l’exemple JavaScript est un choix de l’application. usage.input_tokens et usage.output_tokens décrivent la consommation rapportée par TypeSafe sur la route native.
Les routes /jev/decisions et /systemone facturent les tokens d’entrée déclarés par Jev au tarif du fournisseur : 0,042 $ par million de tokens d’entrée, convertis en euros avec le taux de référence BCE mis en cache ou le taux de règlement configuré, sans majoration. Les tokens de sortie et les décisions en cache sont gratuits. Un crédit vaut 0,01 € ; le débit est arrondi au supérieur à 0,000001 € (0,0001 crédit). Par exemple, 1 000 tokens d’entrée avec un taux dollar/euro de 0,8 consomment 0,0034 crédit. Avant un appel payant, le coût du maximum de 64 000 tokens est réservé ; seuls les tokens réels sont débités après validation du succès et le surplus réservé est rendu. Les échecs libèrent la réservation. X-Jev-Credits indique le débit réel ; usage.credits le fournit aussi pour le preset.
Le preset tronque l’historique récent et masque les secrets connus ; le masquage des données personnelles courantes est activé par défaut. La route native transmet votre state et vos critères à TypeSafe sans masquage ni troncature automatiques.
- 400
- JSON ou paramètres invalides : vérifiez messages ou le schéma des questions.
- 401
- Clé Fantasy invalide ou désactivée, ou abonnement Pro expiré.
- 402
- Crédits prépayés insuffisants : rechargez votre solde dans Facturation.
- 413
- Le corps JSON dépasse 256 000 octets UTF-8 : réduisez le contexte.
- 422
- TypeSafe a refusé l’évaluation native : vérifiez le modèle et les questions.
- 429
- Limite de requêtes, de tokens ou de concurrence atteinte : consultez Retry-After lorsqu’il est présent.
- 502
- Erreur fournisseur ou réponse d’évaluation invalide.
- 503
- Jev est désactivé ou non configuré, ou l’évaluation est temporairement indisponible. Pour une instance auto-hébergée, configurez JEV_ENABLED=true et TYPESAFE_API_KEY, puis redémarrez le serveur.