Guides

Claude Fable 5.2 API : premier appel, prix et 4 pièges

TchaviPar Gael — fondateur de Tchavi

· 9 min de lecture

Retour au blog

Sommaire

Pour appeler l'API de Claude Fable 5.2, change le model en claude-fable-5-2 dans ton client OpenAI et garde le reste, en te méfiant de quatre pièges : trois requêtes qu'Anthropic refuse pour ce modèle (l'outil forcé, la désactivation de la réflexion, le mode JSON simple) et un paramètre ignoré (temperature et ses voisins). Une réponse à une question a coûté entre 70,458 et 140,096 crédits selon l'effort, soit 23,5 F à 46,7 F, calculé le 10 novembre 2026 avec la remise de 12 % en cours. Le détail est ci-dessous, avec le code et une vraie réponse.

Ce guide ne compare pas Fable 5.2 à un autre modèle. Il répond à une seule question : que se passe-t-il quand on branche claude-fable-5-2 dans du code existant ? Anthropic l'a sorti le 9 novembre 2026. Les tokens, les latences et les capacités ci-dessous viennent de nos essais du 10 novembre 2026.

Ce que coûte une réponse : trois niveaux d'effort

Même question, trois niveaux de output_config.effort, essayés par nous le 10 novembre 2026 sur claude-fable-5-2. Les trois réponses se sont arrêtées sur end_turn : ce sont des réponses complètes, pas coupées. Ces appels sont partis directement chez Anthropic : les tokens et les latences sont mesurés, les crédits sont calculés (tokens multipliés par notre grille, pas un montant facturé).

EffortTokens en entréeTokens en sortieCrédits (calculés)Coût en F CFALatence
low11988870,45823,5 F11,3 s
high1201 17492,57330,9 F14,9 s
xhigh1201 789140,09646,7 F22,4 s

Le prix facturé le 10 novembre 2026 est de 15,453 crédits par 1 000 tokens en entrée et 77,273 crédits par 1 000 tokens en sortie, à 1 crédit = 0,3333 F. C'est une remise de 12 % sur le prix catalogue (17,56 et 87,81 crédits), valable jusqu'au 31 décembre 2026. Après cette date, les mêmes essais coûteraient environ 12 % de plus. Relis la page du modèle avant de budgéter : prix et remises bougent.

Une question coûte donc quelques dizaines de francs, et l'effort double à peu près la facture entre low et xhigh (de 70,458 à 140,096 crédits sur cet essai). C'est un modèle qu'on appelle quand la réponse vaut ce prix, pas pour répondre « bonjour ».

Une mise en garde sur les chiffres d'Anthropic. Dans la fiche système du modèle (§8.4), Anthropic montre l'effort multipliant le coût par tâche d'environ 21 (de 2,10 $ à 44,70 $). Cette mesure porte sur un long benchmark de programmation agentique, où un effort plus haut achète plus de tours et plus de sous-agents. N'applique pas ce multiplicateur à un appel unique : sur le nôtre, le rapport est d'environ 2.

Un détail qui fait des factures : l'effort par défaut de ce modèle est high, alors que celui d'Opus 5.5 est medium. Si tu changes la chaîne du modèle sans rien d'autre, tu as aussi changé l'effort.

Le premier appel

Le code OpenAI ne change que par la clé, l'URL de base et le modèle (documentation de l'URL de base). Clé sk-tch-…, URL https://tchavi.com/api/v1 :

import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: process.env.TCHAVI_API_KEY, // sk-tch-...
  baseURL: 'https://tchavi.com/api/v1',
});

const res = await client.chat.completions.create({
  model: 'claude-fable-5-2',
  messages: [
    {
      role: 'user',
      content:
        "Une API de mobile money renvoie parfois HTTP 200 alors que la transaction a échoué chez l'opérateur. Nous créditons depuis le webhook, jamais depuis le callback client. Quels sont les trois risques les plus sérieux qui restent ?",
    },
  ],
});

console.log(res.choices[0].message.content);

