> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aihubmix.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Appels natifs à l'API Claude

## Description

Les modèles de la série Claude prennent en charge les appels natifs officiels à l'API. Avant utilisation, assurez-vous que la dépendance `anthropic` est installée ou mise à jour :

```bash theme={null}
pip install -U anthropic
```

## Informations sur les modèles

| Nom du modèle                          | Claude Opus 4.6                                 | Claude Sonnet 4.6                               | Claude Sonnet 4.5 | Claude Haiku 4.5 |
| -------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | ----------------- | ---------------- |
| Prend en charge le raisonnement étendu | Oui                                             | Oui                                             | Oui               | Oui              |
| Taille de la fenêtre de contexte       | 200K tokens /<br />1M tokens (beta)<sup>3</sup> | 200K tokens /<br />1M tokens (beta)<sup>3</sup> | 200K              | 200K             |
| Longueur de sortie maximale            | 128K tokens                                     | 128K tokens                                     | 64K tokens        | 64K tokens       |
| Limite des données d'entraînement      | Août 2025                                       | Août 2025                                       | Juillet 2025      | Juillet 2025     |

## Nouvelles fonctionnalités de Claude 4.6

### Thinking adaptatif

Claude 4.6 recommande d'utiliser un nouveau mode de thinking adaptatif, où Claude détermine automatiquement s'il doit réfléchir et la profondeur de la réflexion en fonction de la complexité de la question :

```python theme={null}
thinking={"type": "adaptive"}
```

<Warning>
  `thinking: {type: "enabled", budget_tokens: N}` a été déprécié dans la version 4.6 et sera supprimé dans les futures versions.
</Warning>

### Compaction automatique du contexte (Beta)

Lorsque les conversations approchent de la limite de la fenêtre de contexte, Claude 4.6 peut effectuer automatiquement une compaction de résumé côté serveur du contenu antérieur.

**Avantages :**

* Prend en charge les conversations ultra-longues
* Pas besoin de résumé côté client
* Améliore la capacité de l'agent à des dialogues continus

**Remarque :**

* La compaction automatique peut perdre certains détails
* Il est recommandé d'évaluer par des tests dans les scénarios exigeant une forte cohérence

### Dépréciations et changements

* **Suppression de l'en-tête Beta `interleaved-thinking-2025-05-14` :** dans la version 4.6, le thinking adaptatif prend désormais automatiquement en charge le thinking entrelacé, et il n'est plus nécessaire d'ajouter `extra_headers`. S'il est tout de même ajouté, cet en-tête sera ignoré en toute sécurité.

## Nouvelles fonctionnalités de Claude 4

### Nouvelle raison d'arrêt « refusal »

Le modèle Claude 4 introduit une nouvelle raison d'arrêt `refusal` pour gérer les cas où le modèle refuse de générer du contenu pour des raisons de sécurité :

```json theme={null}
{
  "id": "msg_014XEDjypDjFzgKVWdFUXxZP",
  "type": "message",
  "role": "assistant",
  "model": "claude-sonnet-4-20250514",
  "content": [{"type": "text", "text": "I would be happy to assist you. You can "}],
  "stop_reason": "refusal",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 564,
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0,
    "output_tokens": 22
  }
}
```

Lors de la migration vers Claude 4, vous devez mettre à jour votre application pour gérer la raison d'arrêt `refusal`.

### Raisonnement étendu (Extended Thinking)

Une fois le raisonnement étendu activé, la Messages API du modèle Claude 4 renverra un résumé du processus complet de réflexion de Claude. Le résumé offre tous les avantages intelligents du raisonnement étendu tout en empêchant les abus.

Bien que l'API reste cohérente entre les modèles Claude 3.7 et 4, la réponse en streaming pour le raisonnement étendu peut être renvoyée en mode « chunked », avec d'éventuels délais entre les événements de streaming.

Le résumé est traité par un modèle différent de celui spécifié dans votre requête. Le modèle de raisonnement ne verra pas la sortie du résumé.

### Raisonnement entrelacé (Interleaved Thinking)

Le modèle Claude 4 prend en charge l'entrelacement de l'utilisation d'outils avec le raisonnement étendu, ce qui permet des conversations plus naturelles où l'utilisation d'outils et les réponses peuvent être mélangées avec des messages réguliers.

Le raisonnement entrelacé est actuellement en test. Pour activer le raisonnement entrelacé, ajoutez l'en-tête de test `interleaved-thinking-2025-05-14` dans votre requête API :

```python theme={null}
extra_headers={
    "anthropic-beta": "interleaved-thinking-2025-05-14"
}
```

**Endpoint :** `POST` /v1/messages

## Invocation

