

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Générez des réponses en utilisant OpenAI APIs
<a name="bedrock-mantle"></a>

Amazon Bedrock fournit des points de terminaison d'API OpenAI compatibles pour l'inférence de modèles, alimentés par Mantle, un moteur d'inférence distribué destiné à la diffusion de modèles d'apprentissage automatique à grande échelle. Ces points de terminaison vous permettent d'utiliser des outils familiers avec OpenAI SDKs les modèles Amazon Bedrock, ce qui vous permet de migrer des applications existantes avec un minimum de modifications de code. Il vous suffit de mettre à jour votre URL de base et votre clé d'API.

Les principaux avantages sont les suivants :
+ **Inférence asynchrone —** Support pour les charges de travail d'inférence de longue durée via l'API Responses
+ **Gestion dynamique des conversations** — Reconstruisez automatiquement le contexte sans transmettre manuellement l'historique des conversations à chaque demande
+ **Utilisation simplifiée des outils** — Intégration rationalisée pour les flux de travail agentiques
+ **Modes de réponse flexibles** — Support pour les réponses en streaming et hors streaming
+ **Migration facile** — Compatible avec les bases de OpenAI code SDK existantes

## Régions et terminaux pris en charge
<a name="bedrock-mantle-supported"></a>

Amazon Bedrock est disponible dans les AWS régions suivantes :


| Nom de la région | Région | Endpoint | 
| --- | --- | --- | 
| USA Est (Ohio) | us-east-2 | bedrock-mantle.us-east-2.api.aws | 
| USA Est (Virginie du Nord) | us-east-1 | bedrock-mantle.us-east-1.api.aws | 
| USA Ouest (Oregon) | us-west-2 | bedrock-mantle.us-west-2.api.aws | 
| Asie-Pacifique (Jakarta) | ap-southeast-3 | bedrock-mantle.ap-southeast-3.api.aws | 
| Asie-Pacifique (Mumbai) | ap-south-1 | bedrock-mantle.ap-south-1.api.aws | 
| Asie-Pacifique (Tokyo) | ap-northeast-1 | bedrock-mantle.ap-northeast-1.api.aws | 
| Europe (Francfort) | eu-central-1 | bedrock-mantle.eu-central-1.api.aws | 
| Europe (Irlande) | eu-west-1 | bedrock-mantle.eu-west-1.api.aws | 
| Europe (Londres) | eu-west-2 | bedrock-mantle.eu-west-2.api.aws | 
| Europe (Milan) | eu-south-1 | bedrock-mantle.eu-south-1.api.aws | 
| Europe (Stockholm) | eu-north-1 | bedrock-mantle.eu-north-1.api.aws | 
| Amérique du Sud (São Paulo) | sa-east-1 | bedrock-mantle.sa-east-1.api.aws | 

## Conditions préalables
<a name="bedrock-mantle-prereq"></a>

Avant de l'utiliser OpenAI APIs, assurez-vous de disposer des éléments suivants :
+ **Authentification** — Vous pouvez vous authentifier en utilisant :
  + Clé d'API Amazon Bedrock (requise pour le OpenAI SDK)
  + AWS informations d'identification (prises en charge pour les requêtes HTTP)
+ **OpenAISDK** (facultatif) — Installez le SDK OpenAI Python si vous utilisez des requêtes basées sur le SDK.
+ **Variables d'environnement** : définissez les variables d'environnement suivantes :
  + `OPENAI_API_KEY`— Réglé sur votre clé d'API Amazon Bedrock
  + `OPENAI_BASE_URL`— Définissez le point de terminaison Amazon Bedrock de votre région (par exemple,` https://bedrock-mantle.us-east-1.api.aws/v1`)

## API de modèles
<a name="bedrock-mantle-models"></a>

