Cette page présente les principales façons d’utiliser l’API OpenAI : les SDK officiels dans le code de vos applications, la CLI d’OpenAI pour vos workflows en ligne de commande, le SDK Agents pour l’orchestration ou le client HTTP de votre choix.
Créez et exportez une clé API
Avant de commencer, créez une clé API dans le tableau de bord pour accéder à l’API de manière sécurisée. Conservez cette clé en lieu sûr, par exemple dans votre fichier .zshrc ou dans un autre fichier texte sur votre ordinateur. Une fois la clé API générée, exportez-la dans votre terminal sous forme de variable d’environnement.
export OPENAI_API_KEY="your_api_key_here"setx OPENAI_API_KEY "your_api_key_here"Par défaut, les SDK d’OpenAI lisent automatiquement votre clé API dans les variables d’environnement du système.
Installez un SDK officiel
Pour appeler l’API OpenAI depuis un environnement JavaScript côté serveur comme Node.js, Deno ou Bun, vous pouvez utiliser le SDK officiel d’OpenAI pour TypeScript et JavaScript. Commencez par installer le SDK avec npm ou le gestionnaire de paquets de votre choix.
npm install openaiUne fois le SDK OpenAI installé, créez un fichier nommé example.mjs et copiez-y le code suivant.
import OpenAI from "openai";
const client = new OpenAI();
const response = await client.responses.create({
model: "gpt-6-astra",
input: "Write a one-sentence bedtime story about a unicorn.",
});
console.log(response.output_text);Exécutez le code avec node example.mjs (ou la commande équivalente pour Deno ou Bun). Le résultat de votre requête devrait s’afficher au bout de quelques instants.
Consultez le README de la bibliothèque sur GitHub pour découvrir d’autres fonctionnalités et options du SDK.
Pour appeler l’API OpenAI depuis Python, vous pouvez utiliser le SDK officiel d’OpenAI pour Python. Commencez par installer le SDK avec pip.
pip install openaiUne fois le SDK OpenAI installé, créez un fichier nommé example.py et copiez-y le code de l’exemple ci-dessous.
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="gpt-6-astra",
input="Write a one-sentence bedtime story about a unicorn.",
)
print(response.output_text)Exécutez le code avec python example.py. La réponse de l’API devrait s’afficher au bout de quelques instants.
Consultez le README de la bibliothèque sur GitHub pour découvrir d’autres fonctionnalités et options du SDK.
En collaboration avec Microsoft, OpenAI propose un client d’API pour C# et en assure officiellement la prise en charge. Vous pouvez l’installer depuis NuGet avec la CLI .NET.
dotnet add package OpenAI
Voici un exemple de requête simple à l’API Responses.
using OpenAI.Responses;
#pragma warning disable OPENAI001
string key = Environment.GetEnvironmentVariable("OPENAI_API_KEY")!;
ResponsesClient client = new(key);
ResponseResult response = await client.CreateResponseAsync(
"gpt-6-astra",
"Say 'this is a test.'"
);
Console.WriteLine($"[ASSISTANT]: {response.GetOutputText()}");OpenAI propose une bibliothèque Java, actuellement en version bêta, pour accéder à son API. Pour ajouter la dépendance Maven à votre projet, utilisez la configuration suivante.
<dependency>
<groupId>com.openai</groupId>
<artifactId>openai-java</artifactId>
<version>4.103.0</version>
</dependency>Voici un exemple de requête simple à l’API Responses.
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.responses.Response;
import com.openai.models.responses.ResponseCreateParams;
public class Main {
public static void main(String[] args) {
OpenAIClient client = OpenAIOkHttpClient.fromEnv();
ResponseCreateParams params =
ResponseCreateParams.builder().input("Say this is a test").model("gpt-6-astra").build();
Response response = client.responses().create(params);
response.output().stream()
.flatMap(item -> item.message().stream())
.flatMap(message -> message.content().stream())
.flatMap(content -> content.outputText().stream())
.forEach(outputText -> System.out.println(outputText.text()));
}
}Pour en savoir plus sur l’utilisation de l’API OpenAI en Java, consultez le dépôt GitHub ci-dessous.
Découvrez d’autres fonctionnalités et options du SDK dans le fichier README du dépôt GitHub de la bibliothèque.
Utilisez le SDK Go pour envoyer votre première requête à l’API Responses :
package main
import (
"context"
"fmt"
"github.com/openai/openai-go/v3"
"github.com/openai/openai-go/v3/responses"
)
func main() {
client := openai.NewClient()
resp, err := client.Responses.New(context.TODO(), responses.ResponseNewParams{
Model: "gpt-6-astra",
Input: responses.ResponseNewParamsInputUnion{OfString: openai.String("Say this is a test")},
})
if err != nil {
panic(err.Error())
}
fmt.Println(resp.OutputText())
}Pour en savoir plus sur l’utilisation de l’API OpenAI en Go, consultez le dépôt GitHub ci-dessous.
Découvrez d’autres fonctionnalités et options du SDK dans le fichier README du dépôt GitHub de la bibliothèque.
Pour appeler l’API OpenAI depuis Ruby, vous pouvez utiliser le SDK officiel d’OpenAI pour Ruby. Commencez par ajouter la gem à votre application.
gem "openai"Une fois le SDK OpenAI installé, créez un fichier nommé example.rb et copiez-y le code de l’exemple ci-dessous.
require "openai"
openai = OpenAI::Client.new
response = openai.responses.create(
model: "gpt-6-astra",
input: "Write a one-sentence bedtime story about a unicorn."
)
puts(response.output_text)Exécutez le code avec ruby example.rb. La réponse de l’API devrait s’afficher au bout de quelques instants.
Consultez le fichier README de la bibliothèque sur GitHub pour découvrir d’autres fonctionnalités et options du SDK.
Pour appeler l’API OpenAI directement depuis votre terminal, installez openai, l’outil en ligne de commande généré automatiquement :
brew install openai/tools/openaiEnvoyez ensuite une requête simple à l’API depuis votre shell :
openai responses create \
--model "gpt-6-astra" \
--input "Write a one-sentence bedtime story about a unicorn." \
--raw-output \
--transform 'output.#(type=="message").content.0.text'Utilisez la CLI pour les workflows que vous pouvez répéter dans le terminal. Vous pouvez par exemple extraire des données structurées à partir de fichiers, générer des images, synthétiser de la parole ou combiner des appels à l’API avec des outils en ligne de commande comme jq.
Découvrez les workflows de la CLI et les formes de commande courantes.
Utilisez le SDK Agents
Utilisez les SDK officiels d’OpenAI présentés ci-dessus pour envoyer des requêtes directement à l’API. Utilisez le SDK Agents si vous devez définir l’orchestration dans le code de votre application pour gérer les agents, les outils, les passages de relais entre agents, les garde-fous, le traçage ou l’exécution en bac à sable.
Pour choisir entre les appels directs à l’API et l’orchestration dans le code, consultez le comparatif de l’API Responses et du SDK Agents.
Créez votre premier agent avec le SDK Agents.
Bibliothèques Azure OpenAI
L’équipe Azure de Microsoft maintient des bibliothèques compatibles à la fois avec l’API OpenAI et les services Azure OpenAI. Consultez leur documentation ci-dessous pour savoir comment les utiliser avec l’API OpenAI.
- Bibliothèque cliente Azure OpenAI pour .NET
- Bibliothèque cliente Azure OpenAI pour JavaScript
- Bibliothèque cliente Azure OpenAI pour Java
- Bibliothèque cliente Azure OpenAI pour Go
Bibliothèques communautaires
La communauté des développeurs crée et maintient les bibliothèques ci-dessous. Vous pouvez aussi suivre le dépôt de notre spécification OpenAPI sur GitHub pour recevoir des notifications lorsque nous modifions notre API.
OpenAI ne vérifie ni le bon fonctionnement ni la sécurité de ces projets. Utilisez-les à vos risques et périls !
Clojure
- openai-clojure par wkok
Dart/Flutter
Delphi
- DelphiOpenAI par HemulGM
Elixir
Kotlin
PHP
Rust
- async-openai par 64bit
Scala
Swift
- AIProxySwift par Lou Zell
- OpenAIKit par dylanshine
- OpenAI par MacPaw
Unity
Unreal Engine
Autres dépôts d’OpenAI
- tiktoken – comptage des tokens
- simple-evals – bibliothèque d’évaluation simple
- mle-bench – bibliothèque d’évaluation des agents qui réalisent des tâches d’ingénierie en apprentissage automatique
- gym – bibliothèque d’apprentissage par renforcement
- swarm – dépôt pédagogique sur l’orchestration