Crée une réponse en streaming ou non-streaming en utilisant le format de l’API OpenAI Responses.
Authentification
Jeton Bearer. Utilisez votre clé API comme jeton Bearer dans l’en-tête Authorization. Format : Bearer <SUNRA_KEY>
Requête
Cet endpoint attend un objet.
ID du modèle utilisé pour générer la réponse. Parcourez les modèles disponibles sur sunra.ai/models .
Entrée pour la requête de réponse. Peut être une chaîne de caractères ou un tableau d’éléments d’entrée. Afficher propriétés (pour un tableau)
Le type d’élément d’entrée. Valeurs prises en charge : message, item_reference.
Le rôle de l’auteur du message. Valeurs prises en charge : user, assistant, system.
Le contenu du message d’entrée. Peut être une chaîne de caractères ou un tableau de parties de contenu.
L’ID de l’élément. Requis pour les messages assistant dans l’historique de conversation.
Le statut de l’élément. Requis pour les messages assistant dans l’historique de conversation.
Insère un message système (ou développeur) comme premier élément dans le contexte du modèle. Lorsqu’il est utilisé avec input, les instructions sont insérées au début de l’entrée.
Si défini sur true, la réponse sera diffusée en streaming via des événements server-sent (SSE).
Une limite supérieure pour le nombre de tokens de sortie, y compris les tokens de sortie visibles et les tokens de raisonnement.
Température d’échantillonnage entre 0 et 2. Des valeurs plus élevées augmentent le caractère aléatoire.
Paramètre d’échantillonnage par noyau. Une alternative à l’échantillonnage par température.
Nombre entre -2.0 et 2.0. Les valeurs positives pénalisent les nouveaux tokens en fonction de leur fréquence existante dans le texte.
Nombre entre -2.0 et 2.0. Les valeurs positives pénalisent les nouveaux tokens en fonction de leur apparition préalable dans le texte.
Un tableau d’outils que le modèle peut appeler. Le type d’outil. Valeurs prises en charge : function, web_search_preview.
Le nom de la fonction. Requis lorsque le type est function.
Une description de la fonction.
Un objet JSON Schema définissant les paramètres de la fonction.
Indique si l’adhérence stricte au schéma est activée.
Contrôle le comportement de sélection d’outils. Valeurs de chaîne prises en charge : none, auto, required. Peut également spécifier une fonction particulière.
Indique s’il faut autoriser le modèle à exécuter des appels d’outils en parallèle.
Configuration pour le format de réponse textuelle. La configuration du format de texte. Le type de format. Valeurs prises en charge : text, json_object, json_schema.
Le nom du format de réponse. Requis lorsque le type est json_schema.
Le schéma JSON. Requis lorsque le type est json_schema.
Indique si l’adhérence stricte au schéma est activée.
Configuration pour la sortie de raisonnement. Contraint l’effort de raisonnement. Valeurs prises en charge : low, medium, high.
Indique si la réponse générée doit être stockée pour une récupération ultérieure.
Ensemble de 16 paires clé-valeur pouvant être attachées à la réponse. Les clés sont des chaînes de 64 caractères maximum. Les valeurs sont des chaînes de 512 caractères maximum.
Un identifiant unique représentant votre utilisateur final. Maximum de 128 caractères.
Réponse
Objet de réponse réussi.
Identifiant unique de la réponse.
Le type d’objet. Toujours response.
Horodatage Unix (en secondes) de la création de la réponse.
Le statut de la réponse. Valeurs possibles : completed, failed, in_progress, cancelled.
Le modèle utilisé pour générer la réponse.
Un tableau d’éléments de contenu générés par le modèle. Le type d’élément de sortie. Par exemple, message.
L’ID unique de l’élément de sortie.
Le rôle. Toujours assistant.
Le statut du message. Par exemple, completed.
Le contenu du message de sortie. Type de contenu. Par exemple, output_text.
Annotations pour le contenu (par exemple, citations de recherche web).
Statistiques d’utilisation des tokens pour la réponse. Le nombre de tokens d’entrée.
Le nombre de tokens de sortie.
Le nombre total de tokens.
Détail des tokens d’entrée. Le nombre de tokens mis en cache.
Détail des tokens de sortie. Le nombre de tokens de raisonnement.
La température d’échantillonnage utilisée.
La valeur d’échantillonnage par noyau utilisée.
Le paramètre de tokens de sortie maximum utilisé.
Un objet d’erreur si la génération a échoué.
curl -X POST https://api-llm.sunra.ai/v1/responses \
-H "Authorization: Bearer <SUNRA_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}'
{
"id" : "resp-abc123" ,
"object" : "response" ,
"created_at" : 1704067200 ,
"status" : "completed" ,
"model" : "openai/gpt-4o" ,
"output" : [
{
"type" : "message" ,
"id" : "msg_abc123" ,
"role" : "assistant" ,
"status" : "completed" ,
"content" : [
{
"type" : "output_text" ,
"text" : "Hello! I'm doing well, thank you for asking. How can I help you today?" ,
"annotations" : []
}
]
}
],
"temperature" : 1.0 ,
"top_p" : 1.0 ,
"max_output_tokens" : null ,
"usage" : {
"input_tokens" : 15 ,
"output_tokens" : 18 ,
"total_tokens" : 33 ,
"input_tokens_details" : {
"cached_tokens" : 0
},
"output_tokens_details" : {
"reasoning_tokens" : 0
}
},
"error" : null
}