Passer au contenu principal
POST
/
v1
/
chat
/
completions
curl -X POST https://api-llm.sunra.ai/v1/chat/completions \
  -H "Authorization: Bearer <SUNRA_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4o",
    "messages": [
      {
        "role": "system",
        "content": "You are a helpful assistant."
      },
      {
        "role": "user",
        "content": "What is the capital of France?"
      }
    ]
  }'
{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1677652288,
  "model": "openai/gpt-4o",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "The capital of France is Paris."
      },
      "finish_reason": "stop",
      "logprobs": null
    }
  ],
  "system_fingerprint": "fp_44709d6fcb",
  "usage": {
    "prompt_tokens": 25,
    "completion_tokens": 8,
    "total_tokens": 33
  }
}
Envoie une requête pour obtenir une réponse du modèle pour la conversation de chat donnée. Prend en charge les modes streaming et non-streaming. Compatible avec le format de l’API OpenAI Chat Completions.

Authentification

Authorization
string
requis
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.
messages
object[]
requis
Liste des messages pour la conversation.
model
string
requis
Le modèle à utiliser pour la complétion. Parcourez les modèles disponibles sur sunra.ai/models.
stream
boolean
défaut:false
Si défini sur true, des deltas de messages partiels seront envoyés sous forme d’événements server-sent (SSE).
max_tokens
integer
Le nombre maximum de tokens à générer dans la complétion. La longueur totale des tokens d’entrée et des tokens générés est limitée par la longueur de contexte du modèle.
temperature
number
défaut:1
Température d’échantillonnage entre 0 et 2. Des valeurs plus élevées comme 0.8 rendent la sortie plus aléatoire, des valeurs plus basses comme 0.2 la rendent plus ciblée et déterministe.
top_p
number
défaut:1
Paramètre d’échantillonnage par noyau (0-1). Une alternative à l’échantillonnage par température où le modèle considère les tokens avec une masse de probabilité top_p.
frequency_penalty
number
défaut:0
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 jusqu’à présent, diminuant la probabilité que le modèle répète la même ligne mot pour mot.
presence_penalty
number
défaut:0
Nombre entre -2.0 et 2.0. Les valeurs positives pénalisent les nouveaux tokens en fonction de leur apparition dans le texte jusqu’à présent, augmentant la probabilité que le modèle aborde de nouveaux sujets.
stop
string | string[]
Jusqu’à 4 séquences où l’API cessera de générer des tokens supplémentaires.
n
integer
défaut:1
Le nombre de choix de complétion de chat à générer pour chaque message d’entrée.
logprobs
boolean
défaut:false
Indique s’il faut retourner les log-probabilités des tokens de sortie. Si vrai, retourne les log-probabilités de chaque token de sortie retourné dans le contenu du message.
top_logprobs
integer
Un entier entre 0 et 20 spécifiant le nombre de tokens les plus probables à retourner à chaque position de token. logprobs doit être défini sur true si ce paramètre est utilisé.
response_format
object
Un objet spécifiant le format que le modèle doit produire.
seed
integer
Si spécifié, le système fera un effort optimal pour échantillonner de manière déterministe, de sorte que les requêtes répétées avec le même seed et les mêmes paramètres devraient retourner le même résultat.
tools
object[]
Une liste d’outils que le modèle peut appeler. Actuellement, seules les fonctions sont prises en charge comme outil.
tool_choice
string | object
Contrôle quel outil (le cas échéant) est appelé par le modèle. none signifie que le modèle n’appellera aucun outil. auto signifie que le modèle peut choisir entre générer un message ou appeler des outils. required signifie que le modèle doit appeler un ou plusieurs outils. Peut également spécifier une fonction particulière via {"type": "function", "function": {"name": "my_function"}}.
parallel_tool_calls
boolean
défaut:true
Indique s’il faut activer l’appel de fonctions en parallèle lors de l’utilisation d’outils.
user
string
Un identifiant unique représentant votre utilisateur final, qui peut aider à surveiller et détecter les abus.

Réponse

Réponse de complétion de chat réussie.
id
string
Un identifiant unique pour la complétion de chat.
object
string
Le type d’objet. Toujours chat.completion.
created
integer
L’horodatage Unix (en secondes) de la création de la complétion de chat.
model
string
Le modèle utilisé pour la complétion de chat.
choices
object[]
Une liste de choix de complétion de chat. Peut contenir plus d’un élément si n est supérieur à 1.
usage
object
Statistiques d’utilisation pour la requête de complétion.
system_fingerprint
string | null
Cette empreinte représente la configuration backend avec laquelle le modèle s’exécute. Peut être utilisée avec le paramètre seed pour comprendre quand des modifications du backend ont été effectuées.
curl -X POST https://api-llm.sunra.ai/v1/chat/completions \
  -H "Authorization: Bearer <SUNRA_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4o",
    "messages": [
      {
        "role": "system",
        "content": "You are a helpful assistant."
      },
      {
        "role": "user",
        "content": "What is the capital of France?"
      }
    ]
  }'
{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1677652288,
  "model": "openai/gpt-4o",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "The capital of France is Paris."
      },
      "finish_reason": "stop",
      "logprobs": null
    }
  ],
  "system_fingerprint": "fp_44709d6fcb",
  "usage": {
    "prompt_tokens": 25,
    "completion_tokens": 8,
    "total_tokens": 33
  }
}