{
  "aboutHtml": "<p>Inkling est le modèle multimodal à poids ouverts de Thinking Machines Lab pour le raisonnement, le code, la conversation et les applications agentiques. Il accepte du texte, des images et de l’audio et renvoie du texte. Son architecture à mélange d’experts compte 975 milliards de paramètres au total, dont 41 milliards actifs, ce qui en fait le plus grand modèle de la famille. Inkling-Small est un modèle distinct de 276 milliards de paramètres, dont 12 milliards actifs, et non un réglage modifiant la longueur des réponses d’Inkling.</p><p>Pour une tâche de code importante, fournissez les contenus pertinents du dépôt, le comportement observé et le résultat souhaité. Demandez au modèle de retracer le chemin responsable, de proposer une modification et de rapporter les éléments issus des vérifications réellement exécutées dans l’environnement connecté. Pour comparer des documents, identifiez les sections sources et demandez les différences pertinentes, les éléments qui les étayent et toute question sans réponse. Les applications prévues comprennent les assistants de programmation, les chatbots, la génération augmentée par récupération et les agents utilisant des outils, avec un résultat final adapté à l’application qui le consomme.</p><p>Inkling prend en charge jusqu’à un million de tokens de contexte. Utilisez cet espace pour réunir un contenu source important et les faits essentiels de la conversation, en les organisant autour d’une question précise. Distinguez les faits sources des hypothèses et laissez de la place au livrable écrit complet. Ce contexte plus grand permet de travailler sur une collection étendue ; il ne transforme pas la réponse en vue en direct d’un système dont les informations actuelles n’ont pas été fournies.</p><p>L’effort de réflexion est un réglage continu de 0.0 inclus à strictement moins de 1.0. Les préréglages de départ du fournisseur sont none 0.0, minimal 0.1, low 0.2, medium 0.7, high 0.9 et xhigh 0.99, high étant la valeur par défaut du renderer. L’effort et le budget de tokens de génération sont indépendants. Un effort accru peut encourager davantage de raisonnement et nécessiter plus de place avant la réponse finale, tandis que none oriente vers l’absence de raisonnement sans imposer de restriction stricte. Choisissez une valeur adaptée à la mission et explicitez le livrable attendu et la condition d’achèvement.</p><p>L’entrée visuelle permet la description d’images, les questions sur le contenu visible, les graphiques, les schémas et le raisonnement mathématique visuel. Pour de bonnes performances, utilisez des dimensions d’image comprises entre 40 et 4 096 pixels. Gardez les libellés pertinents et le contexte des schémas lisibles. Inkling peut utiliser un outil Python configuré pour zoomer, recadrer ou examiner une image par programme, en reliant les observations visuelles au raisonnement par le code. Une réponse utile sur un graphique conserve les valeurs observées et montre comment elles étayent la conclusion, sans supposer qu’un recadrage ou un calcul a eu lieu simplement parce qu’il a été proposé.</p><p>L’entrée audio utilise du WAV échantillonné à 16 kHz, et le fabricant recommande des enregistrements de 20 minutes au maximum pour des performances optimales. Il s’agit d’une recommandation de préparation. Inkling peut transcrire la parole, suivre des consignes orales, répondre à des questions sur des enregistrements et raisonner sur de l’audio long. Fournissez l’enregistrement pertinent avec la question écrite et tout document de référence nécessaire à son interprétation. Un livrable de réunion peut séparer les faits énoncés d’un résumé ou d’une interprétation ultérieure. Le modèle produit du texte ; sa compréhension audio se distingue donc de la synthèse d’une réponse parlée.</p><p>Pour une mission utilisant des outils, décrivez les opérations disponibles et leurs arguments et conservez les observations réelles renvoyées par l’application. Un résultat de recherche peut fournir des éléments actuels ; un calcul, un travail numérique ; une opération sur fichier, le contenu examiné. L’action proposée par le modèle et le résultat exécuté sont deux parties distinctes de la conversation. Gardez la réponse finale reliée à ces observations, notamment lorsqu’elle suggère une modification de code ou une prochaine étape dans l’application.</p><p>Inkling a été entraîné pour la calibration et le suivi des consignes, notamment pour exprimer l’incertitude lorsqu’une réponse n’est pas établie. Pour une prévision ou une analyse fondée sur des éléments probants, demandez que les hypothèses, les éléments disponibles et les conditions non résolues apparaissent dans le résultat écrit. Pour l’extraction, définissez la représentation d’une valeur absente au lieu d’exiger que chaque champ contienne un fait inventé. Ces consignes rendent le résultat utile à la vérification sans traiter la confiance ou un long raisonnement comme une preuve d’exactitude.</p><p>Les poids ouverts permettent l’ajustement fin et l’intégration en aval. Un modèle spécialisé est développé à partir d’exemples représentatifs et d’un comportement cible, tandis qu’une requête d’inférence ordinaire fournit le contexte de la tâche présente. Le fournisseur illustre la personnalisation comme un workflow distinct ; une réponse normale ne bascule pas implicitement vers de nouveaux poids. Conservez les éléments d’origine et les contraintes demandées avec le livrable final pour qu’une relance puisse réviser un fait, affiner la formulation ou examiner un autre chemin de code tout en gardant la mission cohérente.</p>",
  "aboutText": "Inkling est le modèle multimodal à poids ouverts de Thinking Machines Lab pour le raisonnement, le code, la conversation et les applications agentiques. Il accepte du texte, des images et de l’audio et renvoie du texte. Son architecture à mélange d’experts compte 975 milliards de paramètres au total, dont 41 milliards actifs, ce qui en fait le plus grand modèle de la famille. Inkling-Small est un modèle distinct de 276 milliards de paramètres, dont 12 milliards actifs, et non un réglage modifiant la longueur des réponses d’Inkling.\n\nPour une tâche de code importante, fournissez les contenus pertinents du dépôt, le comportement observé et le résultat souhaité. Demandez au modèle de retracer le chemin responsable, de proposer une modification et de rapporter les éléments issus des vérifications réellement exécutées dans l’environnement connecté. Pour comparer des documents, identifiez les sections sources et demandez les différences pertinentes, les éléments qui les étayent et toute question sans réponse. Les applications prévues comprennent les assistants de programmation, les chatbots, la génération augmentée par récupération et les agents utilisant des outils, avec un résultat final adapté à l’application qui le consomme.\n\nInkling prend en charge jusqu’à un million de tokens de contexte. Utilisez cet espace pour réunir un contenu source important et les faits essentiels de la conversation, en les organisant autour d’une question précise. Distinguez les faits sources des hypothèses et laissez de la place au livrable écrit complet. Ce contexte plus grand permet de travailler sur une collection étendue ; il ne transforme pas la réponse en vue en direct d’un système dont les informations actuelles n’ont pas été fournies.\n\nL’effort de réflexion est un réglage continu de 0.0 inclus à strictement moins de 1.0. Les préréglages de départ du fournisseur sont none 0.0, minimal 0.1, low 0.2, medium 0.7, high 0.9 et xhigh 0.99, high étant la valeur par défaut du renderer. L’effort et le budget de tokens de génération sont indépendants. Un effort accru peut encourager davantage de raisonnement et nécessiter plus de place avant la réponse finale, tandis que none oriente vers l’absence de raisonnement sans imposer de restriction stricte. Choisissez une valeur adaptée à la mission et explicitez le livrable attendu et la condition d’achèvement.\n\nL’entrée visuelle permet la description d’images, les questions sur le contenu visible, les graphiques, les schémas et le raisonnement mathématique visuel. Pour de bonnes performances, utilisez des dimensions d’image comprises entre 40 et 4 096 pixels. Gardez les libellés pertinents et le contexte des schémas lisibles. Inkling peut utiliser un outil Python configuré pour zoomer, recadrer ou examiner une image par programme, en reliant les observations visuelles au raisonnement par le code. Une réponse utile sur un graphique conserve les valeurs observées et montre comment elles étayent la conclusion, sans supposer qu’un recadrage ou un calcul a eu lieu simplement parce qu’il a été proposé.\n\nL’entrée audio utilise du WAV échantillonné à 16 kHz, et le fabricant recommande des enregistrements de 20 minutes au maximum pour des performances optimales. Il s’agit d’une recommandation de préparation. Inkling peut transcrire la parole, suivre des consignes orales, répondre à des questions sur des enregistrements et raisonner sur de l’audio long. Fournissez l’enregistrement pertinent avec la question écrite et tout document de référence nécessaire à son interprétation. Un livrable de réunion peut séparer les faits énoncés d’un résumé ou d’une interprétation ultérieure. Le modèle produit du texte ; sa compréhension audio se distingue donc de la synthèse d’une réponse parlée.\n\nPour une mission utilisant des outils, décrivez les opérations disponibles et leurs arguments et conservez les observations réelles renvoyées par l’application. Un résultat de recherche peut fournir des éléments actuels ; un calcul, un travail numérique ; une opération sur fichier, le contenu examiné. L’action proposée par le modèle et le résultat exécuté sont deux parties distinctes de la conversation. Gardez la réponse finale reliée à ces observations, notamment lorsqu’elle suggère une modification de code ou une prochaine étape dans l’application.\n\nInkling a été entraîné pour la calibration et le suivi des consignes, notamment pour exprimer l’incertitude lorsqu’une réponse n’est pas établie. Pour une prévision ou une analyse fondée sur des éléments probants, demandez que les hypothèses, les éléments disponibles et les conditions non résolues apparaissent dans le résultat écrit. Pour l’extraction, définissez la représentation d’une valeur absente au lieu d’exiger que chaque champ contienne un fait inventé. Ces consignes rendent le résultat utile à la vérification sans traiter la confiance ou un long raisonnement comme une preuve d’exactitude.\n\nLes poids ouverts permettent l’ajustement fin et l’intégration en aval. Un modèle spécialisé est développé à partir d’exemples représentatifs et d’un comportement cible, tandis qu’une requête d’inférence ordinaire fournit le contexte de la tâche présente. Le fournisseur illustre la personnalisation comme un workflow distinct ; une réponse normale ne bascule pas implicitement vers de nouveaux poids. Conservez les éléments d’origine et les contraintes demandées avec le livrable final pour qu’une relance puisse réviser un fait, affiner la formulation ou examiner un autre chemin de code tout en gardant la mission cohérente.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "d308e489e5eb20441d51f569f91ef5a21f688037cc99a704c82982d636679076",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "fr",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Thinking Machines: Inkling (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: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\">Premiers pas</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%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%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\">Premiers pas</h3><p class=\"mdesc-full\">Inkling est un modèle multimodal à poids ouverts pour le raisonnement général, le code et l’utilisation agentique d’outils. Il combine texte, images et audio dans un grand contexte, avec un effort de réflexion réglable et des sorties écrites pour l’analyse de sources, la programmation et les applications conversationnelles.</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 est le modèle multimodal à poids ouverts de Thinking Machines Lab pour le raisonnement, le code, la conversation et les applications agentiques. Il accepte du texte, des images et de l’audio et renvoie du texte. Son architecture à mélange d’experts compte 975 milliards de paramètres au total, dont 41 milliards actifs, ce qui en fait le plus grand modèle de la famille. Inkling-Small est un modèle distinct de 276 milliards de paramètres, dont 12 milliards actifs, et non un réglage modifiant la longueur des réponses d’Inkling.</p><p>Pour une tâche de code importante, fournissez les contenus pertinents du dépôt, le comportement observé et le résultat souhaité. Demandez au modèle de retracer le chemin responsable, de proposer une modification et de rapporter les éléments issus des vérifications réellement exécutées dans l’environnement connecté. Pour comparer des documents, identifiez les sections sources et demandez les différences pertinentes, les éléments qui les étayent et toute question sans réponse. Les applications prévues comprennent les assistants de programmation, les chatbots, la génération augmentée par récupération et les agents utilisant des outils, avec un résultat final adapté à l’application qui le consomme.</p><p>Inkling prend en charge jusqu’à un million de tokens de contexte. Utilisez cet espace pour réunir un contenu source important et les faits essentiels de la conversation, en les organisant autour d’une question précise. Distinguez les faits sources des hypothèses et laissez de la place au livrable écrit complet. Ce contexte plus grand permet de travailler sur une collection étendue ; il ne transforme pas la réponse en vue en direct d’un système dont les informations actuelles n’ont pas été fournies.</p><p>L’effort de réflexion est un réglage continu de 0.0 inclus à strictement moins de 1.0. Les préréglages de départ du fournisseur sont none 0.0, minimal 0.1, low 0.2, medium 0.7, high 0.9 et xhigh 0.99, high étant la valeur par défaut du renderer. L’effort et le budget de tokens de génération sont indépendants. Un effort accru peut encourager davantage de raisonnement et nécessiter plus de place avant la réponse finale, tandis que none oriente vers l’absence de raisonnement sans imposer de restriction stricte. Choisissez une valeur adaptée à la mission et explicitez le livrable attendu et la condition d’achèvement.</p><p>L’entrée visuelle permet la description d’images, les questions sur le contenu visible, les graphiques, les schémas et le raisonnement mathématique visuel. Pour de bonnes performances, utilisez des dimensions d’image comprises entre 40 et 4 096 pixels. Gardez les libellés pertinents et le contexte des schémas lisibles. Inkling peut utiliser un outil Python configuré pour zoomer, recadrer ou examiner une image par programme, en reliant les observations visuelles au raisonnement par le code. Une réponse utile sur un graphique conserve les valeurs observées et montre comment elles étayent la conclusion, sans supposer qu’un recadrage ou un calcul a eu lieu simplement parce qu’il a été proposé.</p><p>L’entrée audio utilise du WAV échantillonné à 16 kHz, et le fabricant recommande des enregistrements de 20 minutes au maximum pour des performances optimales. Il s’agit d’une recommandation de préparation. Inkling peut transcrire la parole, suivre des consignes orales, répondre à des questions sur des enregistrements et raisonner sur de l’audio long. Fournissez l’enregistrement pertinent avec la question écrite et tout document de référence nécessaire à son interprétation. Un livrable de réunion peut séparer les faits énoncés d’un résumé ou d’une interprétation ultérieure. Le modèle produit du texte ; sa compréhension audio se distingue donc de la synthèse d’une réponse parlée.</p><p>Pour une mission utilisant des outils, décrivez les opérations disponibles et leurs arguments et conservez les observations réelles renvoyées par l’application. Un résultat de recherche peut fournir des éléments actuels ; un calcul, un travail numérique ; une opération sur fichier, le contenu examiné. L’action proposée par le modèle et le résultat exécuté sont deux parties distinctes de la conversation. Gardez la réponse finale reliée à ces observations, notamment lorsqu’elle suggère une modification de code ou une prochaine étape dans l’application.</p><p>Inkling a été entraîné pour la calibration et le suivi des consignes, notamment pour exprimer l’incertitude lorsqu’une réponse n’est pas établie. Pour une prévision ou une analyse fondée sur des éléments probants, demandez que les hypothèses, les éléments disponibles et les conditions non résolues apparaissent dans le résultat écrit. Pour l’extraction, définissez la représentation d’une valeur absente au lieu d’exiger que chaque champ contienne un fait inventé. Ces consignes rendent le résultat utile à la vérification sans traiter la confiance ou un long raisonnement comme une preuve d’exactitude.</p><p>Les poids ouverts permettent l’ajustement fin et l’intégration en aval. Un modèle spécialisé est développé à partir d’exemples représentatifs et d’un comportement cible, tandis qu’une requête d’inférence ordinaire fournit le contexte de la tâche présente. Le fournisseur illustre la personnalisation comme un workflow distinct ; une réponse normale ne bascule pas implicitement vers de nouveaux poids. Conservez les éléments d’origine et les contraintes demandées avec le livrable final pour qu’une relance puisse réviser un fait, affiner la formulation ou examiner un autre chemin de code tout en gardant la mission cohérente.</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 · Chat OpenAI</b> <code>POST /v1/chat/completions</code></summary><dl class=\"method-capabilities\"><div><dt>Types d’entrée</dt><dd><code>text</code></dd></div><div><dt>Types de 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: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\">Lorsqu’un cache explicite est demandé</span></dd><dt>Tarifs nuls pour le texte seul</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 exclusivement textuelles</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 par jeton</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 · Tokens en entrée</span> <b>$0</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Sortie · Tokens en sortie</span> <b>$0</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Entrée · Lecture du cache</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Entrée · Écriture dans le cache</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Entrée · Écriture dans le cache, 1 h</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</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/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 · Chat OpenAI</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-62-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-62-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · créer une seule fois et conserver 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-62-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-62-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: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 · Chat OpenAI</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%3Afree&amp;route=Ultra&amp;caller=thinkingmachines%2Finkling%3Afree&amp;fmt=chat\"><code>thinkingmachines/inkling: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%3Afree&amp;route=Ultra&amp;caller=thinkingmachines%2Finkling%3Afree&amp;fmt=chat\"><code>thinkingmachines/inkling:free</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "thinkingmachines/inkling:free",
        "fmt": "chat",
        "http": "POST",
        "path": "/v1/chat/completions",
        "request_model_id": "thinkingmachines/inkling:free",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|chat|/v1/chat/completions|thinkingmachines%2Finkling%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: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: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: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: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: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": "Chat OpenAI",
        "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: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 (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: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\">Premiers pas</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%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%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\">Premiers pas</h3><p class=\"mdesc-full\">Inkling est un modèle multimodal à poids ouverts pour le raisonnement général, le code et l’utilisation agentique d’outils. Il combine texte, images et audio dans un grand contexte, avec un effort de réflexion réglable et des sorties écrites pour l’analyse de sources, la programmation et les applications conversationnelles.</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 est le modèle multimodal à poids ouverts de Thinking Machines Lab pour le raisonnement, le code, la conversation et les applications agentiques. Il accepte du texte, des images et de l’audio et renvoie du texte. Son architecture à mélange d’experts compte 975 milliards de paramètres au total, dont 41 milliards actifs, ce qui en fait le plus grand modèle de la famille. Inkling-Small est un modèle distinct de 276 milliards de paramètres, dont 12 milliards actifs, et non un réglage modifiant la longueur des réponses d’Inkling.</p><p>Pour une tâche de code importante, fournissez les contenus pertinents du dépôt, le comportement observé et le résultat souhaité. Demandez au modèle de retracer le chemin responsable, de proposer une modification et de rapporter les éléments issus des vérifications réellement exécutées dans l’environnement connecté. Pour comparer des documents, identifiez les sections sources et demandez les différences pertinentes, les éléments qui les étayent et toute question sans réponse. Les applications prévues comprennent les assistants de programmation, les chatbots, la génération augmentée par récupération et les agents utilisant des outils, avec un résultat final adapté à l’application qui le consomme.</p><p>Inkling prend en charge jusqu’à un million de tokens de contexte. Utilisez cet espace pour réunir un contenu source important et les faits essentiels de la conversation, en les organisant autour d’une question précise. Distinguez les faits sources des hypothèses et laissez de la place au livrable écrit complet. Ce contexte plus grand permet de travailler sur une collection étendue ; il ne transforme pas la réponse en vue en direct d’un système dont les informations actuelles n’ont pas été fournies.</p><p>L’effort de réflexion est un réglage continu de 0.0 inclus à strictement moins de 1.0. Les préréglages de départ du fournisseur sont none 0.0, minimal 0.1, low 0.2, medium 0.7, high 0.9 et xhigh 0.99, high étant la valeur par défaut du renderer. L’effort et le budget de tokens de génération sont indépendants. Un effort accru peut encourager davantage de raisonnement et nécessiter plus de place avant la réponse finale, tandis que none oriente vers l’absence de raisonnement sans imposer de restriction stricte. Choisissez une valeur adaptée à la mission et explicitez le livrable attendu et la condition d’achèvement.</p><p>L’entrée visuelle permet la description d’images, les questions sur le contenu visible, les graphiques, les schémas et le raisonnement mathématique visuel. Pour de bonnes performances, utilisez des dimensions d’image comprises entre 40 et 4 096 pixels. Gardez les libellés pertinents et le contexte des schémas lisibles. Inkling peut utiliser un outil Python configuré pour zoomer, recadrer ou examiner une image par programme, en reliant les observations visuelles au raisonnement par le code. Une réponse utile sur un graphique conserve les valeurs observées et montre comment elles étayent la conclusion, sans supposer qu’un recadrage ou un calcul a eu lieu simplement parce qu’il a été proposé.</p><p>L’entrée audio utilise du WAV échantillonné à 16 kHz, et le fabricant recommande des enregistrements de 20 minutes au maximum pour des performances optimales. Il s’agit d’une recommandation de préparation. Inkling peut transcrire la parole, suivre des consignes orales, répondre à des questions sur des enregistrements et raisonner sur de l’audio long. Fournissez l’enregistrement pertinent avec la question écrite et tout document de référence nécessaire à son interprétation. Un livrable de réunion peut séparer les faits énoncés d’un résumé ou d’une interprétation ultérieure. Le modèle produit du texte ; sa compréhension audio se distingue donc de la synthèse d’une réponse parlée.</p><p>Pour une mission utilisant des outils, décrivez les opérations disponibles et leurs arguments et conservez les observations réelles renvoyées par l’application. Un résultat de recherche peut fournir des éléments actuels ; un calcul, un travail numérique ; une opération sur fichier, le contenu examiné. L’action proposée par le modèle et le résultat exécuté sont deux parties distinctes de la conversation. Gardez la réponse finale reliée à ces observations, notamment lorsqu’elle suggère une modification de code ou une prochaine étape dans l’application.</p><p>Inkling a été entraîné pour la calibration et le suivi des consignes, notamment pour exprimer l’incertitude lorsqu’une réponse n’est pas établie. Pour une prévision ou une analyse fondée sur des éléments probants, demandez que les hypothèses, les éléments disponibles et les conditions non résolues apparaissent dans le résultat écrit. Pour l’extraction, définissez la représentation d’une valeur absente au lieu d’exiger que chaque champ contienne un fait inventé. Ces consignes rendent le résultat utile à la vérification sans traiter la confiance ou un long raisonnement comme une preuve d’exactitude.</p><p>Les poids ouverts permettent l’ajustement fin et l’intégration en aval. Un modèle spécialisé est développé à partir d’exemples représentatifs et d’un comportement cible, tandis qu’une requête d’inférence ordinaire fournit le contexte de la tâche présente. Le fournisseur illustre la personnalisation comme un workflow distinct ; une réponse normale ne bascule pas implicitement vers de nouveaux poids. Conservez les éléments d’origine et les contraintes demandées avec le livrable final pour qu’une relance puisse réviser un fait, affiner la formulation ou examiner un autre chemin de code tout en gardant la mission cohérente.</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 · Messages Anthropic</b> <code>POST /v1/messages</code></summary><dl class=\"method-capabilities\"><div><dt>Types d’entrée</dt><dd><code>text</code></dd></div><div><dt>Types de 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: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 seul</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 exclusivement textuelles</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 par jeton</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 · Tokens en entrée</span> <b>$0</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Sortie · Tokens en sortie</span> <b>$0</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Entrée · Lecture du cache</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Entrée · Écriture dans le cache</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Entrée · Écriture dans le cache, 1 h</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</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/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 · Messages Anthropic</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-63-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-63-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · créer une seule fois et conserver 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-63-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-63-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: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 · Messages Anthropic</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%3Afree&amp;route=Ultra&amp;caller=thinkingmachines%2Finkling%3Afree&amp;fmt=messages\"><code>thinkingmachines/inkling: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%3Afree&amp;route=Ultra&amp;caller=thinkingmachines%2Finkling%3Afree&amp;fmt=messages\"><code>thinkingmachines/inkling:free</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "thinkingmachines/inkling:free",
        "fmt": "messages",
        "http": "POST",
        "path": "/v1/messages",
        "request_model_id": "thinkingmachines/inkling:free",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|messages|/v1/messages|thinkingmachines%2Finkling%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: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: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: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: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: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": "Messages Anthropic",
        "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: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:free",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "146cd17b0c9f85415eba51357766f8be137cb9838e9d6a5d85b6d251cd86a68f",
    "input_html_sha256": "b7da7b0a531950cee7ba97d52b9883a8b458807f5ad4904f40ce704c6411322b",
    "private_audit_sha256": "a125b2e164f34dcf3e2ade2af2486e7a96f1cd2670cce3308a620edd9e246236",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/fr/thinkingmachines-inkling-u003a-free/",
    "description": "Inkling est un modèle multimodal à poids ouverts pour le raisonnement général, le code et l’utilisation agentique d’outils. Il combine texte, images et audio dans un grand contexte, avec un effort de réflexion réglable et des sorties écrites pour l’analyse de sources, la programmation et les applications conversationnelles.",
    "locale": "fr",
    "md_url": "https://ailoot.ai/models/fr/thinkingmachines-inkling-u003a-free/index.md",
    "title": "Thinking Machines: Inkling (free) — Ailoot",
    "url": "https://ailoot.ai/models/fr/thinkingmachines-inkling-u003a-free/"
  },
  "rawModel": {
    "about": "Inkling est le modèle multimodal à poids ouverts de Thinking Machines Lab pour le raisonnement, le code, la conversation et les applications agentiques. Il accepte du texte, des images et de l’audio et renvoie du texte. Son architecture à mélange d’experts compte 975 milliards de paramètres au total, dont 41 milliards actifs, ce qui en fait le plus grand modèle de la famille. Inkling-Small est un modèle distinct de 276 milliards de paramètres, dont 12 milliards actifs, et non un réglage modifiant la longueur des réponses d’Inkling.\n\nPour une tâche de code importante, fournissez les contenus pertinents du dépôt, le comportement observé et le résultat souhaité. Demandez au modèle de retracer le chemin responsable, de proposer une modification et de rapporter les éléments issus des vérifications réellement exécutées dans l’environnement connecté. Pour comparer des documents, identifiez les sections sources et demandez les différences pertinentes, les éléments qui les étayent et toute question sans réponse. Les applications prévues comprennent les assistants de programmation, les chatbots, la génération augmentée par récupération et les agents utilisant des outils, avec un résultat final adapté à l’application qui le consomme.\n\nInkling prend en charge jusqu’à un million de tokens de contexte. Utilisez cet espace pour réunir un contenu source important et les faits essentiels de la conversation, en les organisant autour d’une question précise. Distinguez les faits sources des hypothèses et laissez de la place au livrable écrit complet. Ce contexte plus grand permet de travailler sur une collection étendue ; il ne transforme pas la réponse en vue en direct d’un système dont les informations actuelles n’ont pas été fournies.\n\nL’effort de réflexion est un réglage continu de 0.0 inclus à strictement moins de 1.0. Les préréglages de départ du fournisseur sont none 0.0, minimal 0.1, low 0.2, medium 0.7, high 0.9 et xhigh 0.99, high étant la valeur par défaut du renderer. L’effort et le budget de tokens de génération sont indépendants. Un effort accru peut encourager davantage de raisonnement et nécessiter plus de place avant la réponse finale, tandis que none oriente vers l’absence de raisonnement sans imposer de restriction stricte. Choisissez une valeur adaptée à la mission et explicitez le livrable attendu et la condition d’achèvement.\n\nL’entrée visuelle permet la description d’images, les questions sur le contenu visible, les graphiques, les schémas et le raisonnement mathématique visuel. Pour de bonnes performances, utilisez des dimensions d’image comprises entre 40 et 4 096 pixels. Gardez les libellés pertinents et le contexte des schémas lisibles. Inkling peut utiliser un outil Python configuré pour zoomer, recadrer ou examiner une image par programme, en reliant les observations visuelles au raisonnement par le code. Une réponse utile sur un graphique conserve les valeurs observées et montre comment elles étayent la conclusion, sans supposer qu’un recadrage ou un calcul a eu lieu simplement parce qu’il a été proposé.\n\nL’entrée audio utilise du WAV échantillonné à 16 kHz, et le fabricant recommande des enregistrements de 20 minutes au maximum pour des performances optimales. Il s’agit d’une recommandation de préparation. Inkling peut transcrire la parole, suivre des consignes orales, répondre à des questions sur des enregistrements et raisonner sur de l’audio long. Fournissez l’enregistrement pertinent avec la question écrite et tout document de référence nécessaire à son interprétation. Un livrable de réunion peut séparer les faits énoncés d’un résumé ou d’une interprétation ultérieure. Le modèle produit du texte ; sa compréhension audio se distingue donc de la synthèse d’une réponse parlée.\n\nPour une mission utilisant des outils, décrivez les opérations disponibles et leurs arguments et conservez les observations réelles renvoyées par l’application. Un résultat de recherche peut fournir des éléments actuels ; un calcul, un travail numérique ; une opération sur fichier, le contenu examiné. L’action proposée par le modèle et le résultat exécuté sont deux parties distinctes de la conversation. Gardez la réponse finale reliée à ces observations, notamment lorsqu’elle suggère une modification de code ou une prochaine étape dans l’application.\n\nInkling a été entraîné pour la calibration et le suivi des consignes, notamment pour exprimer l’incertitude lorsqu’une réponse n’est pas établie. Pour une prévision ou une analyse fondée sur des éléments probants, demandez que les hypothèses, les éléments disponibles et les conditions non résolues apparaissent dans le résultat écrit. Pour l’extraction, définissez la représentation d’une valeur absente au lieu d’exiger que chaque champ contienne un fait inventé. Ces consignes rendent le résultat utile à la vérification sans traiter la confiance ou un long raisonnement comme une preuve d’exactitude.\n\nLes poids ouverts permettent l’ajustement fin et l’intégration en aval. Un modèle spécialisé est développé à partir d’exemples représentatifs et d’un comportement cible, tandis qu’une requête d’inférence ordinaire fournit le contexte de la tâche présente. Le fournisseur illustre la personnalisation comme un workflow distinct ; une réponse normale ne bascule pas implicitement vers de nouveaux poids. Conservez les éléments d’origine et les contraintes demandées avec le livrable final pour qu’une relance puisse réviser un fait, affiner la formulation ou examiner un autre chemin de code tout en gardant la mission cohérente.",
    "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: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: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: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: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: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: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": "Chat OpenAI",
        "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: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: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: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: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: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: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": "Messages Anthropic",
        "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: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:free",
        "request_model_id": "thinkingmachines/inkling:free",
        "route_label": "Ultra"
      }
    ],
    "name": "Thinking Machines: Inkling (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 est un modèle multimodal à poids ouverts pour le raisonnement général, le code et l’utilisation agentique d’outils. Il combine texte, images et audio dans un grand contexte, avec un effort de réflexion réglable et des sorties écrites pour l’analyse de sources, la programmation et les applications conversationnelles."
  },
  "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 est un modèle multimodal à poids ouverts pour le raisonnement général, le code et l’utilisation agentique d’outils. Il combine texte, images et audio dans un grand contexte, avec un effort de réflexion réglable et des sorties écrites pour l’analyse de sources, la programmation et les applications conversationnelles.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "b1d5a801faa93e87a3d032b8d5a010e1b58df067feb2e0790aa08feea6c590cd",
    "renderer_sha256": "44d2db1deadc475e1793597083716540bae7bbc53606f05f58780fec5f115dd4"
  },
  "sourceRevision": "5d03ef03839c61bb703bca68c0611be305341a9c29cada94d0d30c1318b21db9"
}
