{
  "aboutHtml": "<p>Inkling-Small est le modèle multimodal à poids ouverts de plus petite taille de Thinking Machines Lab pour le raisonnement, le code, la conversation et les applications utilisant des outils. Il accepte du texte, des images et de l’audio et produit du texte. Sa conception à mélange d’experts compte 276 milliards de paramètres au total, dont 12 milliards actifs, comparativement aux 975 milliards au total et aux 41 milliards actifs d’Inkling. Small est un modèle publié distinct avec un autre équilibre entre efficacité et capacités, et non un mode de sortie plus courte d’Inkling.</p><p>Pour une investigation de code, fournissez les fichiers touchés, le comportement observé et la modification nécessaire, puis demandez le chemin responsable et une correction ciblée. Un livrable final utile comprend la modification proposée et les éléments issus des vérifications réellement exécutées par l’application connectée. Pour un assistant de soutien, fournissez la politique pertinente et les faits de la conversation et demandez la prochaine réponse ou la question manquante. Les usages visés comprennent les assistants de code, les agents conversationnels, les réponses augmentées par récupération et les systèmes agentiques avec outils d’application.</p><p>La fenêtre de contexte atteint un million de jetons. Organisez un long dépôt ou un ensemble de documents avec des noms de fichiers, des étiquettes de sections et une question claire, en conservant les faits qu’une étape ultérieure devra utiliser. Une grande fenêtre est utile pour comparer des informations éloignées, mais le résultat demandé doit rester précis : une modification de code, une explication fondée sur des sources ou des champs extraits. L’information nouvelle ou privée doit figurer dans les éléments fournis ou les résultats de récupération retournés, plutôt que d’être supposée faire partie des connaissances apprises.</p><p>L’effort de réflexion est réglable. Le guide de la famille du fournisseur utilise des valeurs continues de 0.0 inclusivement à moins de 1.0, avec les préréglages none, minimal, low, medium, high et xhigh correspondant à 0.0, 0.1, 0.2, 0.7, 0.9 et 0.99. Le moteur de rendu du fournisseur utilise high par défaut. Un effort plus élevé peut favoriser plus de raisonnement et demander un budget de génération supérieur, mais ne garantit pas une réponse plus longue ou plus exacte. Une valeur de zéro oriente le modèle vers l’absence de raisonnement sans imposer son absence stricte. Choisissez l’effort selon la tâche et gardez l’exigence de sortie finale claire.</p><p>Les images peuvent servir aux questions visuelles, à l’interprétation de graphiques ou de diagrammes et au raisonnement mathématique à partir d’information visible. Pour de bonnes performances, utilisez des images dont les dimensions se situent entre 40 et 4 096 pixels. Préservez la lisibilité des étiquettes et expliquez le détail important. Avec un outil Python configuré, le modèle peut combiner le raisonnement visuel avec le recadrage, le zoom et l’examen par programmation d’un document ou d’un graphique. Ces opérations doivent être exécutées par l’environnement d’outils connecté; la réponse écrite doit utiliser les observations qu’il retourne.</p><p>L’entrée audio est WAV échantillonné à 16 kHz, avec des enregistrements idéalement de moins de deux minutes pour des performances optimales. C’est une recommandation de préparation, et non une garantie stricte de durée. Utilisez une question parlée pertinente ou un court clip et précisez si le résultat écrit doit transcrire la parole, répondre à une question sur l’enregistrement ou relier son contenu à d’autres éléments fournis. La réponse native est textuelle plutôt que vocale. La recommandation distincte d’Inkling pour l’audio plus long ne doit pas être transférée à l’édition Small.</p><p>Les flux utilisant des outils nécessitent des descriptions utiles des outils, des définitions d’arguments et les résultats des opérations exécutées par l’application. Gardez le résultat d’une consultation, d’un calcul ou d’une observation de fichier distinct de l’action proposée par le modèle. Pour un écart dans un graphique, identifiez les étiquettes pertinentes, examinez les valeurs fournies avec un outil de calcul et demandez une explication qui cite ces valeurs. Le modèle est entraîné pour divers environnements de code et d’agents; la tâche et les outils qui l’entourent doivent donc être décrits plutôt que laissés implicites.</p><p>Les poids ouverts permettent la recherche sur les modèles, l’ajustement fin et l’intégration à des produits en aval. La version Inkling-Small suit un point de contrôle preview antérieur et comprend de l’entraînement supplémentaire pour le code agentique; le modèle final et cette preview doivent conserver des identités distinctes. Pour une extraction ou un style de réponse spécialisé, la personnalisation utilise des exemples représentatifs et un comportement cible explicite. Une invite ordinaire fournit plutôt du contexte pour la requête actuelle; elle ne crée pas de modèle nouvellement entraîné et ne bascule pas vers un tel modèle.</p><p>Une vérification utile du résultat confirme que la modification de code proposée, la transcription, les faits extraits ou la réponse écrite correspondent aux éléments fournis. Précisez comment l’incertitude et l’information manquante doivent apparaître, surtout pour une prévision ou une réponse factuelle dont la source est incomplète. Le fabricant a entraîné Inkling-Small pour calibrer les prévisions par apprentissage par renforcement selon des règles de score propres sur des questions réelles, afin d’exprimer une confiance adaptée aux éléments disponibles. Conservez le contenu et les observations des outils avec le livrable pour qu’un suivi puisse réviser un point sans perdre la tâche d’origine. Les capacités générales multilingues et multimodales d’Inkling-Small demeurent distinctes d’un générateur vocal dédié ou d’un service d’action externe garanti.</p>",
  "aboutText": "Inkling-Small est le modèle multimodal à poids ouverts de plus petite taille de Thinking Machines Lab pour le raisonnement, le code, la conversation et les applications utilisant des outils. Il accepte du texte, des images et de l’audio et produit du texte. Sa conception à mélange d’experts compte 276 milliards de paramètres au total, dont 12 milliards actifs, comparativement aux 975 milliards au total et aux 41 milliards actifs d’Inkling. Small est un modèle publié distinct avec un autre équilibre entre efficacité et capacités, et non un mode de sortie plus courte d’Inkling.\n\nPour une investigation de code, fournissez les fichiers touchés, le comportement observé et la modification nécessaire, puis demandez le chemin responsable et une correction ciblée. Un livrable final utile comprend la modification proposée et les éléments issus des vérifications réellement exécutées par l’application connectée. Pour un assistant de soutien, fournissez la politique pertinente et les faits de la conversation et demandez la prochaine réponse ou la question manquante. Les usages visés comprennent les assistants de code, les agents conversationnels, les réponses augmentées par récupération et les systèmes agentiques avec outils d’application.\n\nLa fenêtre de contexte atteint un million de jetons. Organisez un long dépôt ou un ensemble de documents avec des noms de fichiers, des étiquettes de sections et une question claire, en conservant les faits qu’une étape ultérieure devra utiliser. Une grande fenêtre est utile pour comparer des informations éloignées, mais le résultat demandé doit rester précis : une modification de code, une explication fondée sur des sources ou des champs extraits. L’information nouvelle ou privée doit figurer dans les éléments fournis ou les résultats de récupération retournés, plutôt que d’être supposée faire partie des connaissances apprises.\n\nL’effort de réflexion est réglable. Le guide de la famille du fournisseur utilise des valeurs continues de 0.0 inclusivement à moins de 1.0, avec les préréglages none, minimal, low, medium, high et xhigh correspondant à 0.0, 0.1, 0.2, 0.7, 0.9 et 0.99. Le moteur de rendu du fournisseur utilise high par défaut. Un effort plus élevé peut favoriser plus de raisonnement et demander un budget de génération supérieur, mais ne garantit pas une réponse plus longue ou plus exacte. Une valeur de zéro oriente le modèle vers l’absence de raisonnement sans imposer son absence stricte. Choisissez l’effort selon la tâche et gardez l’exigence de sortie finale claire.\n\nLes images peuvent servir aux questions visuelles, à l’interprétation de graphiques ou de diagrammes et au raisonnement mathématique à partir d’information visible. Pour de bonnes performances, utilisez des images dont les dimensions se situent entre 40 et 4 096 pixels. Préservez la lisibilité des étiquettes et expliquez le détail important. Avec un outil Python configuré, le modèle peut combiner le raisonnement visuel avec le recadrage, le zoom et l’examen par programmation d’un document ou d’un graphique. Ces opérations doivent être exécutées par l’environnement d’outils connecté; la réponse écrite doit utiliser les observations qu’il retourne.\n\nL’entrée audio est WAV échantillonné à 16 kHz, avec des enregistrements idéalement de moins de deux minutes pour des performances optimales. C’est une recommandation de préparation, et non une garantie stricte de durée. Utilisez une question parlée pertinente ou un court clip et précisez si le résultat écrit doit transcrire la parole, répondre à une question sur l’enregistrement ou relier son contenu à d’autres éléments fournis. La réponse native est textuelle plutôt que vocale. La recommandation distincte d’Inkling pour l’audio plus long ne doit pas être transférée à l’édition Small.\n\nLes flux utilisant des outils nécessitent des descriptions utiles des outils, des définitions d’arguments et les résultats des opérations exécutées par l’application. Gardez le résultat d’une consultation, d’un calcul ou d’une observation de fichier distinct de l’action proposée par le modèle. Pour un écart dans un graphique, identifiez les étiquettes pertinentes, examinez les valeurs fournies avec un outil de calcul et demandez une explication qui cite ces valeurs. Le modèle est entraîné pour divers environnements de code et d’agents; la tâche et les outils qui l’entourent doivent donc être décrits plutôt que laissés implicites.\n\nLes poids ouverts permettent la recherche sur les modèles, l’ajustement fin et l’intégration à des produits en aval. La version Inkling-Small suit un point de contrôle preview antérieur et comprend de l’entraînement supplémentaire pour le code agentique; le modèle final et cette preview doivent conserver des identités distinctes. Pour une extraction ou un style de réponse spécialisé, la personnalisation utilise des exemples représentatifs et un comportement cible explicite. Une invite ordinaire fournit plutôt du contexte pour la requête actuelle; elle ne crée pas de modèle nouvellement entraîné et ne bascule pas vers un tel modèle.\n\nUne vérification utile du résultat confirme que la modification de code proposée, la transcription, les faits extraits ou la réponse écrite correspondent aux éléments fournis. Précisez comment l’incertitude et l’information manquante doivent apparaître, surtout pour une prévision ou une réponse factuelle dont la source est incomplète. Le fabricant a entraîné Inkling-Small pour calibrer les prévisions par apprentissage par renforcement selon des règles de score propres sur des questions réelles, afin d’exprimer une confiance adaptée aux éléments disponibles. Conservez le contenu et les observations des outils avec le livrable pour qu’un suivi puisse réviser un point sans perdre la tâche d’origine. Les capacités générales multilingues et multimodales d’Inkling-Small demeurent distinctes d’un générateur vocal dédié ou d’un service d’action externe garanti.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "8d441a68cc04d54c074862483125c75b92a825d489f163e5cba719113586f677",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "fr-ca",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Thinking Machines: Inkling Small (free)</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Fermer\">×</button></div><div class=\"idline\"><span>Thinking Machines /</span><code>thinkingmachines/inkling-small:free</code><button type=\"button\" id=\"copy-id\">Copier l’ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Rubriques de la fiche modèle\"><button type=\"button\" data-card-jump=\"overview\">Pour commencer</button><button type=\"button\" data-card-jump=\"methods\">Entrées et méthodes</button><button type=\"button\" data-card-jump=\"pricing\">Tarifs</button><button type=\"button\" data-card-jump=\"examples\">Exemples</button><button type=\"button\" data-card-jump=\"results\">Résultats</button><button type=\"button\" data-card-jump=\"aliases\">Alias</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Méthodes API\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|chat|/v1/chat/completions|thinkingmachines%2Finkling-small%3Afree\">Chat</button><button type=\"button\" role=\"tab\" tabindex=\"-1\" aria-controls=\"card-method-content\" aria-selected=\"false\" id=\"card-method-tab-1\" data-card-method=\"Ultra|messages|/v1/messages|thinkingmachines%2Finkling-small%3Afree\">Messages</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Pour commencer</h3><p class=\"mdesc-full\">Inkling-Small est un modèle multimodal à poids ouverts pour le code, l’utilisation d’outils et le raisonnement sur du texte, des images et du son. Son effort de raisonnement réglable et son grand contexte permettent des tâches applicatives ciblées avec des résultats écrits, à l’aide d’un modèle actif plus petit que celui d’Inkling.</p><dl class=\"card-io\" data-card-io><div><dt>Entrées acceptées</dt><dd>Texte</dd></div><div><dt>Résultats</dt><dd>Texte</dd></div></dl><details class=\"card-about\"><summary>À propos du modèle</summary><p class=\"note-s\" data-model-method-boundary>Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.</p><div class=\"mabout\" id=\"m-about\"><p>Inkling-Small est le modèle multimodal à poids ouverts de plus petite taille de Thinking Machines Lab pour le raisonnement, le code, la conversation et les applications utilisant des outils. Il accepte du texte, des images et de l’audio et produit du texte. Sa conception à mélange d’experts compte 276 milliards de paramètres au total, dont 12 milliards actifs, comparativement aux 975 milliards au total et aux 41 milliards actifs d’Inkling. Small est un modèle publié distinct avec un autre équilibre entre efficacité et capacités, et non un mode de sortie plus courte d’Inkling.</p><p>Pour une investigation de code, fournissez les fichiers touchés, le comportement observé et la modification nécessaire, puis demandez le chemin responsable et une correction ciblée. Un livrable final utile comprend la modification proposée et les éléments issus des vérifications réellement exécutées par l’application connectée. Pour un assistant de soutien, fournissez la politique pertinente et les faits de la conversation et demandez la prochaine réponse ou la question manquante. Les usages visés comprennent les assistants de code, les agents conversationnels, les réponses augmentées par récupération et les systèmes agentiques avec outils d’application.</p><p>La fenêtre de contexte atteint un million de jetons. Organisez un long dépôt ou un ensemble de documents avec des noms de fichiers, des étiquettes de sections et une question claire, en conservant les faits qu’une étape ultérieure devra utiliser. Une grande fenêtre est utile pour comparer des informations éloignées, mais le résultat demandé doit rester précis : une modification de code, une explication fondée sur des sources ou des champs extraits. L’information nouvelle ou privée doit figurer dans les éléments fournis ou les résultats de récupération retournés, plutôt que d’être supposée faire partie des connaissances apprises.</p><p>L’effort de réflexion est réglable. Le guide de la famille du fournisseur utilise des valeurs continues de 0.0 inclusivement à moins de 1.0, avec les préréglages none, minimal, low, medium, high et xhigh correspondant à 0.0, 0.1, 0.2, 0.7, 0.9 et 0.99. Le moteur de rendu du fournisseur utilise high par défaut. Un effort plus élevé peut favoriser plus de raisonnement et demander un budget de génération supérieur, mais ne garantit pas une réponse plus longue ou plus exacte. Une valeur de zéro oriente le modèle vers l’absence de raisonnement sans imposer son absence stricte. Choisissez l’effort selon la tâche et gardez l’exigence de sortie finale claire.</p><p>Les images peuvent servir aux questions visuelles, à l’interprétation de graphiques ou de diagrammes et au raisonnement mathématique à partir d’information visible. Pour de bonnes performances, utilisez des images dont les dimensions se situent entre 40 et 4 096 pixels. Préservez la lisibilité des étiquettes et expliquez le détail important. Avec un outil Python configuré, le modèle peut combiner le raisonnement visuel avec le recadrage, le zoom et l’examen par programmation d’un document ou d’un graphique. Ces opérations doivent être exécutées par l’environnement d’outils connecté; la réponse écrite doit utiliser les observations qu’il retourne.</p><p>L’entrée audio est WAV échantillonné à 16 kHz, avec des enregistrements idéalement de moins de deux minutes pour des performances optimales. C’est une recommandation de préparation, et non une garantie stricte de durée. Utilisez une question parlée pertinente ou un court clip et précisez si le résultat écrit doit transcrire la parole, répondre à une question sur l’enregistrement ou relier son contenu à d’autres éléments fournis. La réponse native est textuelle plutôt que vocale. La recommandation distincte d’Inkling pour l’audio plus long ne doit pas être transférée à l’édition Small.</p><p>Les flux utilisant des outils nécessitent des descriptions utiles des outils, des définitions d’arguments et les résultats des opérations exécutées par l’application. Gardez le résultat d’une consultation, d’un calcul ou d’une observation de fichier distinct de l’action proposée par le modèle. Pour un écart dans un graphique, identifiez les étiquettes pertinentes, examinez les valeurs fournies avec un outil de calcul et demandez une explication qui cite ces valeurs. Le modèle est entraîné pour divers environnements de code et d’agents; la tâche et les outils qui l’entourent doivent donc être décrits plutôt que laissés implicites.</p><p>Les poids ouverts permettent la recherche sur les modèles, l’ajustement fin et l’intégration à des produits en aval. La version Inkling-Small suit un point de contrôle preview antérieur et comprend de l’entraînement supplémentaire pour le code agentique; le modèle final et cette preview doivent conserver des identités distinctes. Pour une extraction ou un style de réponse spécialisé, la personnalisation utilise des exemples représentatifs et un comportement cible explicite. Une invite ordinaire fournit plutôt du contexte pour la requête actuelle; elle ne crée pas de modèle nouvellement entraîné et ne bascule pas vers un tel modèle.</p><p>Une vérification utile du résultat confirme que la modification de code proposée, la transcription, les faits extraits ou la réponse écrite correspondent aux éléments fournis. Précisez comment l’incertitude et l’information manquante doivent apparaître, surtout pour une prévision ou une réponse factuelle dont la source est incomplète. Le fabricant a entraîné Inkling-Small pour calibrer les prévisions par apprentissage par renforcement selon des règles de score propres sur des questions réelles, afin d’exprimer une confiance adaptée aux éléments disponibles. Conservez le contenu et les observations des outils avec le livrable pour qu’un suivi puisse réviser un point sans perdre la tâche d’origine. Les capacités générales multilingues et multimodales d’Inkling-Small demeurent distinctes d’un générateur vocal dédié ou d’un service d’action externe garanti.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Disponible dans Ailoot · entrées et méthodes</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · OpenAI Chat</b> <code>POST /v1/chat/completions</code></summary><dl class=\"method-capabilities\"><div><dt>Entrée</dt><dd><code>text</code></dd></div><div><dt>Sortie</dt><dd><code>text</code></dd></div><div><dt>Contexte</dt><dd>1 048 576 tokens</dd></div><div><dt>Sortie maximale</dt><dd>262 144 tokens</dd></div><div><dt>Format de sortie</dt><dd>JSON</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Champ</th><th>Type</th><th>Exigence</th><th>Valeurs et limites</th><th>Par défaut</th></tr></thead><tbody><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Obligatoire</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>thinkingmachines/inkling-small:free</div></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">messages</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>array</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Obligatoire</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">stream</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>boolean</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>false</div></td><td data-cell-label=\"Par défaut\" data-default=\"known\"><span class=\"card-cell-label\">Par défaut</span>false</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">max_tokens</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>integer</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>Minimum: 1</div><div>Maximum: 262 144</div></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">max_completion_tokens</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>integer</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>Minimum: 1</div><div>Maximum: 262 144</div></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">n</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>integer</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>Minimum: 1</div><div>Maximum: 128</div></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">temperature</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>number</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">top_p</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>number</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">seed</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>integer</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">stop</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code></code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">frequency_penalty</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>number</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">presence_penalty</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>number</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">user</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Paramètres et cycle de vie de la méthode</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Paramètre</th><th>Contrat</th></tr></thead><tbody><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>content_type</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>application/json</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>required</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>model, messages</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>optional</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>stream, max_tokens, max_completion_tokens, n, temperature, top_p, seed, stop, frequency_penalty, presence_penalty, user</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>material_types</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>text</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>conditions</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>Use literal text messages only. Cache controls, tools, image/audio/video content and streamed responses are unavailable for this method., The complete encoded JSON request must not exceed 1048576 bytes.</td></tr></tbody></table></div><p>Cycle de vie : <code>synchronous_json</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Tarifs</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.</p><dl data-price-conditions><dt>Mode rapide</dt><dd>Tarif standard <span class=\"note-s\">Lorsque le mode rapide est sélectionné</span></dd><dt>Mode Flex</dt><dd>Tarif standard <span class=\"note-s\">Lorsque le mode flex est sélectionné</span></dd><dt>Effort de raisonnement maximal</dt><dd>Tarif standard <span class=\"note-s\">Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)</span></dd><dt>Tarification du cache explicite</dt><dd>Non activé <span class=\"note-s\">Lorsque la mise en cache explicite est demandée</span></dd><dt>Tarifs nuls pour le texte seulement</dt><dd>Text input and output only. Cache, tools, media and streaming are unavailable. <span class=\"note-s\">Pour des entrées et des sorties contenant seulement du texte</span></dd></dl></div><div data-declared-tariff-pricing><h4>Tarifs Ailoot</h4><h4>Prix par configuration</h4><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Configuration</th><th>Barème tarifaire</th><th>Coût</th></tr></thead><tbody><tr><th data-cell-label=\"Configuration\" scope=\"row\"><span class=\"card-cell-label\">Configuration</span>Tarifs de base des jetons</th><td data-cell-label=\"Barème tarifaire\"><span class=\"card-cell-label\">Barème tarifaire</span>Tarif de base</td><td data-cell-label=\"Coût\"><span class=\"card-cell-label\">Coût</span><div><span>Entrée · Jetons en entrée</span> <b>$0</b> <span class=\"price-unit\">/ 1K jetons</span></div><div><span>Sortie · Jetons en sortie</span> <b>$0</b> <span class=\"price-unit\">/ 1K jetons</span></div><div><span>Entrée · Lecture du cache</span> <b>—</b> <span class=\"price-unit\">/ 1K jetons</span></div><div><span>Entrée · Écriture dans le cache</span> <b>—</b> <span class=\"price-unit\">/ 1K jetons</span></div><div><span>Entrée · Écriture dans le cache, 1 h</span> <b>—</b> <span class=\"price-unit\">/ 1K jetons</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. <a href=\"/docs/fr-ca/billing/reserve/\">Fonctionnement de la réservation et du débit →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Exemples de requêtes</h3><h4>Ailoot Ultra · OpenAI Chat</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Variantes du code\"><button class=\"cg-tab\" id=\"model-code-60-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-60-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · créez une seule fois et conservez le résultat complet</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Copier le code\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-60-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-60-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\nexport AILOOT_API_KEY\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;thinkingmachines/inkling-small:free&quot;, &quot;messages&quot;: [{&quot;role&quot;: &quot;user&quot;, &quot;content&quot;: &quot;Summarize the supplied text in three concise points.&quot;}], &quot;stream&quot;: false}&#39;)\n\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Submit once. Retain the complete result, original identifiers and every response header.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Recevoir et enregistrer les résultats</h3><h4>Ailoot Ultra · OpenAI Chat</h4><p class=\"note-s\">JSON</p><div class=\"card-result-process\" data-all-results><h5>Conserver tous les résultats terminés</h5><p class=\"note-s\">Conservez chaque réponse, fichier et partie de contenu renvoyés dans leur intégralité.</p><p class=\"note-s\">Retain the complete response, all actual results, original identifiers, usage and response headers.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Si la réponse d’origine doit être vérifiée</h5><p class=\"note-s\">Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.</p></div></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Alias</h3><h4>Alias du modèle</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=thinkingmachines%2Finkling-small%3Afree&amp;route=Ultra&amp;caller=thinkingmachines%2Finkling-small%3Afree&amp;fmt=chat\"><code>thinkingmachines/inkling-small:free</code></a></span></p><h4>Alias des chemins de méthode</h4><p class=\"note-s\">Utilisez les chemins de méthode indiqués ci-dessus.</p><h4>ID d’appel associés</h4><p class=\"note-s\"><a href=\"#m=thinkingmachines%2Finkling-small%3Afree&amp;route=Ultra&amp;caller=thinkingmachines%2Finkling-small%3Afree&amp;fmt=chat\"><code>thinkingmachines/inkling-small:free</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "thinkingmachines/inkling-small:free",
        "fmt": "chat",
        "http": "POST",
        "path": "/v1/chat/completions",
        "request_model_id": "thinkingmachines/inkling-small:free",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|chat|/v1/chat/completions|thinkingmachines%2Finkling-small%3Afree",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "authentication": {
              "api_key_source": "AILOOT_API_KEY",
              "header": "Authorization: Bearer"
            },
            "example_body": {
              "messages": [
                {
                  "content": "Summarize the supplied text in three concise points.",
                  "role": "user"
                }
              ],
              "model": "thinkingmachines/inkling-small:free",
              "stream": false
            },
            "lifecycle": {
              "cancel_endpoint": null,
              "create": {
                "http": "POST",
                "path": "/v1/chat/completions"
              },
              "mode": "synchronous_json",
              "status": [],
              "unknown": "Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
              "family": "text",
              "format": "JSON"
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "thinkingmachines/inkling-small:free"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "content": {
                      "type": "string"
                    },
                    "role": {
                      "enum": [
                        "user",
                        "assistant",
                        "system",
                        "developer"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "role",
                    "content"
                  ],
                  "type": "object"
                },
                "minItems": 1,
                "name": "messages",
                "required": true,
                "type": "array"
              },
              {
                "default": false,
                "default_known": true,
                "enum": [
                  false
                ],
                "enum_known": true,
                "name": "stream",
                "required": false,
                "type": "boolean"
              },
              {
                "default_known": false,
                "enum_known": false,
                "maximum": 262144,
                "minimum": 1,
                "name": "max_tokens",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "maximum": 262144,
                "minimum": 1,
                "name": "max_completion_tokens",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "maximum": 128,
                "minimum": 1,
                "name": "n",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "temperature",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "top_p",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "seed",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "stop",
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  }
                ],
                "required": false
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "frequency_penalty",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "presence_penalty",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "user",
                "required": false,
                "type": "string"
              }
            ],
            "request_schema": {
              "additionalProperties": false,
              "properties": {
                "frequency_penalty": {
                  "type": "number"
                },
                "max_completion_tokens": {
                  "maximum": 262144,
                  "minimum": 1,
                  "type": "integer"
                },
                "max_tokens": {
                  "maximum": 262144,
                  "minimum": 1,
                  "type": "integer"
                },
                "messages": {
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "content": {
                        "type": "string"
                      },
                      "role": {
                        "enum": [
                          "user",
                          "assistant",
                          "system",
                          "developer"
                        ],
                        "type": "string"
                      }
                    },
                    "required": [
                      "role",
                      "content"
                    ],
                    "type": "object"
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "thinkingmachines/inkling-small:free"
                  ],
                  "type": "string"
                },
                "n": {
                  "maximum": 128,
                  "minimum": 1,
                  "type": "integer"
                },
                "presence_penalty": {
                  "type": "number"
                },
                "seed": {
                  "type": "integer"
                },
                "stop": {
                  "oneOf": [
                    {
                      "type": "string"
                    },
                    {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    }
                  ]
                },
                "stream": {
                  "default": false,
                  "enum": [
                    false
                  ],
                  "type": "boolean"
                },
                "temperature": {
                  "type": "number"
                },
                "top_p": {
                  "type": "number"
                },
                "user": {
                  "type": "string"
                }
              },
              "required": [
                "model",
                "messages"
              ],
              "type": "object"
            },
            "schema_template": {
              "body": {
                "messages": [
                  {
                    "content": "Summarize the supplied text in three concise points.",
                    "role": "user"
                  }
                ],
                "model": "thinkingmachines/inkling-small:free",
                "stream": false
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Use literal text messages only. Cache controls, tools, image/audio/video content and streamed responses are unavailable for this method.",
              "The complete encoded JSON request must not exceed 1048576 bytes."
            ],
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [
              "stream",
              "max_tokens",
              "max_completion_tokens",
              "n",
              "temperature",
              "top_p",
              "seed",
              "stop",
              "frequency_penalty",
              "presence_penalty",
              "user"
            ],
            "required": [
              "model",
              "messages"
            ]
          },
          "lifecycle": {
            "cancel_endpoint": null,
            "create": {
              "http": "POST",
              "path": "/v1/chat/completions"
            },
            "mode": "synchronous_json",
            "status": [],
            "unknown": "Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/chat/completions"
          },
          "method_aliases": [],
          "output": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "family": "text",
            "format": "JSON"
          }
        },
        "ctx": 1048576,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"thinkingmachines/inkling-small:free\", \"messages\": [{\"role\": \"user\", \"content\": \"Summarize the supplied text in three concise points.\"}], \"stream\": false}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Submit once. Retain the complete result, original identifiers and every response header.\n",
            "label": "curl · create once and retain the complete result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": 1,
        "flex_multiplier": 1,
        "fmt": "chat",
        "hints": [
          "Send exact model ID with messages.",
          "Context length is not an output cap.",
          "A text file may supply literal text; image/audio/file-object inputs need exact binding."
        ],
        "http": "POST",
        "img_in": null,
        "img_out": null,
        "in": 0,
        "input": [
          "text"
        ],
        "label": "OpenAI Chat",
        "max_out": 262144,
        "max_reasoning_effort_multiplier": 1,
        "method_aliases": [],
        "out": 0,
        "output": [
          "text"
        ],
        "path": "/v1/chat/completions",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Standard rate",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Standard rate",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Standard rate",
            "when": "When maximum reasoning effort uses the default adjustment"
          },
          {
            "label": "Explicit cache pricing",
            "value": "Not enabled",
            "when": "When explicit cache is requested"
          },
          {
            "label": "Text-only zero rates",
            "value": "Text input and output only. Cache, tools, media and streaming are unavailable.",
            "when": "For text-only input and output"
          }
        ],
        "pricing": {
          "allow_explicit_cache": false,
          "billing_mode": "token",
          "cache_read_price": null,
          "cache_write_1h_price": null,
          "cache_write_price": null,
          "fast_multiplier": 1,
          "flex_multiplier": 1,
          "image_input_price": null,
          "image_output_price": null,
          "input_price": 0,
          "intervals": [],
          "max_reasoning_effort_multiplier": 1,
          "output_price": 0,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "thinkingmachines/inkling-small:free",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "unit": "token",
        "units": [
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    },
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Thinking Machines: Inkling Small (free)</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Fermer\">×</button></div><div class=\"idline\"><span>Thinking Machines /</span><code>thinkingmachines/inkling-small:free</code><button type=\"button\" id=\"copy-id\">Copier l’ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Rubriques de la fiche modèle\"><button type=\"button\" data-card-jump=\"overview\">Pour commencer</button><button type=\"button\" data-card-jump=\"methods\">Entrées et méthodes</button><button type=\"button\" data-card-jump=\"pricing\">Tarifs</button><button type=\"button\" data-card-jump=\"examples\">Exemples</button><button type=\"button\" data-card-jump=\"results\">Résultats</button><button type=\"button\" data-card-jump=\"aliases\">Alias</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Méthodes API\"><button type=\"button\" role=\"tab\" tabindex=\"-1\" aria-controls=\"card-method-content\" aria-selected=\"false\" id=\"card-method-tab-0\" data-card-method=\"Ultra|chat|/v1/chat/completions|thinkingmachines%2Finkling-small%3Afree\">Chat</button><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-1\" data-card-method=\"Ultra|messages|/v1/messages|thinkingmachines%2Finkling-small%3Afree\">Messages</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-1\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Pour commencer</h3><p class=\"mdesc-full\">Inkling-Small est un modèle multimodal à poids ouverts pour le code, l’utilisation d’outils et le raisonnement sur du texte, des images et du son. Son effort de raisonnement réglable et son grand contexte permettent des tâches applicatives ciblées avec des résultats écrits, à l’aide d’un modèle actif plus petit que celui d’Inkling.</p><dl class=\"card-io\" data-card-io><div><dt>Entrées acceptées</dt><dd>Texte</dd></div><div><dt>Résultats</dt><dd>Texte</dd></div></dl><details class=\"card-about\"><summary>À propos du modèle</summary><p class=\"note-s\" data-model-method-boundary>Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.</p><div class=\"mabout\" id=\"m-about\"><p>Inkling-Small est le modèle multimodal à poids ouverts de plus petite taille de Thinking Machines Lab pour le raisonnement, le code, la conversation et les applications utilisant des outils. Il accepte du texte, des images et de l’audio et produit du texte. Sa conception à mélange d’experts compte 276 milliards de paramètres au total, dont 12 milliards actifs, comparativement aux 975 milliards au total et aux 41 milliards actifs d’Inkling. Small est un modèle publié distinct avec un autre équilibre entre efficacité et capacités, et non un mode de sortie plus courte d’Inkling.</p><p>Pour une investigation de code, fournissez les fichiers touchés, le comportement observé et la modification nécessaire, puis demandez le chemin responsable et une correction ciblée. Un livrable final utile comprend la modification proposée et les éléments issus des vérifications réellement exécutées par l’application connectée. Pour un assistant de soutien, fournissez la politique pertinente et les faits de la conversation et demandez la prochaine réponse ou la question manquante. Les usages visés comprennent les assistants de code, les agents conversationnels, les réponses augmentées par récupération et les systèmes agentiques avec outils d’application.</p><p>La fenêtre de contexte atteint un million de jetons. Organisez un long dépôt ou un ensemble de documents avec des noms de fichiers, des étiquettes de sections et une question claire, en conservant les faits qu’une étape ultérieure devra utiliser. Une grande fenêtre est utile pour comparer des informations éloignées, mais le résultat demandé doit rester précis : une modification de code, une explication fondée sur des sources ou des champs extraits. L’information nouvelle ou privée doit figurer dans les éléments fournis ou les résultats de récupération retournés, plutôt que d’être supposée faire partie des connaissances apprises.</p><p>L’effort de réflexion est réglable. Le guide de la famille du fournisseur utilise des valeurs continues de 0.0 inclusivement à moins de 1.0, avec les préréglages none, minimal, low, medium, high et xhigh correspondant à 0.0, 0.1, 0.2, 0.7, 0.9 et 0.99. Le moteur de rendu du fournisseur utilise high par défaut. Un effort plus élevé peut favoriser plus de raisonnement et demander un budget de génération supérieur, mais ne garantit pas une réponse plus longue ou plus exacte. Une valeur de zéro oriente le modèle vers l’absence de raisonnement sans imposer son absence stricte. Choisissez l’effort selon la tâche et gardez l’exigence de sortie finale claire.</p><p>Les images peuvent servir aux questions visuelles, à l’interprétation de graphiques ou de diagrammes et au raisonnement mathématique à partir d’information visible. Pour de bonnes performances, utilisez des images dont les dimensions se situent entre 40 et 4 096 pixels. Préservez la lisibilité des étiquettes et expliquez le détail important. Avec un outil Python configuré, le modèle peut combiner le raisonnement visuel avec le recadrage, le zoom et l’examen par programmation d’un document ou d’un graphique. Ces opérations doivent être exécutées par l’environnement d’outils connecté; la réponse écrite doit utiliser les observations qu’il retourne.</p><p>L’entrée audio est WAV échantillonné à 16 kHz, avec des enregistrements idéalement de moins de deux minutes pour des performances optimales. C’est une recommandation de préparation, et non une garantie stricte de durée. Utilisez une question parlée pertinente ou un court clip et précisez si le résultat écrit doit transcrire la parole, répondre à une question sur l’enregistrement ou relier son contenu à d’autres éléments fournis. La réponse native est textuelle plutôt que vocale. La recommandation distincte d’Inkling pour l’audio plus long ne doit pas être transférée à l’édition Small.</p><p>Les flux utilisant des outils nécessitent des descriptions utiles des outils, des définitions d’arguments et les résultats des opérations exécutées par l’application. Gardez le résultat d’une consultation, d’un calcul ou d’une observation de fichier distinct de l’action proposée par le modèle. Pour un écart dans un graphique, identifiez les étiquettes pertinentes, examinez les valeurs fournies avec un outil de calcul et demandez une explication qui cite ces valeurs. Le modèle est entraîné pour divers environnements de code et d’agents; la tâche et les outils qui l’entourent doivent donc être décrits plutôt que laissés implicites.</p><p>Les poids ouverts permettent la recherche sur les modèles, l’ajustement fin et l’intégration à des produits en aval. La version Inkling-Small suit un point de contrôle preview antérieur et comprend de l’entraînement supplémentaire pour le code agentique; le modèle final et cette preview doivent conserver des identités distinctes. Pour une extraction ou un style de réponse spécialisé, la personnalisation utilise des exemples représentatifs et un comportement cible explicite. Une invite ordinaire fournit plutôt du contexte pour la requête actuelle; elle ne crée pas de modèle nouvellement entraîné et ne bascule pas vers un tel modèle.</p><p>Une vérification utile du résultat confirme que la modification de code proposée, la transcription, les faits extraits ou la réponse écrite correspondent aux éléments fournis. Précisez comment l’incertitude et l’information manquante doivent apparaître, surtout pour une prévision ou une réponse factuelle dont la source est incomplète. Le fabricant a entraîné Inkling-Small pour calibrer les prévisions par apprentissage par renforcement selon des règles de score propres sur des questions réelles, afin d’exprimer une confiance adaptée aux éléments disponibles. Conservez le contenu et les observations des outils avec le livrable pour qu’un suivi puisse réviser un point sans perdre la tâche d’origine. Les capacités générales multilingues et multimodales d’Inkling-Small demeurent distinctes d’un générateur vocal dédié ou d’un service d’action externe garanti.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Disponible dans Ailoot · entrées et méthodes</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Anthropic Messages</b> <code>POST /v1/messages</code></summary><dl class=\"method-capabilities\"><div><dt>Entrée</dt><dd><code>text</code></dd></div><div><dt>Sortie</dt><dd><code>text</code></dd></div><div><dt>Contexte</dt><dd>1 048 576 tokens</dd></div><div><dt>Sortie maximale</dt><dd>262 144 tokens</dd></div><div><dt>Format de sortie</dt><dd>JSON</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Champ</th><th>Type</th><th>Exigence</th><th>Valeurs et limites</th><th>Par défaut</th></tr></thead><tbody><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Obligatoire</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>thinkingmachines/inkling-small:free</div></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">messages</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>array</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Obligatoire</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">stream</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>boolean</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>false</div></td><td data-cell-label=\"Par défaut\" data-default=\"known\"><span class=\"card-cell-label\">Par défaut</span>false</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">system</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">max_tokens</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>integer</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Obligatoire</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>Minimum: 1</div><div>Maximum: 262 144</div></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">temperature</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>number</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">top_p</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>number</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">top_k</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>integer</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">stop_sequences</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>array</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">metadata</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>object</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Facultatif</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Paramètres et cycle de vie de la méthode</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Paramètre</th><th>Contrat</th></tr></thead><tbody><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>content_type</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>application/json</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>required</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>model, messages, max_tokens</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>optional</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>stream, system, temperature, top_p, top_k, stop_sequences, metadata</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>material_types</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>text</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>conditions</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>Use literal text messages only. Cache controls, tools, image/audio/video content and streamed responses are unavailable for this method., The complete encoded JSON request must not exceed 1048576 bytes.</td></tr></tbody></table></div><p>Cycle de vie : <code>synchronous_json</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Tarifs</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.</p><dl data-price-conditions><dt>Mode rapide</dt><dd>Tarif standard <span class=\"note-s\">Lorsque le mode rapide est sélectionné</span></dd><dt>Mode Flex</dt><dd>Tarif standard <span class=\"note-s\">Lorsque le mode flex est sélectionné</span></dd><dt>Effort de raisonnement maximal</dt><dd>Tarif standard <span class=\"note-s\">Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)</span></dd><dt>Tarifs nuls pour le texte seulement</dt><dd>Text input and output only. Cache, tools, media and streaming are unavailable. <span class=\"note-s\">Pour des entrées et des sorties contenant seulement du texte</span></dd></dl></div><div data-declared-tariff-pricing><h4>Tarifs Ailoot</h4><h4>Prix par configuration</h4><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Configuration</th><th>Barème tarifaire</th><th>Coût</th></tr></thead><tbody><tr><th data-cell-label=\"Configuration\" scope=\"row\"><span class=\"card-cell-label\">Configuration</span>Tarifs de base des jetons</th><td data-cell-label=\"Barème tarifaire\"><span class=\"card-cell-label\">Barème tarifaire</span>Tarif de base</td><td data-cell-label=\"Coût\"><span class=\"card-cell-label\">Coût</span><div><span>Entrée · Jetons en entrée</span> <b>$0</b> <span class=\"price-unit\">/ 1K jetons</span></div><div><span>Sortie · Jetons en sortie</span> <b>$0</b> <span class=\"price-unit\">/ 1K jetons</span></div><div><span>Entrée · Lecture du cache</span> <b>—</b> <span class=\"price-unit\">/ 1K jetons</span></div><div><span>Entrée · Écriture dans le cache</span> <b>—</b> <span class=\"price-unit\">/ 1K jetons</span></div><div><span>Entrée · Écriture dans le cache, 1 h</span> <b>—</b> <span class=\"price-unit\">/ 1K jetons</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. <a href=\"/docs/fr-ca/billing/reserve/\">Fonctionnement de la réservation et du débit →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Exemples de requêtes</h3><h4>Ailoot Ultra · Anthropic Messages</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Variantes du code\"><button class=\"cg-tab\" id=\"model-code-61-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-61-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · créez une seule fois et conservez le résultat complet</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Copier le code\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-61-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-61-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\nexport AILOOT_API_KEY\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;thinkingmachines/inkling-small:free&quot;, &quot;messages&quot;: [{&quot;role&quot;: &quot;user&quot;, &quot;content&quot;: &quot;Summarize the supplied text in three concise points.&quot;}], &quot;stream&quot;: false, &quot;max_tokens&quot;: 256}&#39;)\n\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Submit once. Retain the complete result, original identifiers and every response header.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Recevoir et enregistrer les résultats</h3><h4>Ailoot Ultra · Anthropic Messages</h4><p class=\"note-s\">JSON</p><div class=\"card-result-process\" data-all-results><h5>Conserver tous les résultats terminés</h5><p class=\"note-s\">Conservez chaque réponse, fichier et partie de contenu renvoyés dans leur intégralité.</p><p class=\"note-s\">Retain the complete response, all actual results, original identifiers, usage and response headers.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Si la réponse d’origine doit être vérifiée</h5><p class=\"note-s\">Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.</p></div></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Alias</h3><h4>Alias du modèle</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=thinkingmachines%2Finkling-small%3Afree&amp;route=Ultra&amp;caller=thinkingmachines%2Finkling-small%3Afree&amp;fmt=messages\"><code>thinkingmachines/inkling-small:free</code></a></span></p><h4>Alias des chemins de méthode</h4><p class=\"note-s\">Utilisez les chemins de méthode indiqués ci-dessus.</p><h4>ID d’appel associés</h4><p class=\"note-s\"><a href=\"#m=thinkingmachines%2Finkling-small%3Afree&amp;route=Ultra&amp;caller=thinkingmachines%2Finkling-small%3Afree&amp;fmt=messages\"><code>thinkingmachines/inkling-small:free</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "thinkingmachines/inkling-small:free",
        "fmt": "messages",
        "http": "POST",
        "path": "/v1/messages",
        "request_model_id": "thinkingmachines/inkling-small:free",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|messages|/v1/messages|thinkingmachines%2Finkling-small%3Afree",
      "ordinal": 1,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "authentication": {
              "api_key_source": "AILOOT_API_KEY",
              "header": "Authorization: Bearer"
            },
            "example_body": {
              "max_tokens": 256,
              "messages": [
                {
                  "content": "Summarize the supplied text in three concise points.",
                  "role": "user"
                }
              ],
              "model": "thinkingmachines/inkling-small:free",
              "stream": false
            },
            "lifecycle": {
              "cancel_endpoint": null,
              "create": {
                "http": "POST",
                "path": "/v1/messages"
              },
              "mode": "synchronous_json",
              "status": [],
              "unknown": "Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
              "family": "text",
              "format": "JSON"
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "thinkingmachines/inkling-small:free"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "content": {
                      "type": "string"
                    },
                    "role": {
                      "enum": [
                        "user",
                        "assistant"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "role",
                    "content"
                  ],
                  "type": "object"
                },
                "minItems": 1,
                "name": "messages",
                "required": true,
                "type": "array"
              },
              {
                "default": false,
                "default_known": true,
                "enum": [
                  false
                ],
                "enum_known": true,
                "name": "stream",
                "required": false,
                "type": "boolean"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "system",
                "required": false,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "maximum": 262144,
                "minimum": 1,
                "name": "max_tokens",
                "required": true,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "temperature",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "top_p",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "top_k",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "items": {
                  "type": "string"
                },
                "name": "stop_sequences",
                "required": false,
                "type": "array"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "metadata",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "additionalProperties": false,
              "properties": {
                "max_tokens": {
                  "maximum": 262144,
                  "minimum": 1,
                  "type": "integer"
                },
                "messages": {
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "content": {
                        "type": "string"
                      },
                      "role": {
                        "enum": [
                          "user",
                          "assistant"
                        ],
                        "type": "string"
                      }
                    },
                    "required": [
                      "role",
                      "content"
                    ],
                    "type": "object"
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "metadata": {
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "thinkingmachines/inkling-small:free"
                  ],
                  "type": "string"
                },
                "stop_sequences": {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                },
                "stream": {
                  "default": false,
                  "enum": [
                    false
                  ],
                  "type": "boolean"
                },
                "system": {
                  "type": "string"
                },
                "temperature": {
                  "type": "number"
                },
                "top_k": {
                  "type": "integer"
                },
                "top_p": {
                  "type": "number"
                }
              },
              "required": [
                "model",
                "messages",
                "max_tokens"
              ],
              "type": "object"
            },
            "schema_template": {
              "body": {
                "max_tokens": 256,
                "messages": [
                  {
                    "content": "Summarize the supplied text in three concise points.",
                    "role": "user"
                  }
                ],
                "model": "thinkingmachines/inkling-small:free",
                "stream": false
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Use literal text messages only. Cache controls, tools, image/audio/video content and streamed responses are unavailable for this method.",
              "The complete encoded JSON request must not exceed 1048576 bytes."
            ],
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [
              "stream",
              "system",
              "temperature",
              "top_p",
              "top_k",
              "stop_sequences",
              "metadata"
            ],
            "required": [
              "model",
              "messages",
              "max_tokens"
            ]
          },
          "lifecycle": {
            "cancel_endpoint": null,
            "create": {
              "http": "POST",
              "path": "/v1/messages"
            },
            "mode": "synchronous_json",
            "status": [],
            "unknown": "Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/messages"
          },
          "method_aliases": [],
          "output": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "family": "text",
            "format": "JSON"
          }
        },
        "ctx": 1048576,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"thinkingmachines/inkling-small:free\", \"messages\": [{\"role\": \"user\", \"content\": \"Summarize the supplied text in three concise points.\"}], \"stream\": false, \"max_tokens\": 256}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Submit once. Retain the complete result, original identifiers and every response header.\n",
            "label": "curl · create once and retain the complete result",
            "language": "bash"
          }
        ],
        "family": "anthropic",
        "fast_multiplier": 1,
        "flex_multiplier": 1,
        "fmt": "messages",
        "http": "POST",
        "img_in": null,
        "img_out": null,
        "in": 0,
        "input": [
          "text"
        ],
        "label": "Anthropic Messages",
        "max_out": 262144,
        "max_reasoning_effort_multiplier": 1,
        "method_aliases": [],
        "out": 0,
        "output": [
          "text"
        ],
        "path": "/v1/messages",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Standard rate",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Standard rate",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Standard rate",
            "when": "When maximum reasoning effort uses the default adjustment"
          },
          {
            "label": "Text-only zero rates",
            "value": "Text input and output only. Cache, tools, media and streaming are unavailable.",
            "when": "For text-only input and output"
          }
        ],
        "pricing": {
          "billing_mode": "token",
          "cache_read_price": null,
          "cache_write_1h_price": null,
          "cache_write_price": null,
          "fast_multiplier": 1,
          "flex_multiplier": 1,
          "image_input_price": null,
          "image_output_price": null,
          "input_price": 0,
          "intervals": [],
          "max_reasoning_effort_multiplier": 1,
          "output_price": 0,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "thinkingmachines/inkling-small:free",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "unit": "token",
        "units": [
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    }
  ],
  "model_id": "thinkingmachines/inkling-small:free",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "804a3c265640c8ae0b3e678a5fa1227c43549e448440745d9566096f4e6de03a",
    "input_html_sha256": "2e389fdf08535658d034b03516be394694797c3c014bd2ea07068bc89baba6da",
    "private_audit_sha256": "0f18f436e12058d3fc23bd639ce8bf104a81276e1b7b31ac8cdcf761cc6cd457",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/fr-ca/thinkingmachines-inkling-small-u003a-free/",
    "description": "Inkling-Small est un modèle multimodal à poids ouverts pour le code, l’utilisation d’outils et le raisonnement sur du texte, des images et du son. Son effort de raisonnement réglable et son grand contexte permettent des tâches applicatives ciblées avec des résultats écrits, à l’aide d’un modèle actif plus petit que celui d’Inkling.",
    "locale": "fr-ca",
    "md_url": "https://ailoot.ai/models/fr-ca/thinkingmachines-inkling-small-u003a-free/index.md",
    "title": "Thinking Machines: Inkling Small (free) — Ailoot",
    "url": "https://ailoot.ai/models/fr-ca/thinkingmachines-inkling-small-u003a-free/"
  },
  "rawModel": {
    "about": "Inkling-Small est le modèle multimodal à poids ouverts de plus petite taille de Thinking Machines Lab pour le raisonnement, le code, la conversation et les applications utilisant des outils. Il accepte du texte, des images et de l’audio et produit du texte. Sa conception à mélange d’experts compte 276 milliards de paramètres au total, dont 12 milliards actifs, comparativement aux 975 milliards au total et aux 41 milliards actifs d’Inkling. Small est un modèle publié distinct avec un autre équilibre entre efficacité et capacités, et non un mode de sortie plus courte d’Inkling.\n\nPour une investigation de code, fournissez les fichiers touchés, le comportement observé et la modification nécessaire, puis demandez le chemin responsable et une correction ciblée. Un livrable final utile comprend la modification proposée et les éléments issus des vérifications réellement exécutées par l’application connectée. Pour un assistant de soutien, fournissez la politique pertinente et les faits de la conversation et demandez la prochaine réponse ou la question manquante. Les usages visés comprennent les assistants de code, les agents conversationnels, les réponses augmentées par récupération et les systèmes agentiques avec outils d’application.\n\nLa fenêtre de contexte atteint un million de jetons. Organisez un long dépôt ou un ensemble de documents avec des noms de fichiers, des étiquettes de sections et une question claire, en conservant les faits qu’une étape ultérieure devra utiliser. Une grande fenêtre est utile pour comparer des informations éloignées, mais le résultat demandé doit rester précis : une modification de code, une explication fondée sur des sources ou des champs extraits. L’information nouvelle ou privée doit figurer dans les éléments fournis ou les résultats de récupération retournés, plutôt que d’être supposée faire partie des connaissances apprises.\n\nL’effort de réflexion est réglable. Le guide de la famille du fournisseur utilise des valeurs continues de 0.0 inclusivement à moins de 1.0, avec les préréglages none, minimal, low, medium, high et xhigh correspondant à 0.0, 0.1, 0.2, 0.7, 0.9 et 0.99. Le moteur de rendu du fournisseur utilise high par défaut. Un effort plus élevé peut favoriser plus de raisonnement et demander un budget de génération supérieur, mais ne garantit pas une réponse plus longue ou plus exacte. Une valeur de zéro oriente le modèle vers l’absence de raisonnement sans imposer son absence stricte. Choisissez l’effort selon la tâche et gardez l’exigence de sortie finale claire.\n\nLes images peuvent servir aux questions visuelles, à l’interprétation de graphiques ou de diagrammes et au raisonnement mathématique à partir d’information visible. Pour de bonnes performances, utilisez des images dont les dimensions se situent entre 40 et 4 096 pixels. Préservez la lisibilité des étiquettes et expliquez le détail important. Avec un outil Python configuré, le modèle peut combiner le raisonnement visuel avec le recadrage, le zoom et l’examen par programmation d’un document ou d’un graphique. Ces opérations doivent être exécutées par l’environnement d’outils connecté; la réponse écrite doit utiliser les observations qu’il retourne.\n\nL’entrée audio est WAV échantillonné à 16 kHz, avec des enregistrements idéalement de moins de deux minutes pour des performances optimales. C’est une recommandation de préparation, et non une garantie stricte de durée. Utilisez une question parlée pertinente ou un court clip et précisez si le résultat écrit doit transcrire la parole, répondre à une question sur l’enregistrement ou relier son contenu à d’autres éléments fournis. La réponse native est textuelle plutôt que vocale. La recommandation distincte d’Inkling pour l’audio plus long ne doit pas être transférée à l’édition Small.\n\nLes flux utilisant des outils nécessitent des descriptions utiles des outils, des définitions d’arguments et les résultats des opérations exécutées par l’application. Gardez le résultat d’une consultation, d’un calcul ou d’une observation de fichier distinct de l’action proposée par le modèle. Pour un écart dans un graphique, identifiez les étiquettes pertinentes, examinez les valeurs fournies avec un outil de calcul et demandez une explication qui cite ces valeurs. Le modèle est entraîné pour divers environnements de code et d’agents; la tâche et les outils qui l’entourent doivent donc être décrits plutôt que laissés implicites.\n\nLes poids ouverts permettent la recherche sur les modèles, l’ajustement fin et l’intégration à des produits en aval. La version Inkling-Small suit un point de contrôle preview antérieur et comprend de l’entraînement supplémentaire pour le code agentique; le modèle final et cette preview doivent conserver des identités distinctes. Pour une extraction ou un style de réponse spécialisé, la personnalisation utilise des exemples représentatifs et un comportement cible explicite. Une invite ordinaire fournit plutôt du contexte pour la requête actuelle; elle ne crée pas de modèle nouvellement entraîné et ne bascule pas vers un tel modèle.\n\nUne vérification utile du résultat confirme que la modification de code proposée, la transcription, les faits extraits ou la réponse écrite correspondent aux éléments fournis. Précisez comment l’incertitude et l’information manquante doivent apparaître, surtout pour une prévision ou une réponse factuelle dont la source est incomplète. Le fabricant a entraîné Inkling-Small pour calibrer les prévisions par apprentissage par renforcement selon des règles de score propres sur des questions réelles, afin d’exprimer une confiance adaptée aux éléments disponibles. Conservez le contenu et les observations des outils avec le livrable pour qu’un suivi puisse réviser un point sans perdre la tâche d’origine. Les capacités générales multilingues et multimodales d’Inkling-Small demeurent distinctes d’un générateur vocal dédié ou d’un service d’action externe garanti.",
    "alias_of": null,
    "aliases": [],
    "author": "Thinking Machines",
    "capabilities": {
      "context_length": 1048576,
      "manufacturer_input": [
        "text",
        "image",
        "audio"
      ],
      "manufacturer_output": [
        "text"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          }
        ],
        "summary": "La tarification complète de la configuration figure dans les détails."
      }
    ],
    "ctx": null,
    "formats": [
      "chat",
      "messages"
    ],
    "id": "thinkingmachines/inkling-small:free",
    "input": [
      "text"
    ],
    "kind": "text",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "authentication": {
              "api_key_source": "AILOOT_API_KEY",
              "header": "Authorization: Bearer"
            },
            "example_body": {
              "messages": [
                {
                  "content": "Summarize the supplied text in three concise points.",
                  "role": "user"
                }
              ],
              "model": "thinkingmachines/inkling-small:free",
              "stream": false
            },
            "lifecycle": {
              "cancel_endpoint": null,
              "create": {
                "http": "POST",
                "path": "/v1/chat/completions"
              },
              "mode": "synchronous_json",
              "status": [],
              "unknown": "Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
              "family": "text",
              "format": "JSON"
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "thinkingmachines/inkling-small:free"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "content": {
                      "type": "string"
                    },
                    "role": {
                      "enum": [
                        "user",
                        "assistant",
                        "system",
                        "developer"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "role",
                    "content"
                  ],
                  "type": "object"
                },
                "minItems": 1,
                "name": "messages",
                "required": true,
                "type": "array"
              },
              {
                "default": false,
                "default_known": true,
                "enum": [
                  false
                ],
                "enum_known": true,
                "name": "stream",
                "required": false,
                "type": "boolean"
              },
              {
                "default_known": false,
                "enum_known": false,
                "maximum": 262144,
                "minimum": 1,
                "name": "max_tokens",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "maximum": 262144,
                "minimum": 1,
                "name": "max_completion_tokens",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "maximum": 128,
                "minimum": 1,
                "name": "n",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "temperature",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "top_p",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "seed",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "stop",
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  }
                ],
                "required": false
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "frequency_penalty",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "presence_penalty",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "user",
                "required": false,
                "type": "string"
              }
            ],
            "request_schema": {
              "additionalProperties": false,
              "properties": {
                "frequency_penalty": {
                  "type": "number"
                },
                "max_completion_tokens": {
                  "maximum": 262144,
                  "minimum": 1,
                  "type": "integer"
                },
                "max_tokens": {
                  "maximum": 262144,
                  "minimum": 1,
                  "type": "integer"
                },
                "messages": {
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "content": {
                        "type": "string"
                      },
                      "role": {
                        "enum": [
                          "user",
                          "assistant",
                          "system",
                          "developer"
                        ],
                        "type": "string"
                      }
                    },
                    "required": [
                      "role",
                      "content"
                    ],
                    "type": "object"
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "thinkingmachines/inkling-small:free"
                  ],
                  "type": "string"
                },
                "n": {
                  "maximum": 128,
                  "minimum": 1,
                  "type": "integer"
                },
                "presence_penalty": {
                  "type": "number"
                },
                "seed": {
                  "type": "integer"
                },
                "stop": {
                  "oneOf": [
                    {
                      "type": "string"
                    },
                    {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    }
                  ]
                },
                "stream": {
                  "default": false,
                  "enum": [
                    false
                  ],
                  "type": "boolean"
                },
                "temperature": {
                  "type": "number"
                },
                "top_p": {
                  "type": "number"
                },
                "user": {
                  "type": "string"
                }
              },
              "required": [
                "model",
                "messages"
              ],
              "type": "object"
            },
            "schema_template": {
              "body": {
                "messages": [
                  {
                    "content": "Summarize the supplied text in three concise points.",
                    "role": "user"
                  }
                ],
                "model": "thinkingmachines/inkling-small:free",
                "stream": false
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Use literal text messages only. Cache controls, tools, image/audio/video content and streamed responses are unavailable for this method.",
              "The complete encoded JSON request must not exceed 1048576 bytes."
            ],
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [
              "stream",
              "max_tokens",
              "max_completion_tokens",
              "n",
              "temperature",
              "top_p",
              "seed",
              "stop",
              "frequency_penalty",
              "presence_penalty",
              "user"
            ],
            "required": [
              "model",
              "messages"
            ]
          },
          "lifecycle": {
            "cancel_endpoint": null,
            "create": {
              "http": "POST",
              "path": "/v1/chat/completions"
            },
            "mode": "synchronous_json",
            "status": [],
            "unknown": "Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/chat/completions"
          },
          "method_aliases": [],
          "output": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "family": "text",
            "format": "JSON"
          }
        },
        "ctx": 1048576,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"thinkingmachines/inkling-small:free\", \"messages\": [{\"role\": \"user\", \"content\": \"Summarize the supplied text in three concise points.\"}], \"stream\": false}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Submit once. Retain the complete result, original identifiers and every response header.\n",
            "label": "curl · create once and retain the complete result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": 1,
        "flex_multiplier": 1,
        "fmt": "chat",
        "hints": [
          "Send exact model ID with messages.",
          "Context length is not an output cap.",
          "A text file may supply literal text; image/audio/file-object inputs need exact binding."
        ],
        "http": "POST",
        "img_in": null,
        "img_out": null,
        "in": 0,
        "input": [
          "text"
        ],
        "label": "OpenAI Chat",
        "max_out": 262144,
        "max_reasoning_effort_multiplier": 1,
        "method_aliases": [],
        "out": 0,
        "output": [
          "text"
        ],
        "path": "/v1/chat/completions",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Standard rate",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Standard rate",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Standard rate",
            "when": "When maximum reasoning effort uses the default adjustment"
          },
          {
            "label": "Explicit cache pricing",
            "value": "Not enabled",
            "when": "When explicit cache is requested"
          },
          {
            "label": "Text-only zero rates",
            "value": "Text input and output only. Cache, tools, media and streaming are unavailable.",
            "when": "For text-only input and output"
          }
        ],
        "pricing": {
          "allow_explicit_cache": false,
          "billing_mode": "token",
          "cache_read_price": null,
          "cache_write_1h_price": null,
          "cache_write_price": null,
          "fast_multiplier": 1,
          "flex_multiplier": 1,
          "image_input_price": null,
          "image_output_price": null,
          "input_price": 0,
          "intervals": [],
          "max_reasoning_effort_multiplier": 1,
          "output_price": 0,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "thinkingmachines/inkling-small:free",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "unit": "token",
        "units": [
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      },
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "authentication": {
              "api_key_source": "AILOOT_API_KEY",
              "header": "Authorization: Bearer"
            },
            "example_body": {
              "max_tokens": 256,
              "messages": [
                {
                  "content": "Summarize the supplied text in three concise points.",
                  "role": "user"
                }
              ],
              "model": "thinkingmachines/inkling-small:free",
              "stream": false
            },
            "lifecycle": {
              "cancel_endpoint": null,
              "create": {
                "http": "POST",
                "path": "/v1/messages"
              },
              "mode": "synchronous_json",
              "status": [],
              "unknown": "Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
              "family": "text",
              "format": "JSON"
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "thinkingmachines/inkling-small:free"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "content": {
                      "type": "string"
                    },
                    "role": {
                      "enum": [
                        "user",
                        "assistant"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "role",
                    "content"
                  ],
                  "type": "object"
                },
                "minItems": 1,
                "name": "messages",
                "required": true,
                "type": "array"
              },
              {
                "default": false,
                "default_known": true,
                "enum": [
                  false
                ],
                "enum_known": true,
                "name": "stream",
                "required": false,
                "type": "boolean"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "system",
                "required": false,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "maximum": 262144,
                "minimum": 1,
                "name": "max_tokens",
                "required": true,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "temperature",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "top_p",
                "required": false,
                "type": "number"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "top_k",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum_known": false,
                "items": {
                  "type": "string"
                },
                "name": "stop_sequences",
                "required": false,
                "type": "array"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "metadata",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "additionalProperties": false,
              "properties": {
                "max_tokens": {
                  "maximum": 262144,
                  "minimum": 1,
                  "type": "integer"
                },
                "messages": {
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "content": {
                        "type": "string"
                      },
                      "role": {
                        "enum": [
                          "user",
                          "assistant"
                        ],
                        "type": "string"
                      }
                    },
                    "required": [
                      "role",
                      "content"
                    ],
                    "type": "object"
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "metadata": {
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "thinkingmachines/inkling-small:free"
                  ],
                  "type": "string"
                },
                "stop_sequences": {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                },
                "stream": {
                  "default": false,
                  "enum": [
                    false
                  ],
                  "type": "boolean"
                },
                "system": {
                  "type": "string"
                },
                "temperature": {
                  "type": "number"
                },
                "top_k": {
                  "type": "integer"
                },
                "top_p": {
                  "type": "number"
                }
              },
              "required": [
                "model",
                "messages",
                "max_tokens"
              ],
              "type": "object"
            },
            "schema_template": {
              "body": {
                "max_tokens": 256,
                "messages": [
                  {
                    "content": "Summarize the supplied text in three concise points.",
                    "role": "user"
                  }
                ],
                "model": "thinkingmachines/inkling-small:free",
                "stream": false
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Use literal text messages only. Cache controls, tools, image/audio/video content and streamed responses are unavailable for this method.",
              "The complete encoded JSON request must not exceed 1048576 bytes."
            ],
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [
              "stream",
              "system",
              "temperature",
              "top_p",
              "top_k",
              "stop_sequences",
              "metadata"
            ],
            "required": [
              "model",
              "messages",
              "max_tokens"
            ]
          },
          "lifecycle": {
            "cancel_endpoint": null,
            "create": {
              "http": "POST",
              "path": "/v1/messages"
            },
            "mode": "synchronous_json",
            "status": [],
            "unknown": "Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/messages"
          },
          "method_aliases": [],
          "output": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "family": "text",
            "format": "JSON"
          }
        },
        "ctx": 1048576,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"thinkingmachines/inkling-small:free\", \"messages\": [{\"role\": \"user\", \"content\": \"Summarize the supplied text in three concise points.\"}], \"stream\": false, \"max_tokens\": 256}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Submit once. Retain the complete result, original identifiers and every response header.\n",
            "label": "curl · create once and retain the complete result",
            "language": "bash"
          }
        ],
        "family": "anthropic",
        "fast_multiplier": 1,
        "flex_multiplier": 1,
        "fmt": "messages",
        "http": "POST",
        "img_in": null,
        "img_out": null,
        "in": 0,
        "input": [
          "text"
        ],
        "label": "Anthropic Messages",
        "max_out": 262144,
        "max_reasoning_effort_multiplier": 1,
        "method_aliases": [],
        "out": 0,
        "output": [
          "text"
        ],
        "path": "/v1/messages",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Standard rate",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Standard rate",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Standard rate",
            "when": "When maximum reasoning effort uses the default adjustment"
          },
          {
            "label": "Text-only zero rates",
            "value": "Text input and output only. Cache, tools, media and streaming are unavailable.",
            "when": "For text-only input and output"
          }
        ],
        "pricing": {
          "billing_mode": "token",
          "cache_read_price": null,
          "cache_write_1h_price": null,
          "cache_write_price": null,
          "fast_multiplier": 1,
          "flex_multiplier": 1,
          "image_input_price": null,
          "image_output_price": null,
          "input_price": 0,
          "intervals": [],
          "max_reasoning_effort_multiplier": 1,
          "output_price": 0,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "thinkingmachines/inkling-small:free",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "unit": "token",
        "units": [
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "thinkingmachines/inkling-small:free",
        "request_model_id": "thinkingmachines/inkling-small:free",
        "route_label": "Ultra"
      }
    ],
    "name": "Thinking Machines: Inkling Small (free)",
    "price": {
      "in": 0,
      "in_label": null,
      "out": 0,
      "out_label": null,
      "scope_label": "Token rates",
      "sort_in": 0,
      "sort_out": 0,
      "varies": true
    },
    "short": "Inkling-Small est un modèle multimodal à poids ouverts pour le code, l’utilisation d’outils et le raisonnement sur du texte, des images et du son. Son effort de raisonnement réglable et son grand contexte permettent des tâches applicatives ciblées avec des résultats écrits, à l’aide d’un modèle actif plus petit que celui d’Inkling."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        },
        {
          "contract_json_pointer": "/methods/1/rawMethod/contract",
          "html_json_pointer": "/methods/1/html",
          "method_ordinal": 1
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod",
        "/methods/1/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Inkling-Small est un modèle multimodal à poids ouverts pour le code, l’utilisation d’outils et le raisonnement sur du texte, des images et du son. Son effort de raisonnement réglable et son grand contexte permettent des tâches applicatives ciblées avec des résultats écrits, à l’aide d’un modèle actif plus petit que celui d’Inkling.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "0a209a2581ae56f44a91a276d499e64ea0ee975af04a2143dacfb54cb06af4c3",
    "renderer_sha256": "98cb81b9c4ef4923c22e586170e7cdf67056351148a1666fb03dd6a4a26716a3"
  },
  "sourceRevision": "66eebe4a98163c68ad1528e9d2a2e27faf11be0b8593db84eff166cae2567477"
}