Le point d'entrée au format Anthropic, /v1/messages, fonctionne aussi. Caractéristiques lues sur l'API des modèles le 10 novembre 2026 (GET /v1/models/claude-fable-5-2) : 1 000 000 tokens en entrée, 128 000 en sortie, images et PDF en entrée, sorties structurées, traitement par lots, citations, exécution de code, gestion du contexte, outils côté serveur (recherche web, exécution de code), effort low, medium, high, xhigh ou max, réflexion adaptative seulement. Sorti le 9 novembre 2026.

Quatre pièges : trois requêtes refusées, un paramètre ignoré

Ce sont les comportements documentés par Anthropic pour ce modèle, relevés sur son API des modèles et dans sa documentation le 10 novembre 2026. Tchavi transmet tes requêtes : nous n'avons pas encore rejoué ces trois refus à travers notre propre API, sauf le quatrième, que notre code confirme. Si tu migres du code qui marchait avec un autre modèle, c'est là qu'il risque de casser.

1. L'outil forcé est refusé par Anthropic

tool_choice: {"type":"any"}, ou un outil nommé, est rejeté par Anthropic pour ce modèle. Trois sorties :

  • Passe tool_choice: "auto" et écris dans le prompt quel outil appeler : « Appelle l'outil creer_commande avec ces données. »
  • Mets strict: true sur l'outil, pour que les arguments soient quand même validés contre ton schéma (comportement décrit par Anthropic, non testé par nous à travers le format OpenAI).
  • Si l'appel forcé n'existait que pour récupérer du JSON, utilise une sortie structurée (piège 4).
const res = await client.chat.completions.create({
  model: 'claude-fable-5-2',
  tools: [creerCommandeTool],
  tool_choice: 'auto', // pas { type: 'function', function: { name: ... } }
  messages: [
    {
      role: 'user',
      content: "Appelle l'outil creer_commande pour : 2 pagnes, livraison à Cotonou.",
    },
  ],
});

2. Les paramètres d'échantillonnage sont refusés par Anthropic, Tchavi les retire

temperature, top_p et top_k sont refusés par Anthropic pour ce modèle. Tchavi les retire plutôt que de faire échouer ta requête : ton appel passe, sans erreur. Mais ils n'ont aucun effet : un test qui comptait sur temperature: 0 pour être reproductible ne l'est plus.

3. La réflexion ne se désactive pas

L'API des modèles d'Anthropic indique que disabled, between_tools et enabled sont tous non pris en charge : une requête qui tente de couper la réflexion est refusée. Le seul réglage est output_config.effort. La page de prompting d'Anthropic ajoute qu'à high, le modèle réfléchit avant presque chaque réponse, « y compris une réponse à un salut ». C'est donc le mauvais outil pour un chatbot bon marché : tu paierais de la réflexion pour dire bonjour. Pour ce cas d'usage, prends un modèle plus léger.

4. Le mode JSON simple est refusé

response_format: {"type":"json_object"} n'a pas d'équivalent chez Anthropic. Celui-ci, nous l'avons vérifié dans notre propre code (anthropic-translator.ts) : le proxy le refuse pour les modèles Claude et renvoie vers json_schema, avec ton schéma. Il est transmis à Anthropic sous la forme output_config.format.

const res = await client.chat.completions.create({
  model: 'claude-fable-5-2',
  messages: [{ role: 'user', content: 'Extrais le montant et la devise : « 12 500 F CFA »' }],
  response_format: {
    type: 'json_schema',
    json_schema: {
      name: 'paiement',
      strict: true,
      schema: {
        type: 'object',
        properties: { montant: { type: 'number' }, devise: { type: 'string' } },
        required: ['montant', 'devise'],
        additionalProperties: false,
      },
    },
  },
});

Les erreurs du proxy suivent le format décrit dans la documentation des erreurs.

Une dernière contrainte, côté Anthropic : ce modèle exige une conservation des données de 30 jours, il n'est donc pas servi sous rétention zéro des données. Si ton contrat l'interdit, choisis un autre modèle.

Une vraie réponse, sur notre propre sujet

