Criar uma conclusão de chat
Use o CometAPI POST /v1/chat/completions para enviar conversas com várias mensagens a modelos de chat com controles de streaming, temperature e max_tokens.
model; a maioria dos SDKs compatíveis com OpenAI funciona ao definir base_url como https://api.cometapi.com/v1.
Funções das mensagens
Enviar entrada multimodal
Muitos modelos oferecem suporte a imagens e áudio juntamente com texto. Para enviar mensagens Multimodal, use o formato de matriz paracontent:
detail controla a profundidade da análise de imagens:
low— mais rápido, usa menos tokens (custo fixo)high— análise detalhada, consome mais tokensauto— o modelo decide (padrão)
Transmitir respostas
Para receber saída incremental, definastream como true. A resposta é entregue como Eventos enviados pelo servidor (SSE), em que cada evento contém um objeto chat.completion.chunk:
Solicitar saída estruturada
Para forçar o modelo a retornar JSON válido correspondente a um esquema específico, useresponse_format:
json_schema) garante que a saída corresponda exatamente ao seu esquema. O modo JSON Object (json_object) garante apenas JSON válido — a estrutura não é imposta.Chamar ferramentas e funções
Para permitir que o modelo chame funções externas, forneça definições de ferramentas:finish_reason: "tool_calls" e a matriz message.tool_calls conterá o nome e os argumentos da função. Em seguida, execute a função e envie o resultado de volta como uma mensagem tool com o tool_call_id correspondente.
Observações entre provedores
Suporte a parâmetros entre provedores
Suporte a parâmetros entre provedores
max_tokens vs max_completion_tokens
max_tokens vs max_completion_tokens
max_tokens— O parâmetro legado. Funciona com a maioria dos modelos, mas está obsoleto para modelos OpenAI mais recentes.max_completion_tokens— O parâmetro recomendado para modelos GPT-4.1, da série GPT-5 e o-series. Obrigatório para modelos de raciocínio, pois inclui tokens de saída e tokens de raciocínio.
função system vs developer
função system vs developer
system— A função de instrução tradicional. Funciona com todos os modelos.developer— Introduzida com os modelos o1. Oferece um seguimento de instruções mais forte para modelos mais recentes. Usa o comportamento desystemcomo alternativa em modelos mais antigos.
developer em novos projetos destinados a modelos GPT-4.1+ ou o-series.Perguntas frequentes
Como lidar com limites de taxa?
Ao encontrar429 Too Many Requests, implemente backoff exponencial:
Como manter o contexto da conversa?
Inclua todo o histórico da conversa na matrizmessages:
O que finish_reason querdizer?
Como controlar os custos?
- Use
max_completion_tokenspara limitar o comprimento da saída. - Use
gpt-5.6-terrapara equilibrar inteligência e custo, ougpt-5.6-lunapara cargas de trabalho eficientes e de alto volume. - Mantenha os prompts concisos — evite contexto redundante.
- Monitore o uso de tokens no campo de resposta
usage.
Autorizações
Bearer token authentication. Use your CometAPI key.
Corpo
Model ID to use for this request. See the Models page for current options.
"gpt-4.1"
A list of messages forming the conversation. Each message has a role (system, user, assistant, or developer) and content (text string or multimodal content array).
If true, partial response tokens are delivered incrementally via server-sent events (SSE). The stream ends with a data: [DONE] message.
Sampling temperature between 0 and 2. Higher values (e.g., 0.8) produce more random output; lower values (e.g., 0.2) make output more focused and deterministic. Recommended to adjust this or top_p, but not both.
0 <= x <= 2Nucleus sampling parameter. The model considers only the tokens whose cumulative probability reaches top_p. For example, 0.1 means only the top 10% probability tokens are considered. Recommended to adjust this or temperature, but not both.
0 <= x <= 1Number of completion choices to generate for each input message. Defaults to 1.
Up to 4 sequences where the API will stop generating further tokens. Can be a string or an array of strings.
Maximum number of tokens to generate in the completion. The total of input + output tokens is capped by the model's context length.
Number between -2.0 and 2.0. Positive values penalize tokens based on whether they have already appeared, encouraging the model to explore new topics.
-2 <= x <= 2Number between -2.0 and 2.0. Positive values penalize tokens proportionally to how often they have appeared, reducing verbatim repetition.
-2 <= x <= 2A JSON object mapping token IDs to bias values from -100 to 100. The bias is added to the model's logits before sampling. Values between -1 and 1 subtly adjust likelihood; -100 or 100 effectively ban or force selection of a token.
A unique identifier for your end-user. Helps with abuse detection and monitoring.
An upper bound for the number of tokens to generate, including visible output tokens and reasoning tokens. Use this instead of max_tokens for GPT-4.1+, GPT-5 series, and o-series models.
Specifies the output format. Use {"type": "json_object"} for JSON mode, or {"type": "json_schema", "json_schema": {...}} for strict structured output.
A list of tools the model may call. Currently supports function type tools.
Controls how the model selects tools. auto (default): model decides. none: no tools. required: must call a tool.
Whether to return log probabilities of the output tokens.
Number of most likely tokens to return at each position (0-20). Requires logprobs to be true.
0 <= x <= 20Controls the reasoning effort for o-series and GPT-5.1+ models.
low, medium, high Options for streaming. Only valid when stream is true.
Specifies the processing tier.
auto, default, flex, priority Resposta
Successful chat completion response.
Unique completion identifier.
"chatcmpl-abc123"
Object type. Non-streaming responses use chat.completion.
chat.completion "chat.completion"
Unix timestamp of creation.
1774412483
The model used (may include version suffix).
"gpt-5.4-2026-03-05"
Array of completion choices.
Token accounting for this request. Billing uses these counts.
Service tier that processed the request, when the provider reports one.
"default"
Provider backend configuration fingerprint, when the provider reports one.
"fp_490a4ad033"