B2BB2B LLM

POST /v1/chat/completions

Conclusões de bate-papo compatíveis com OpenAI com streaming, ferramentas, visão e aliases de modelo.

POST /v1/chat/completions

Solicitar

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
  }'

O model pode ser um ID canônico ou um alias habilitado. O Model Gate resolve os aliases antes do preço e envia o ID canônico upstream.

Resposta

{
  "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
  }
}

Solicitação de streaming

Definir "stream": true. Os eventos enviados pelo servidor upstream são transmitidos sem reescrever cargas de eventos bem-sucedidas.

Solicitação assíncrona

Para endpoints suportados, adicione "async": true com "stream": false. A resposta imediata é HTTP 202 e contém request_id e um URL de resultado Partner API.

Erros

O status, o corpo e o tipo de conteúdo do provedor não 2xx são transmitidos inalterados. Erros de validação gerados localmente usam o envelope de erro Model Gate.

StatusSignificadoAção
400Solicitação inválidaVerifique o corpo da solicitação e o ID do modelo.
401Chave inválida ou congeladaVerifique ou gire a chave de API.
429Taxa ou limite de simultaneidade excedidoRespeito Retry-After e tente novamente com espera.
5xxErro temporário de upstream ou gatewayTente novamente solicitações idempotentes com espera exponencial.