B2BB2B LLM

POST /v1/chat/completions

Complétions de chat compatibles OpenAI avec streaming, outils, vision et alias de modèle.

POST /v1/chat/completions

Demande

curl https://api.model-gate.com/v1/chat/completions \
  -H "Authorization: Bearer mg_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "ch-47",
    "messages": [
      {"role": "user", "content": "Explain this API in one sentence."}
    ],
    "stream": false
  }'

Le model peut être un identifiant canonique ou un alias activé. Model Gate résout les alias avant la tarification et envoie l'ID canonique en amont.

Réponse

{
  "id": "chatcmpl_example",
  "object": "chat.completion",
  "model": "claude-opus-4.7",
  "choices": [
    {
      "index": 0,
      "message": {"role": "assistant", "content": "Model Gate provides one compatible API for multiple AI models."},
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 14,
    "completion_tokens": 17,
    "total_tokens": 31
  }
}

Demande de diffusion en continu

Ensemble "stream": true. Les événements envoyés par le serveur en amont sont transmis sans réécriture des charges utiles des événements réussis.

Requête asynchrone

Pour les points de terminaison pris en charge, ajoutez "async": true avec "stream": false. La réponse immédiate est HTTP 202 et contient request_id et une URL de résultat Partner API.

Erreurs

Le statut, le corps et le type de contenu du fournisseur non-2xx sont transmis sans modification. Les erreurs de validation générées localement utilisent l’enveloppe d’erreur Model Gate.

StatutSignificationAction
400Demande invalideVérifiez le corps de la demande et l'ID du modèle.
401Clé invalide ou geléeVérifiez ou faites pivoter la clé API.
429Limite de débit ou de simultanéité dépasséeRespect Retry-After et réessayez avec recul.
5xxErreur temporaire en amont ou en passerelleRéessayez les requêtes idempotentes avec une interruption exponentielle.