<CodeGroup>
  ```shell Curl theme={null}
  curl https://aihubmix.com/v1/messages \
       --header "x-api-key: $ANTHROPIC_API_KEY" \ # Replace with the key generated on AiHubMix
       --header "anthropic-version: 2023-06-01" \
       --header "content-type: application/json" \
       --data \
  '{
      "model": "claude-3-5-sonnet-20241022",
      "max_tokens": 1024,
      "messages": [
          {"role": "user", "content": "Hello, world"}
      ]
  }'
  ```

  ```py Python Non-streaming theme={null}
  import anthropic

  client = anthropic.Anthropic(
      api_key="sk-***", # Replace with the key generated on AiHubMix
      base_url="https://aihubmix.com"
  )
  message = client.messages.create(
      model="claude-3-5-sonnet-20241022",
      max_tokens=1024,
      messages=[
          {"role": "user", "content": "Hello, Claude"}
      ]
  )
  print(message.content)
  ```

  ```py Python Streaming 128K theme={null}
  import anthropic

  client = anthropic.Anthropic(
      api_key="sk-***", # Replace with the key generated on AiHubMix
      base_url="https://aihubmix.com"
  )

  with client.messages.stream(
      model="claude-3-7-sonnet-20250219",  # claude-opus-4-20250514, claude-sonnet-4-20250514
      max_tokens=128000,
      messages=[
          {"role": "user", "content": "Please generate a 100,000 token article that elaborates on Charlie Munger's 100 mental models (approximately 1,000 tokens for each model), with each section including an introduction to the model, multidimensional thinking, application methods, practical blind spots, and specific examples. Clarity and engagement are key. Use bullet points only when necessary."}
      ],
      extra_headers={
          "anthropic-beta": "output-128k-2025-02-19"
      }
  ) as stream:
      for text in stream.text_stream:
          print(text, end="", flush=True)
  ```

  ```py Python Interleaved Thinking theme={null}
  import anthropic

  client = anthropic.Anthropic(
      api_key="sk-***", # Replace with the key generated on AiHubMix
      base_url="https://aihubmix.com"
  )

  response = client.messages.create(
      model="claude-sonnet-4-20250514",  # or claude-opus-4-20250514
      max_tokens=1024,
      messages=[
          {"role": "user", "content": "Help me analyze this data and generate a chart"}
      ],
      tools=[
          {
              "type": "computer_20241022",
              "name": "computer"
          }
      ],
      extra_headers={
          "anthropic-beta": "interleaved-thinking-2025-05-14"
      }
  )
  print(response.content)
  ```
</CodeGroup>

### Structure du Body de la requête

```json theme={null}
{
  "model": "claude-3-5-sonnet-20241022",
  "max_tokens": 1024,
  "messages": [
    {
      "role": "user",
      "content": "What is the meaning of life?"
    }
  ]
}
```

### Paramètres de la requête

| Nom           | Emplacement | Type      | Requis | Description        |
| ------------- | ----------- | --------- | ------ | ------------------ |
| x-api-key     | header      | string    | Non    | AIHUBMIX\_API\_KEY |
| Content-Type  | header      | string    | Non    | aucun              |
| body          | body        | object    | Non    | aucun              |
| » model       | body        | string    | Oui    | aucun              |
| » messages    | body        | \[object] | Oui    | aucun              |
| »» role       | body        | string    | Non    | aucun              |
| »» content    | body        | string    | Oui    | aucun              |
| » max\_tokens | body        | number    | Oui    | aucun              |

### Exemple de réponse

```json theme={null}
200 Response
```

```json theme={null}
{
  "id": "msg_013Uf6CwwyjSe35n3yVaPbLM",
  "type": "message",
  "role": "assistant",
  "model": "claude-3-5-sonnet-20241022",
  "content": [
    {
      "type": "text",
      "text": "That's one of humanity's most enduring and complex philosophical questions! While there's no universal answer, I aim to explore such questions thoughtfully while acknowledging their complexity. I try to focus on having meaningful conversations and helping where I can. What does meaning in life mean to you?"
    }
  ],
  "stop_reason": "end_turn",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 14,
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0,
    "output_tokens": 61
  }
}
```

### Résultats de la réponse

| Code d'état | Signification | Description | Modèle de données |
| ----------- | ------------- | ----------- | ----------------- |
| 200         | OK            | aucun       | Inline            |

## Migration vers Claude 4

Si vous migrez des modèles Claude 3.7 vers les modèles Claude 4, soyez attentif aux changements suivants :

### Mettre à jour le nom du modèle

```python theme={null}
# From Claude 3.7
model="claude-3-7-sonnet-20250219"

# Migrate to Claude 4
model="claude-sonnet-4-20250514"  # or "claude-opus-4-20250514"
```

