{
  "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 qui modifie la longueur des réponses d’Inkling.</p><p>Pour une tâche de code importante, fournissez le contenu pertinent 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 une comparaison de documents, identifiez les sections sources et demandez les différences pertinentes, leurs éléments à l’appui et toute question sans réponse. Les applications visées comprennent les assistants de code, 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 conséquent et les faits importants de la conversation, en les organisant autour d’une question précise. Distinguez les faits sources des hypothèses et laissez de la place pour le livrable écrit complet. Le contexte plus vaste 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 contrôle continu allant de 0.0 inclus à une valeur inférieure à 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, avec high par défaut dans le moteur de rendu. L’effort et le budget de tokens de génération sont indépendants. Un effort supérieur peut encourager davantage de raisonnement et nécessiter plus d’espace 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 tâche et rendez explicites 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 lisibles les libellés pertinents et le contexte des schémas. Inkling peut utiliser un outil Python configuré pour zoomer, recadrer ou examiner une image par programmation, en reliant les observations visuelles au raisonnement fondé sur le code. Une réponse utile sur un graphique conserve les valeurs observées et montre comment elles soutiennent 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 concepteur 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 des contenus audio longs. Fournissez l’enregistrement pertinent avec la question écrite et toute référence nécessaire à son interprétation. Un livrable de réunion peut distinguer les faits prononcés d’un résumé ou d’une interprétation ultérieurs. 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 tâche fondée sur 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 peut fournir un travail numérique ; une opération sur un fichier peut établir 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, surtout lorsqu’elle suggère une modification de code ou une prochaine étape dans l’application.</p><p>Inkling a été entraîné à la calibration et au suivi des consignes, notamment à 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 les hypothèses, les éléments à l’appui et les conditions non résolues dans le résultat écrit. Pour une extraction, définissez la représentation d’une valeur absente au lieu d’exiger un fait inventé dans chaque champ. Ces consignes rendent un résultat utile à vérifier, 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 montre la personnalisation comme un processus séparé ; une réponse normale ne passe pas discrètement à de nouveaux poids. Conservez les éléments d’origine et les contraintes demandées avec le livrable final afin qu’un suivi puisse réviser un fait, affiner la formulation ou examiner un autre chemin de code tout en gardant la cohérence de la même tâche.</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 qui modifie la longueur des réponses d’Inkling.\n\nPour une tâche de code importante, fournissez le contenu pertinent 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 une comparaison de documents, identifiez les sections sources et demandez les différences pertinentes, leurs éléments à l’appui et toute question sans réponse. Les applications visées comprennent les assistants de code, 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 conséquent et les faits importants de la conversation, en les organisant autour d’une question précise. Distinguez les faits sources des hypothèses et laissez de la place pour le livrable écrit complet. Le contexte plus vaste 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 contrôle continu allant de 0.0 inclus à une valeur inférieure à 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, avec high par défaut dans le moteur de rendu. L’effort et le budget de tokens de génération sont indépendants. Un effort supérieur peut encourager davantage de raisonnement et nécessiter plus d’espace 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 tâche et rendez explicites 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 lisibles les libellés pertinents et le contexte des schémas. Inkling peut utiliser un outil Python configuré pour zoomer, recadrer ou examiner une image par programmation, en reliant les observations visuelles au raisonnement fondé sur le code. Une réponse utile sur un graphique conserve les valeurs observées et montre comment elles soutiennent 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 concepteur 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 des contenus audio longs. Fournissez l’enregistrement pertinent avec la question écrite et toute référence nécessaire à son interprétation. Un livrable de réunion peut distinguer les faits prononcés d’un résumé ou d’une interprétation ultérieurs. 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 tâche fondée sur 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 peut fournir un travail numérique ; une opération sur un fichier peut établir 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, surtout lorsqu’elle suggère une modification de code ou une prochaine étape dans l’application.\n\nInkling a été entraîné à la calibration et au suivi des consignes, notamment à 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 les hypothèses, les éléments à l’appui et les conditions non résolues dans le résultat écrit. Pour une extraction, définissez la représentation d’une valeur absente au lieu d’exiger un fait inventé dans chaque champ. Ces consignes rendent un résultat utile à vérifier, 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 montre la personnalisation comme un processus séparé ; une réponse normale ne passe pas discrètement à de nouveaux poids. Conservez les éléments d’origine et les contraintes demandées avec le livrable final afin qu’un suivi puisse réviser un fait, affiner la formulation ou examiner un autre chemin de code tout en gardant la cohérence de la même tâche.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "4ed9b4603ace13988c799eb00493e3153592dc196082a77d433e69340f092552",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "fr-be",
  "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 vaste contexte, avec un effort de réflexion réglable et des sorties écrites pour l’analyse de sources, le travail de 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 qui modifie la longueur des réponses d’Inkling.</p><p>Pour une tâche de code importante, fournissez le contenu pertinent 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 une comparaison de documents, identifiez les sections sources et demandez les différences pertinentes, leurs éléments à l’appui et toute question sans réponse. Les applications visées comprennent les assistants de code, 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 conséquent et les faits importants de la conversation, en les organisant autour d’une question précise. Distinguez les faits sources des hypothèses et laissez de la place pour le livrable écrit complet. Le contexte plus vaste 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 contrôle continu allant de 0.0 inclus à une valeur inférieure à 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, avec high par défaut dans le moteur de rendu. L’effort et le budget de tokens de génération sont indépendants. Un effort supérieur peut encourager davantage de raisonnement et nécessiter plus d’espace 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 tâche et rendez explicites 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 lisibles les libellés pertinents et le contexte des schémas. Inkling peut utiliser un outil Python configuré pour zoomer, recadrer ou examiner une image par programmation, en reliant les observations visuelles au raisonnement fondé sur le code. Une réponse utile sur un graphique conserve les valeurs observées et montre comment elles soutiennent 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 concepteur 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 des contenus audio longs. Fournissez l’enregistrement pertinent avec la question écrite et toute référence nécessaire à son interprétation. Un livrable de réunion peut distinguer les faits prononcés d’un résumé ou d’une interprétation ultérieurs. 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 tâche fondée sur 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 peut fournir un travail numérique ; une opération sur un fichier peut établir 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, surtout lorsqu’elle suggère une modification de code ou une prochaine étape dans l’application.</p><p>Inkling a été entraîné à la calibration et au suivi des consignes, notamment à 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 les hypothèses, les éléments à l’appui et les conditions non résolues dans le résultat écrit. Pour une extraction, définissez la représentation d’une valeur absente au lieu d’exiger un fait inventé dans chaque champ. Ces consignes rendent un résultat utile à vérifier, 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 montre la personnalisation comme un processus séparé ; une réponse normale ne passe pas discrètement à de nouveaux poids. Conservez les éléments d’origine et les contraintes demandées avec le livrable final afin qu’un suivi puisse réviser un fait, affiner la formulation ou examiner un autre chemin de code tout en gardant la cohérence de la même tâche.</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>Entrée</dt><dd><code>text</code></dd></div><div><dt>Sortie</dt><dd><code>text</code></dd></div><div><dt>Contexte</dt><dd>1 048 576 tokens</dd></div><div><dt>Sortie maximale</dt><dd>262 144 tokens</dd></div><div><dt>Format de sortie</dt><dd>JSON</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Champ</th><th>Type</th><th>Exigence</th><th>Valeurs et limites</th><th>Par défaut</th></tr></thead><tbody><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Obligatoire</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>thinkingmachines/inkling: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 uniquement</dt><dd>Text input and output only. Cache, tools, media and streaming are unavailable. <span class=\"note-s\">Pour une entrée et une sortie 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 des jetons</th><td data-cell-label=\"Barème tarifaire\"><span class=\"card-cell-label\">Barème tarifaire</span>Tarif de base</td><td data-cell-label=\"Coût\"><span class=\"card-cell-label\">Coût</span><div><span>Entrée · 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-be/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 vaste contexte, avec un effort de réflexion réglable et des sorties écrites pour l’analyse de sources, le travail de 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 qui modifie la longueur des réponses d’Inkling.</p><p>Pour une tâche de code importante, fournissez le contenu pertinent 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 une comparaison de documents, identifiez les sections sources et demandez les différences pertinentes, leurs éléments à l’appui et toute question sans réponse. Les applications visées comprennent les assistants de code, 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 conséquent et les faits importants de la conversation, en les organisant autour d’une question précise. Distinguez les faits sources des hypothèses et laissez de la place pour le livrable écrit complet. Le contexte plus vaste 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 contrôle continu allant de 0.0 inclus à une valeur inférieure à 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, avec high par défaut dans le moteur de rendu. L’effort et le budget de tokens de génération sont indépendants. Un effort supérieur peut encourager davantage de raisonnement et nécessiter plus d’espace 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 tâche et rendez explicites 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 lisibles les libellés pertinents et le contexte des schémas. Inkling peut utiliser un outil Python configuré pour zoomer, recadrer ou examiner une image par programmation, en reliant les observations visuelles au raisonnement fondé sur le code. Une réponse utile sur un graphique conserve les valeurs observées et montre comment elles soutiennent 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 concepteur 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 des contenus audio longs. Fournissez l’enregistrement pertinent avec la question écrite et toute référence nécessaire à son interprétation. Un livrable de réunion peut distinguer les faits prononcés d’un résumé ou d’une interprétation ultérieurs. 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 tâche fondée sur 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 peut fournir un travail numérique ; une opération sur un fichier peut établir 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, surtout lorsqu’elle suggère une modification de code ou une prochaine étape dans l’application.</p><p>Inkling a été entraîné à la calibration et au suivi des consignes, notamment à 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 les hypothèses, les éléments à l’appui et les conditions non résolues dans le résultat écrit. Pour une extraction, définissez la représentation d’une valeur absente au lieu d’exiger un fait inventé dans chaque champ. Ces consignes rendent un résultat utile à vérifier, 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 montre la personnalisation comme un processus séparé ; une réponse normale ne passe pas discrètement à de nouveaux poids. Conservez les éléments d’origine et les contraintes demandées avec le livrable final afin qu’un suivi puisse réviser un fait, affiner la formulation ou examiner un autre chemin de code tout en gardant la cohérence de la même tâche.</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>Entrée</dt><dd><code>text</code></dd></div><div><dt>Sortie</dt><dd><code>text</code></dd></div><div><dt>Contexte</dt><dd>1 048 576 tokens</dd></div><div><dt>Sortie maximale</dt><dd>262 144 tokens</dd></div><div><dt>Format de sortie</dt><dd>JSON</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Champ</th><th>Type</th><th>Exigence</th><th>Valeurs et limites</th><th>Par défaut</th></tr></thead><tbody><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Obligatoire</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>thinkingmachines/inkling: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 uniquement</dt><dd>Text input and output only. Cache, tools, media and streaming are unavailable. <span class=\"note-s\">Pour une entrée et une sortie 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 des jetons</th><td data-cell-label=\"Barème tarifaire\"><span class=\"card-cell-label\">Barème tarifaire</span>Tarif de base</td><td data-cell-label=\"Coût\"><span class=\"card-cell-label\">Coût</span><div><span>Entrée · 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-be/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": "e0527b28a395214a1298afb518d87377b255f15fe37fa0f31580a38afba7039f",
    "input_html_sha256": "e8caaa726e087f66f4db3f52cecdb35fa0d82672deece93a35b74b8bb4de4e44",
    "private_audit_sha256": "cf38ec825f5332e0d15f0663949a0cd72f3a91299521e7f82014c3fb817db0df",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/fr-be/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 vaste contexte, avec un effort de réflexion réglable et des sorties écrites pour l’analyse de sources, le travail de programmation et les applications conversationnelles.",
    "locale": "fr-be",
    "md_url": "https://ailoot.ai/models/fr-be/thinkingmachines-inkling-u003a-free/index.md",
    "title": "Thinking Machines: Inkling (free) — Ailoot",
    "url": "https://ailoot.ai/models/fr-be/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 qui modifie la longueur des réponses d’Inkling.\n\nPour une tâche de code importante, fournissez le contenu pertinent 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 une comparaison de documents, identifiez les sections sources et demandez les différences pertinentes, leurs éléments à l’appui et toute question sans réponse. Les applications visées comprennent les assistants de code, 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 conséquent et les faits importants de la conversation, en les organisant autour d’une question précise. Distinguez les faits sources des hypothèses et laissez de la place pour le livrable écrit complet. Le contexte plus vaste 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 contrôle continu allant de 0.0 inclus à une valeur inférieure à 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, avec high par défaut dans le moteur de rendu. L’effort et le budget de tokens de génération sont indépendants. Un effort supérieur peut encourager davantage de raisonnement et nécessiter plus d’espace 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 tâche et rendez explicites 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 lisibles les libellés pertinents et le contexte des schémas. Inkling peut utiliser un outil Python configuré pour zoomer, recadrer ou examiner une image par programmation, en reliant les observations visuelles au raisonnement fondé sur le code. Une réponse utile sur un graphique conserve les valeurs observées et montre comment elles soutiennent 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 concepteur 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 des contenus audio longs. Fournissez l’enregistrement pertinent avec la question écrite et toute référence nécessaire à son interprétation. Un livrable de réunion peut distinguer les faits prononcés d’un résumé ou d’une interprétation ultérieurs. 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 tâche fondée sur 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 peut fournir un travail numérique ; une opération sur un fichier peut établir 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, surtout lorsqu’elle suggère une modification de code ou une prochaine étape dans l’application.\n\nInkling a été entraîné à la calibration et au suivi des consignes, notamment à 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 les hypothèses, les éléments à l’appui et les conditions non résolues dans le résultat écrit. Pour une extraction, définissez la représentation d’une valeur absente au lieu d’exiger un fait inventé dans chaque champ. Ces consignes rendent un résultat utile à vérifier, 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 montre la personnalisation comme un processus séparé ; une réponse normale ne passe pas discrètement à de nouveaux poids. Conservez les éléments d’origine et les contraintes demandées avec le livrable final afin qu’un suivi puisse réviser un fait, affiner la formulation ou examiner un autre chemin de code tout en gardant la cohérence de la même tâche.",
    "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 vaste contexte, avec un effort de réflexion réglable et des sorties écrites pour l’analyse de sources, le travail de 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 vaste contexte, avec un effort de réflexion réglable et des sorties écrites pour l’analyse de sources, le travail de programmation et les applications conversationnelles.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "b60caefefc0abb63c88479e6c6d3c0fdee81c54f7a6fafe0bb93491b93e012c4",
    "renderer_sha256": "9d578ff8df69ef70403308c9943a1179a11b94114c10b333bf1c012005d4a7f4"
  },
  "sourceRevision": "528fd0c8019e04c48ad1c21d855120d9a2eab45d105c1c04ea4961b8272bff12"
}
