Aller au contenu
English

ModelContentBlock

import type { ModelContentBlock } from "@elie-laloum/outpost";

Les champs ci-dessous couvrent toutes les variantes ; la signature précise leurs combinaisons autorisées.

  • typeRequis
    "text" | "tool-call" | "tool-result" | "reasoning"
    Discriminant du bloc : text.
  • textSelon la variante
    string | string | undefined
    Texte brut du bloc ; les blocs de texte vides ne sont pas envoyés à Anthropic.
  • idSelon la variante
    string
    Identifiant d’appel émis par le service, que le résultat correspondant doit référencer.
  • nameSelon la variante
    string
    Nom de l’outil demandé, tel que déclaré dans les outils de la requête.
  • inputSelon la variante
    unknown
    Arguments de l’outil analysés. Quand le service renvoie un JSON invalide, la chaîne brute est conservée pour que l’appelant signale l’erreur au modèle.
  • callIdSelon la variante
    string
    Identifiant de l’appel d’outil auquel ce résultat répond.
  • contentSelon la variante
    string
    Texte renvoyé au modèle pour cet appel.
  • isErrorSelon la variante
    boolean | undefined
    Signale un échec d’exécution de l’outil. Seul Anthropic le transmet, dans is_error ; les protocoles OpenAI envoient le contenu seul.
  • providerSelon la variante
    string
    Identité du fournisseur qui a produit le bloc ; les autres fournisseurs ne le reçoivent jamais.
  • modelSelon la variante
    string
    Modèle qui a produit le bloc ; il n’est rejoué qu’à ce même modèle.
  • dataSelon la variante
    unknown
    Charge opaque du service : un bloc thinking ou redacted_thinking Anthropic avec sa signature, ou un élément reasoning d’OpenAI Responses. Rejouez-la sans la modifier.
export type ModelContentBlock =
  | ModelTextBlock
  | ModelToolCallBlock
  | ModelToolResultBlock
  | ModelReasoningBlock;