### Gérer les nouvelles raisons d'arrêt

Mettez à jour votre application pour gérer la nouvelle raison d'arrêt `refusal` :

```python theme={null}
if response.stop_reason == "refusal":
    print("Claude refuses to generate this content")
elif response.stop_reason == "end_turn":
    print("Completed normally")
```

### Supprimer les fonctionnalités non prises en charge

* **Utilisation d'outils efficace en jetons :** disponible uniquement dans Claude Sonnet 3.7, n'est plus pris en charge dans Claude 4
* **Sortie étendue :** l'en-tête de test `output-128k-2025-02-19` n'est disponible que dans Claude Sonnet 3.7

Si vous migrez depuis Claude Sonnet 3.7, il est recommandé de supprimer ces en-têtes de test de vos requêtes :

```python theme={null}
# Remove these headers (if present)
# "token-efficient-tools-2025-02-19"
# "output-128k-2025-02-19"
```

## Utilisation dans les applications (exemple avec Lobe-Chat)

* Accédez à la page des paramètres et sélectionnez le fournisseur de modèle Claude
* Entrez la clé API depuis [notre site](https://aihubmix.com/token)
* Entrez l'adresse du proxy API directement comme suit :

```
https://aihubmix.com
```

* Il est recommandé d'activer « Use Client Request Mode »
* Enfin, ajoutez les modèles que vous souhaitez utiliser à la liste des modèles (il est conseillé de copier-coller le nom du modèle depuis la page des paramètres de notre site)\\

  <img src="https://mintcdn.com/aihubmix/_Cbum_77AgsRh-CI/public/cn/cla1.png?fit=max&auto=format&n=_Cbum_77AgsRh-CI&q=85&s=a85f2cfa7552e99badbc69a9a8af8295" alt="Image" width="1225" height="613" data-path="public/cn/cla1.png" />

  <img src="https://mintcdn.com/aihubmix/_Cbum_77AgsRh-CI/public/cn/cla2.png?fit=max&auto=format&n=_Cbum_77AgsRh-CI&q=85&s=c18c5b40b30b914a185629cb708735ba" alt="Image" width="1102" height="699" data-path="public/cn/cla2.png" />

## Outils d'édition de texte Claude

Claude peut utiliser des outils d'édition de texte définis par Anthropic pour consulter et modifier des fichiers texte, ce qui vous aide à déboguer, corriger et améliorer du code ou d'autres documents textuels. Cela permet à Claude d'interagir directement avec vos fichiers, en fournissant une assistance opérationnelle pratique plutôt que de simples suggestions.

### Préparation avant d'utiliser les outils d'édition de texte

Sélectionnez des modèles compatibles. Les outils d'édition de texte d'Anthropic prennent en charge les modèles Claude suivants :

* **Modèles de la série Claude 4** (`claude-opus-4-20250514`, `claude-sonnet-4-20250514`) : `text_editor_20250429`
* **Claude 3.7 Sonnet** (`claude-3-7-sonnet-20250219`) : `text_editor_20250124`
* **Claude 3.5 Sonnet** (`claude-3-5-sonnet-20241022`) : `text_editor_20241022`

<Warning>
  Les modèles Claude 4 utilisent un tout nouvel outil d'édition de texte qui n'est pas compatible avec les versions plus anciennes. Veuillez vous assurer d'utiliser le type et le nom d'outil corrects.
</Warning>

### Configuration de l'outil par modèle

| Version du modèle      | Type d'outil           | Nom de l'outil                | Fonctionnalités prises en charge       |
| ---------------------- | ---------------------- | ----------------------------- | -------------------------------------- |
| Claude 4 (Opus/Sonnet) | `text_editor_20250429` | `str_replace_based_edit_tool` | view, str\_replace, create             |
| Claude 3.7 Sonnet      | `text_editor_20250124` | `str_replace_editor`          | view, str\_replace, create, undo\_edit |
| Claude 3.5 Sonnet      | `text_editor_20241022` | `str_replace_editor`          | view, str\_replace, create, undo\_edit |

<Tip>
  **Changement important :** le modèle Claude 4 ne prend plus en charge la commande `undo_edit`. Veuillez supprimer toutes les dépendances à cette fonctionnalité dans votre code.
</Tip>

### Évaluation des cas d'usage

Voici quelques scénarios typiques d'utilisation des outils d'édition de texte :

* Débogage de code : aide à identifier et corriger les problèmes dans le code, des erreurs de syntaxe aux problèmes logiques.
* Refactorisation de code : améliore la structure, la lisibilité et les performances du code grâce à des modifications ciblées.
* Génération de documentation : ajoute des chaînes de documentation, des commentaires ou des fichiers README à votre base de code.
* Création de tests : crée des tests unitaires sur la base de la compréhension de l'implémentation.

### Utilisation des outils d'édition de texte

Fournissez à Claude des outils d'édition de texte (nommés `str_replace_editor`) via la Messages API : vous devez installer le package `anthropic` :

```shell theme={null}
pip install anthropic
```

**Exemples d'invocation :**

<CodeGroup>
  ```python Python-Claude 4 theme={null}
  import anthropic

  client = anthropic.Anthropic(
      api_key="sk-***", # Replace with the key generated on AiHubMix
      base_url="https://aihubmix.com"
  )

  response = client.messages.create(
      model="claude-sonnet-4-20250514",  # or claude-opus-4-20250514
      max_tokens=1024,
      tools=[
          {
              "type": "text_editor_20250429",
              "name": "str_replace_based_edit_tool"
          }
      ],
      messages=[
          {
              "role": "user", 
              "content": "There's a syntax error in my primes.py file. Can you help me fix it?"
          }
      ]
  )

  print("Response content:")
  for message in response.content:
      print(message.text)
  ```

  ```py Python-Claude 3.7 theme={null}
  import anthropic

  client = anthropic.Anthropic(
      api_key="sk-***", # Replace with the key generated on AiHubMix
      base_url="https://aihubmix.com"
  )

  response = client.messages.create(
      model="claude-3-7-sonnet-20250219",
      max_tokens=1024,
      tools=[
          {
              "type": "text_editor_20250124",
              "name": "str_replace_editor"
          }
      ],
      messages=[
          {
              "role": "user", 
              "content": "There's a syntax error in my primes.py file. Can you help me fix it?"
          }
      ]
  )

  print("Response content:")
  for message in response.content:
      print(message.text)
  ```

  ```shell Curl-Claude 4 theme={null}
  curl -X POST https://aihubmix.com/v1/messages \
    -H "Content-Type: application/json" \
    -H "x-api-key: xxx" \
    -H "anthropic-version: 2023-06-01" \
    -d '{
      "model": "claude-sonnet-4-20250514",
      "max_tokens": 1024,
      "tools": [
        {
          "type": "text_editor_20250429",
          "name": "str_replace_based_edit_tool"
        }
      ],
      "messages": [
        {
          "role": "user",
          "content": "There'\''s a syntax error in my primes.py file. Can you help me fix it?"
        }
      ]
    }'
  ```

  ```shell Curl-Claude 3.7 theme={null}
  curl -X POST https://aihubmix.com/v1/messages \
    -H "Content-Type: application/json" \
    -H "x-api-key: xxx" \
    -H "anthropic-version: 2023-06-01" \
    -d '{
      "model": "claude-3-7-sonnet-20250219",
      "max_tokens": 1024,
      "tools": [
        {
          "type": "text_editor_20250124",
          "name": "str_replace_editor"
        }
      ],
      "messages": [
        {
          "role": "user",
          "content": "There'\''s a syntax error in my primes.py file. Can you help me fix it?"
        }
      ]
    }'
  ```
</CodeGroup>

### Migration vers Claude 4 (outils d'édition de texte)

Si vous migrez de Claude 3.7 Sonnet vers les modèles Claude 4, soyez attentif aux changements suivants :

#### Mettre à jour la configuration de l'outil

```py python theme={null}
# Claude 3.7 Sonnet
tools=[
    {
        "type": "text_editor_20250124",
        "name": "str_replace_editor"
    }
]

# Claude 4 (Opus/Sonnet)
tools=[
    {
        "type": "text_editor_20250429",
        "name": "str_replace_based_edit_tool"
    }
]
```

#### Supprimer les fonctionnalités non prises en charge

* **Commande `undo_edit`** : le modèle Claude 4 ne prend plus en charge la fonctionnalité d'annulation d'édition.
* Veuillez supprimer toute logique dépendant de `undo_edit` de votre code.

Exemple de réponse :

```json theme={null}
{
  "id": "msg_bdrk_012xyNaFCQg4zsVcTk5VkDAe",
  "type": "message",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "I'd be happy to help you fix the syntax error in your `primes.py` file. First, let me take a look at the file to identify the issue."
    },
    {
      "type": "tool_use",
      "text": "",
      "id": "toolu_bdrk_01P6jQG6suDSsDjzugqGVHWC",
      "name": "str_replace_based_edit_tool",
      "input": {
        "command": "view",
        "path": "/repo/primes.py"
      }
    }
  ],
  "model": "claude-sonnet-4-20250514",
  "stop_reason": "tool_use",
  "usage": {
    "input_tokens": 1042,
    "output_tokens": 115
  }
}
```

***

Dernière mise à jour : 2026-06-01