L'API Models vous permet de découvrir les modèles disponibles dans Amazon Bedrock propulsé par Mantle. Utilisez cette API pour récupérer une liste de modèles que vous pouvez utiliser avec l'API Responses et l'API Chat Completions. Pour obtenir des informations complètes sur l'API, consultez la [documentation sur OpenAI les modèles](https://platform.openai.com/docs/api-reference/models).

### Liste des modèles disponibles
<a name="bedrock-mantle-models-list"></a>

Pour répertorier les modèles disponibles, choisissez l'onglet correspondant à votre méthode préférée, puis suivez les étapes suivantes :

------
#### [ OpenAI SDK (Python) ]

```
# List all available models using the OpenAI SDK
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables

from openai import OpenAI

client = OpenAI()

models = client.models.list()

for model in models.data:
    print(model.id)
```

------
#### [ HTTP request ]

Envoyez une requête GET à `/v1/models` :

```
# List all available models
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables

curl -X GET $OPENAI_BASE_URL/models \
   -H "Authorization: Bearer $OPENAI_API_KEY"
```

------

## API de réponses
<a name="bedrock-mantle-responses"></a>

L'API Responses fournit une gestion dynamique des conversations avec prise en charge du streaming, du traitement en arrière-plan et des interactions à plusieurs tours. Pour obtenir des informations complètes sur l'API, consultez la [documentation sur OpenAI les réponses](https://platform.openai.com/docs/api-reference/responses).

### Demande de base
<a name="bedrock-mantle-responses-create"></a>

Pour créer une réponse, choisissez l'onglet correspondant à votre méthode préférée, puis suivez les étapes suivantes :

------
#### [ OpenAI SDK (Python) ]

```
# Create a basic response using the OpenAI SDK
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables

from openai import OpenAI

client = OpenAI()

response = client.responses.create(
    model="openai.gpt-oss-120b",
    input=[
        {"role": "user", "content": "Hello! How can you help me today?"}
    ]
)

print(response)
```

------
#### [ HTTP request ]

Faites une demande POST pour `/v1/responses` :

```
# Create a basic response
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables

curl -X POST $OPENAI_BASE_URL/responses \
   -H "Content-Type: application/json" \
   -H "Authorization: Bearer $OPENAI_API_KEY" \
   -d '{
    "model": "openai.gpt-oss-120b",
    "input": [
        {"role": "user", "content": "Hello! How can you help me today?"}
    ]
}'
```

------

### Diffusez les réponses
<a name="bedrock-mantle-responses-streaming"></a>

Pour recevoir les événements de réponse de manière incrémentielle, choisissez l'onglet correspondant à votre méthode préférée, puis suivez les étapes suivantes :

------
#### [ OpenAI SDK (Python) ]

```
# Stream response events incrementally using the OpenAI SDK
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables

from openai import OpenAI

client = OpenAI()

stream = client.responses.create(
    model="openai.gpt-oss-120b",
    input=[{"role": "user", "content": "Tell me a story"}],
    stream=True
)

for event in stream:
    print(event)
```

------
#### [ HTTP request ]

Envoyez une requête POST à `/v1/responses` avec la `stream` valeur définie sur `true` :

```
# Stream response events incrementally
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables

curl -X POST $OPENAI_BASE_URL/responses \
   -H "Content-Type: application/json" \
   -H "Authorization: Bearer $OPENAI_API_KEY" \
   -d '{
    "model": "openai.gpt-oss-120b",
    "input": [
        {"role": "user", "content": "Tell me a story"}
    ],
    "stream": true
}'
```

------

## API de complétion des discussions
<a name="bedrock-mantle-chat-completions"></a>

L'API Chat Completions génère des réponses conversationnelles. Pour obtenir des informations complètes sur l'API, consultez la [documentation OpenAI Chat Completions.](https://platform.openai.com/docs/api-reference/chat/create)

### Create a chat completion
<a name="bedrock-mantle-chat-completions-create"></a>

Pour terminer une discussion, choisissez l'onglet correspondant à votre méthode préférée, puis suivez les étapes suivantes :

------
#### [ OpenAI SDK (Python) ]

Configurez le OpenAI client à l'aide de variables d'environnement :

```
# Create a chat completion using the OpenAI SDK
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables

from openai import OpenAI

client = OpenAI()

completion = client.chat.completions.create(
    model="openai.gpt-oss-120b",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Hello!"}
    ]
)

print(completion.choices[0].message)
```

------
#### [ HTTP request ]

Faites une demande POST pour `/v1/chat/completions` :

```
# Create a chat completion
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables

curl -X POST $OPENAI_BASE_URL/chat/completions \
   -H "Content-Type: application/json" \
   -H "Authorization: Bearer $OPENAI_API_KEY" \
   -d '{
    "model": "openai.gpt-oss-120b",
    "messages": [
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Hello!"}
    ]
}'
```

------

### Activer le streaming
<a name="bedrock-mantle-chat-completions-streaming"></a>

Pour recevoir des réponses de manière incrémentielle, choisissez l'onglet correspondant à votre méthode préférée, puis suivez les étapes suivantes :

------
#### [ OpenAI SDK (Python) ]

```
# Stream chat completion responses incrementally using the OpenAI SDK
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables

from openai import OpenAI

client = OpenAI()

stream = client.chat.completions.create(
    model="openai.gpt-oss-120b",
    messages=[{"role": "user", "content": "Tell me a story"}],
    stream=True
)

for chunk in stream:
    if chunk.choices[0].delta.content is not None:
        print(chunk.choices[0].delta.content, end="")
```

------
#### [ HTTP request ]

Envoyez une requête POST à `/v1/chat/completions` avec la ` stream` valeur définie sur `true` :

```
# Stream chat completion responses incrementally
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables

curl -X POST $OPENAI_BASE_URL/chat/completions \
   -H "Content-Type: application/json" \
   -H "Authorization: Bearer $OPENAI_API_KEY" \
   -d '{
    "model": "openai.gpt-oss-120b",
    "messages": [
        {"role": "user", "content": "Tell me a story"}
    ],
    "stream": true
}'
```

------