Vous pouvez interagir avec l'API via des requêtes HTTP à partir de n'importe quel langage, via nos liaisons Python officielles, notre bibliothèque officielle Node.js ou une
pour récupérer la clé API que vous utiliserez dans vos requêtes.
N'oubliez pas que votre clé API est un secret ! Ne le partagez pas avec d'autres et ne l'exposez pas dans un code côté client (navigateurs, applications). Les demandes de production doivent être acheminées via votre propre serveur principal où votre clé API peut être chargée en toute sécurité à partir d'une variable d'environnement ou d'un service de gestion de clés.
Toutes les requêtes API doivent inclure votre clé API dans un Authorizationen-tête HTTP comme suit :
Requesting organization
Pour les utilisateurs qui appartiennent à plusieurs organisations, vous pouvez transmettre un en-tête pour spécifier quelle organisation est utilisée pour une demande d'API. L'utilisation de ces demandes d'API sera prise en compte dans le quota d'abonnement de l'organisation spécifiée.
Vous pouvez coller la commande ci-dessous dans votre terminal pour exécuter votre première requête API. Assurez-vous de remplacer $OPENAI_API_KEYpar votre clé API secrète.
Cette requête demande au gpt-3.5-turbomodèle de compléter le texte en commençant par l'invite " Dites ceci est un test ". Vous devriez obtenir une réponse semblable à celle-ci :
Vous avez maintenant généré votre premier achèvement de chat. Nous pouvons voir le finish_reasonis stopqui signifie que l'API a renvoyé l'achèvement complet généré par le modèle. Dans la requête ci-dessus, nous n'avons généré qu'un seul message, mais vous pouvez définir le nparamètre pour générer plusieurs choix de messages. Dans cet exemple, gpt-3.5-turboest utilisé pour une
Répertorie les modèles actuellement disponibles et fournit des informations de base sur chacun, telles que le propriétaire et la disponibilité.
Exemple de demande
Réponse
Retrieve model
Récupère une instance de modèle, fournissant des informations de base sur le modèle telles que le propriétaire et les autorisations.
Path parameters
modèle chaîne Requis
L'ID du modèle à utiliser pour cette requête
babbage
davinci
text-davinci-001
ada
curie-instruct-beta
code-cushman-001
text-ada-001
text-davinci-003
text-curie-001
davinci-instruct-beta
code-davinci-002
text-davinci-002
text-babbage-001
curie
Exemple de demande
Réponse
Completions
Étant donné une invite, le modèle renverra un ou plusieurs achèvements prédits et peut également renvoyer les probabilités de jetons alternatifs à chaque position.
Créer Completions
Crée une complétion pour l'invite avec les paramètres fournis
Request body
modèle chaîne Requis
ID du modèle à utiliser. Vous pouvez utiliser l' API
chaîne ou tableau Facultatif Par défaut à <|endoftext|>
Les invites pour lesquelles générer des complétions, codées sous forme de chaîne, de tableau de chaînes, de tableau de jetons ou de tableau de tableaux de jetons.
suffixe
chaîne Facultatif La valeur par défaut est nulle
Le suffixe qui vient après l'achèvement du texte inséré.
Le nombre de jetons de votre invite plus max_tokensne peut pas dépasser la longueur de contexte du modèle. La plupart des modèles ont une longueur de contexte de 2048 jetons (à l'exception des modèles les plus récents, qui prennent en charge 4096).
température
nombre Facultatif Par défaut à 1
Quelle température d'échantillonnage utiliser, entre 0 et 2. Des valeurs plus élevées comme 0,8 rendront la sortie plus aléatoire, tandis que des valeurs plus basses comme 0,2 la rendront plus ciblée et déterministe.
Nous recommandons généralement de modifier ceci ou top_pmais pas les deux.
top_p
nombre Facultatif Par défaut à 1
Une alternative à l'échantillonnage avec la température, appelée échantillonnage par noyau, où le modèle considère les résultats des jetons avec une masse de probabilité top_p. Ainsi, 0,1 signifie que seuls les jetons comprenant la masse de probabilité supérieure de 10 % sont pris en compte.
Nous recommandons généralement de modifier ceci ou temperaturemais pas les deux.
n
entier Facultatif Par défaut à 1
Combien de complétions générer pour chaque invite.
Remarque : Étant donné que ce paramètre génère de nombreux achèvements, il peut rapidement consommer votre quota de jetons. Utilisez-le avec précaution et assurez-vous que vous disposez de paramètres raisonnables pour max_tokenset stop.
stream
booléen Facultatif La valeur par défaut est false
Indique s'il faut diffuser la progression partielle. S'ils sont définis, les jetons seront envoyés en tant
dès qu'ils seront disponibles, le flux se terminant par un
logprobs
entier FacultatifLa valeur par défaut est nulle
Incluez les probabilités de log sur les logprobsjetons les plus probables, ainsi que les jetons choisis.
Par exemple, si logprobsvaut 5, l'API renverra une liste des 5 jetons les plus probables.
L'API renverra toujours le logprobdu jeton échantillonné,
il peut donc y avoir jusqu'à logprobs+1éléments dans la réponse.
La valeur maximale pour logprobsest 5.
écho
booléen Facultatif La valeur par défaut est false
Faites écho à l'invite en plus de l'achèvement
stop
chaîne ou tableau Facultatif La valeur par défaut est nulle
Jusqu'à 4 séquences où l'API cessera de générer d'autres jetons. Le texte renvoyé ne contiendra pas la séquence d'arrêt.
presence_penalty
nombre Facultatif Par défaut à 0
Nombre compris entre -2,0 et 2,0. Les valeurs positives pénalisent les nouveaux jetons en fonction de leur apparition dans le texte jusqu'à présent, ce qui augmente la probabilité que le modèle parle de nouveaux sujets.
Nombre compris entre -2,0 et 2,0. Les valeurs positives pénalisent les nouveaux jetons en fonction de leur fréquence existante dans le texte jusqu'à présent, ce qui réduit la probabilité que le modèle répète la même ligne textuellement.
Génère des complétions best_ofcôté serveur et renvoie le "meilleur" (celui avec la probabilité de journal la plus élevée par jeton). Les résultats ne peuvent pas être diffusés.
Lorsqu'il est utilisé avec n, best_ofcontrôle le nombre d'achèvements candidats et nspécifie le nombre à renvoyer - best_ofdoit être supérieur à n.
Remarque : Étant donné que ce paramètre génère de nombreux achèvements, il peut rapidement consommer votre quota de jetons. Utilisez-le avec précaution et assurez-vous que vous disposez de paramètres raisonnables pour max_tokenset stop.
biais_logit
map Facultatif La valeur par défaut est nulle
Modifiez la probabilité que des jetons spécifiés apparaissent dans la complétion.
Accepte un objet json qui mappe les jetons (spécifiés par leur ID de jeton dans le tokenizer GPT) à une valeur de biais associée de -100 à 100.
Par exemple, vous pouvez passer {"50256": -100}pour empêcher la génération du jeton <|endoftext|>.
user
string Facultatif
Un identifiant unique représentant votre utilisateur final, qui peut aider OpenAI à surveiller et à détecter les abus.
Quelle température d'échantillonnage utiliser, entre 0 et 2.
Des valeurs plus élevées comme 0,8 rendront la sortie plus aléatoire, tandis que des valeurs plus basses comme 0,2 la rendront plus ciblée et déterministe.
Nous recommandons généralement de modifier la température ou top_p
Mais pas les deux.
top_p
Une alternative à l'échantillonnage avec la température, appelée échantillonnage par noyau, où le modèle considère les résultats des jetons avec une masse de probabilité top_p. Ainsi, 0,1 signifie que seuls les jetons comprenant la masse de probabilité supérieure de 10 % sont pris en compte.
Nous recommandons généralement de modifier top_p ou temperature
Mais pas les deux.
n
entier Facultatif Par défaut à 1
Combien de choix d'achèvement de chat générer pour chaque message d'entrée.
Remarque : Étant donné que ce paramètre génère de nombreux achèvements, il peut rapidement consommer votre quota de jetons. Utilisez-le avec précaution et assurez-vous que vous disposez de paramètres raisonnables pour max_tokenset stop.
stream
booléen Facultatif La valeur par défaut est false
S'il est défini, des deltas de messages partiels seront envoyés, comme dans ChatGPT. Les jetons seront envoyés en tant
La longueur totale des jetons d'entrée et des jetons générés est limitée par la longueur du contexte du modèle.
presence_penalty
number Facultatif Par défaut à 0
Nombre compris entre -2,0 et 2,0. Les valeurs positives pénalisent les nouveaux jetons en fonction de leur apparition dans le texte jusqu'à présent, ce qui augmente la probabilité que le modèle parle de nouveaux sujets.
Nombre compris entre -2,0 et 2,0. Les valeurs positives pénalisent les nouveaux jetons en fonction de leur fréquence existante dans le texte jusqu'à présent, ce qui réduit la probabilité que le modèle répète la même ligne textuellement.
Modifiez la probabilité que des jetons spécifiés apparaissent dans la complétion.
Accepte un objet json qui mappe les jetons (spécifiés par leur ID de jeton dans le tokenizer) à une valeur de biais associée comprise entre -100 et 100. Mathématiquement, le biais est ajouté aux logits générés par le modèle avant l'échantillonnage. L'effet exact variera selon le modèle, mais les valeurs comprises entre -1 et 1 devraient diminuer ou augmenter la probabilité de sélection ; des valeurs telles que -100 ou 100 doivent entraîner une interdiction ou une sélection exclusive du jeton concerné.
user
string Facultatif
Un identifiant unique représentant votre utilisateur final, qui peut aider OpenAI à surveiller et à détecter les abus.
Étant donné une invite et une instruction, le modèle renverra une version modifiée de l'invite.
Create edit
POSTE https://api.openai.com/v1/edits
Crée une nouvelle modification pour l'entrée, l'instruction et les paramètres fournis.
Corps de la requête
modèle
string Requis ID du modèle à utiliser.
Vous pouvez utiliser le modèle text-davinci-edit-001ou code-davinci-edit-001avec ce point de terminaison.
input
string Facultatif Par défaut à ''
Le texte d'entrée à utiliser comme point de départ pour la modification.
instruction
string Requis
L'instruction qui indique au modèle comment modifier l'invite.
n
Integer Facultatif Par défaut à 1
Combien de modifications générer pour l'entrée et l'instruction.
temperature
number Facultatif Par défaut à 1
Quelle température d'échantillonnage utiliser, entre 0 et 2. Des valeurs plus élevées comme 0,8 rendront la sortie plus aléatoire, tandis que des valeurs plus basses comme 0,2 la rendront plus ciblée et déterministe.
Nous recommandons généralement de modifier ceci ou top_pmais pas les deux.
top_p
number Facultatif Par défaut à 1
Une alternative à l'échantillonnage avec la température, appelée échantillonnage par noyau, où le modèle considère les résultats des jetons avec une masse de probabilité top_p. Ainsi, 0,1 signifie que seuls les jetons comprenant la masse de probabilité supérieure de 10 % sont pris en compte.
Nous recommandons généralement de modifier ceci ou temperaturemais pas les deux.
Crée une image modifiée ou étendue à partir d'une image originale et d'une invite.
Corps de la requête
image
string Required
L'image à modifier. Doit être un fichier PNG valide, inférieur à 4 Mo et carré. Si le masque n'est pas fourni, l'image doit avoir une transparence, qui sera utilisée comme masque.
mask
string Optional
Une image supplémentaire dont les zones entièrement transparentes (par exemple où alpha est égal à zéro) indiquent où imagedoivent être éditées. Doit être un fichier PNG valide, moins de 4 Mo, et avoir les mêmes dimensions que image.
prompt
string Required
Une description textuelle des images souhaitées. La longueur maximale est de 1000 caractères.
n
string Optional Par défaut à 1
Le nombre d'images à générer. Doit être compris entre 1 et 10.
size
string Optional Par défaut à 1024x1024
La taille des images générées. Doit être l'un des 256x256, 512x512ou 1024x1024.
format_réponse
string Optional URL par défaut
Le format dans lequel les images générées sont renvoyées. Doit être l'un des urlou b64_json.
utilisateur
string Optional
Un identifiant unique représentant votre utilisateur final, qui peut aider OpenAI à surveiller et à détecter les abus.
L'image à modifier. Doit être un fichier PNG valide, inférieur à 4 Mo et carré. Si le masque n'est pas fourni, l'image doit avoir une transparence, qui sera utilisée comme masque.
n
string Optional Par défaut à 1
Le nombre d'images à générer. Doit être compris entre 1 et 10.
size
string Optional Par défaut à 1024x1024
La taille des images générées. Doit être l'un des 256x256, 512x512ou 1024x1024.
format_réponse
string Optional URL par défaut
Le format dans lequel les images générées sont renvoyées. Doit être l'un des urlou b64_json.
utilisateur
string Optional
Un identifiant unique représentant votre utilisateur final, qui peut aider OpenAI à surveiller et à détecter les abus.
Obtenez une représentation vectorielle d'une entrée donnée qui peut être facilement consommée par des modèles et des algorithmes d'apprentissage automatique.
Entrez le texte pour lequel obtenir les représentations incorporées, encodé sous forme de chaîne ou de tableau de jetons. Pour obtenir des représentations incorporées pour plusieurs entrées dans une seule requête, transmettez un tableau de chaînes ou un tableau de tableaux de jetons. Chaque entrée ne doit pas dépasser 8192 jetons de longueur.
user
string Optional
Un identifiant unique représentant votre utilisateur final, qui peut aider OpenAI à surveiller et à détecter les abus.