Nous lui avons posé la question du code ci-dessus, en français : une API de mobile money renvoie parfois HTTP 200 alors que la transaction a échoué chez l'opérateur, nous créditons depuis le webhook et jamais depuis le callback client, quels sont les trois risques les plus sérieux qui restent ? La réponse (119 tokens en entrée, 888 en sortie, end_turn, 70,458 crédits calculés soit 23,5 F, essai du 10 novembre 2026 à l'effort low) commence par « Créditer depuis le webhook est le bon choix, mais il reste trois failles sérieuses » et les nomme :

  1. Webhook falsifié ou mensonger. Vérifier la signature HMAC sur le corps brut avec une comparaison en temps constant, ne jamais créditer sur la seule foi du webhook mais interroger l'API de statut de l'opérateur de serveur à serveur, comparer montant, devise et référence avec la commande d'origine.
  2. Double crédit. Une contrainte d'unicité sur l'identifiant de transaction de l'opérateur, et le crédit avec le changement d'état dans une seule transaction SQL, avec une transition conditionnelle du type UPDATE ... SET statut='credite' WHERE id=? AND statut='en_attente'.
  3. Webhook manquant, tardif ou contredit après coup. Un job de réconciliation pour les transactions restées en attente, un rapprochement quotidien avec le relevé de règlement de l'opérateur, et la gestion des annulations (reversal).

Elle conclut que si l'on ne devait en faire qu'un, la vérification active du statut avant crédit, combinée au rapprochement quotidien, couvre le défaut décrit. Les trois risques sont réels et les remèdes sont classiques. Ce n'est pas une preuve de qualité en général : c'est une question, un essai.

Faut-il commencer par Fable 5.2 ?

Anthropic recommande de l'essayer quand tes tests sur Opus 5.5 à un effort plus haut ne suffisent pas encore. Choisir entre les deux est une question à part, traitée dans Claude Fable 5.2 ou Opus 5.5. Si tu n'as pas encore de test qui échoue, commence par Claude Sonnet 5.5 : même clé, même URL, tu changes seulement le champ model.

FAQ

Comment appeler l'API de Claude Fable 5.2 avec le SDK OpenAI ?

Mets baseURL: 'https://tchavi.com/api/v1', ta clé sk-tch-… et model: 'claude-fable-5-2'. Le format /v1/messages d'Anthropic fonctionne aussi.

Combien coûte une réponse de Claude Fable 5.2 ?

Sur une même question essayée le 10 novembre 2026 : 70,458 crédits (23,5 F) à l'effort low, 92,573 (30,9 F) à high, 140,096 (46,7 F) à xhigh, remise de 12 % comprise, valable jusqu'au 31 décembre 2026. Le prix facturé est de 15,453 et 77,273 crédits par 1 000 tokens (entrée et sortie), contre 17,56 et 87,81 au catalogue.

Pourquoi mon tool_choice forcé échoue-t-il ?

Anthropic refuse l'outil forcé pour ce modèle. Passe tool_choice: "auto" et nomme l'outil dans le prompt, ajoute strict: true sur l'outil, ou utilise une sortie structurée si tu voulais juste du JSON.

Puis-je désactiver la réflexion de Claude Fable 5.2 ?

Non. Seul output_config.effort (low à max) règle l'intensité. L'effort par défaut est high.

temperature marche-t-elle sur Claude Fable 5.2 ?

Non : Anthropic la refuse pour ce modèle. Tchavi la retire pour que l'appel passe, mais elle n'a aucun effet.

Comment obtenir du JSON valide ?

Pas avec json_object, que notre proxy refuse pour les modèles Claude. Utilise response_format de type json_schema avec ton schéma.

Puis-je tester avec les crédits d'inscription ?

Les comptes éligibles reçoivent 50 crédits offerts à la vérification de l'e-mail, une seule fois : cela ne couvre pas un essai complet (70,458 crédits à l'effort low). Recharge à partir de 1 000 F CFA, sans carte bancaire.

Crée ton compte et recharge en Mobile Money

Cet article fait partie de la série « Construire un SaaS IA depuis l'Afrique francophone ». Tchavi est une passerelle d'API IA compatible OpenAI : une clé donne accès à plus de 100 modèles texte, image, audio et vidéo, et se paie en Mobile Money, sans carte bancaire (pays et opérateurs). Plus de guides sur le blog. Suis-nous : LinkedIn et X.

Partager

Ton premier appel d'API, payé en mobile money

Sans carte bancaire. Recharge à partir de 1 000 F ; ta première recharge ajoute 150 crédits de bonus, et tes crédits n'expirent pas.