Skip to main content
POST
CometAPI enruta Chat Completions a varios proveedores, incluidos OpenAI, Claude y Gemini, mediante una única interfaz compatible con OpenAI. Cambie entre modelos modificando el parámetro model; la mayoría de los SDK compatibles con OpenAI funcionan configurando base_url en https://api.cometapi.com/v1.
Los parámetros de solicitud y los campos de respuesta pueden variar considerablemente entre proveedores de modelos. Consulte la documentación oficial del proveedor del modelo que utiliza siempre que necesite la lista completa de parámetros o comportamiento específico del proveedor. Por ejemplo, reasoning_effort solo se aplica a los modelos de razonamiento (o-series, GPT-5.1+), y algunos modelos no admiten logprobs ni n > 1.
Para los modelos OpenAI Pro, los modelos de razonamiento o-series y los modelos Codex, use el endpoint de Responses en su lugar. Estas familias de modelos tienen un soporte más completo en la API de Responses.

Roles de los mensajes

Para los modelos más recientes (GPT-4.1, serie GPT-5, o-series), prefiera developer en lugar de system para los mensajes de instrucciones. Ambos funcionan, pero developer ofrece un seguimiento de instrucciones más sólido.

Enviar entrada Multimodal

Muchos modelos admiten imágenes y audio junto con texto. Para enviar mensajes Multimodal, use el formato de matriz para content:
El parámetro detail controla la profundidad del análisis de imágenes:
  • low — más rápido, usa menos tokens (costo fijo)
  • high — análisis detallado, consume más tokens
  • auto — el modelo decide (predeterminado)

Transmitir respuestas

Para recibir salida incremental, configure stream en true. La respuesta se entrega como Server-Sent Events (SSE), donde cada evento contiene un objeto chat.completion.chunk:
Para incluir estadísticas de uso de tokens en las respuestas de streaming, configure stream_options.include_usage en true. Los datos de uso aparecen en el fragmento final antes de [DONE].

Solicitar salida estructurada

Para forzar que el modelo devuelva JSON válido que coincida con un esquema específico, use response_format:
El modo JSON Schema (json_schema) garantiza que la salida coincida exactamente con su esquema. El modo JSON Object (json_object) solo garantiza JSON válido; la estructura no se aplica.

Llamar a herramientas y funciones

Para permitir que el modelo llame a funciones externas, proporcione definiciones de herramientas:
Cuando el modelo decida llamar a una herramienta, la respuesta tendrá finish_reason: "tool_calls" y la matriz message.tool_calls contendrá el nombre y los argumentos de la función. Luego ejecute la función y envíe el resultado de vuelta como un mensaje tool con el tool_call_id correspondiente.

Notas entre proveedores

  • max_tokens — El parámetro heredado. Funciona con la mayoría de los modelos, pero está obsoleto para los modelos OpenAI más recientes.
  • max_completion_tokens — El parámetro recomendado para los modelos GPT-4.1, de la serie GPT-5 y o-series. Es obligatorio para los modelos de razonamiento, ya que incluye tanto los tokens de salida como los tokens de razonamiento.
CometAPI gestiona automáticamente la asignación al enrutar a diferentes proveedores.
  • system — El rol de instrucciones tradicional. Funciona con todos los modelos.
  • developer — Introducido con los modelos o1. Proporciona un seguimiento de instrucciones más sólido para modelos recientes. Recurre al comportamiento de system en modelos anteriores.
Use developer para nuevos proyectos dirigidos a los modelos GPT-4.1+ o o-series.

Preguntas frecuentes

¿Cómo gestionar los límites de tasa?

Al encontrar 429 Too Many Requests, implemente una espera exponencial:

¿Cómo mantener el contexto de la conversación?

Incluya el historial completo de la conversación en la matriz messages:

¿Qué significa finish_reason?

¿Cómo controlar los costos?

  1. Use max_completion_tokens para limitar la longitud de salida.
  2. Use gpt-5.6-terra para lograr un equilibrio entre inteligencia y costo, o gpt-5.6-luna para cargas de trabajo eficientes y de gran volumen.
  3. Mantenga los prompts concisos; evite el contexto redundante.
  4. Supervise el uso de tokens en el campo de respuesta usage.

Autorizaciones

Authorization
string
header
requerido

Bearer token authentication. Use your CometAPI key.

Cuerpo

application/json
model
string
predeterminado:gpt-5.6-sol
requerido

Model ID to use for this request. See the Models page for current options.

Ejemplo:

"gpt-4.1"

messages
object[]
requerido

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).

stream
boolean

If true, partial response tokens are delivered incrementally via server-sent events (SSE). The stream ends with a data: [DONE] message.

temperature
number
predeterminado:1

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.

Rango requerido: 0 <= x <= 2
top_p
number
predeterminado:1

Nucleus 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.

Rango requerido: 0 <= x <= 1
n
integer
predeterminado:1

Number of completion choices to generate for each input message. Defaults to 1.

stop
string

Up to 4 sequences where the API will stop generating further tokens. Can be a string or an array of strings.

max_tokens
integer

Maximum number of tokens to generate in the completion. The total of input + output tokens is capped by the model's context length.

presence_penalty
number
predeterminado:0

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.

Rango requerido: -2 <= x <= 2
frequency_penalty
number
predeterminado:0

Number between -2.0 and 2.0. Positive values penalize tokens proportionally to how often they have appeared, reducing verbatim repetition.

Rango requerido: -2 <= x <= 2
logit_bias
object

A 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.

user
string

A unique identifier for your end-user. Helps with abuse detection and monitoring.

max_completion_tokens
integer

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.

response_format
object

Specifies the output format. Use {"type": "json_object"} for JSON mode, or {"type": "json_schema", "json_schema": {...}} for strict structured output.

tools
object[]

A list of tools the model may call. Currently supports function type tools.

tool_choice
predeterminado:auto

Controls how the model selects tools. auto (default): model decides. none: no tools. required: must call a tool.

logprobs
boolean
predeterminado:false

Whether to return log probabilities of the output tokens.

top_logprobs
integer

Number of most likely tokens to return at each position (0-20). Requires logprobs to be true.

Rango requerido: 0 <= x <= 20
reasoning_effort
enum<string>

Controls the reasoning effort for o-series and GPT-5.1+ models.

Opciones disponibles:
low,
medium,
high
stream_options
object

Options for streaming. Only valid when stream is true.

service_tier
enum<string>

Specifies the processing tier.

Opciones disponibles:
auto,
default,
flex,
priority

Respuesta

Successful chat completion response.

id
string

Unique completion identifier.

Ejemplo:

"chatcmpl-abc123"

object
enum<string>

Object type. Non-streaming responses use chat.completion.

Opciones disponibles:
chat.completion
Ejemplo:

"chat.completion"

created
integer

Unix timestamp of creation.

Ejemplo:

1774412483

model
string

The model used (may include version suffix).

Ejemplo:

"gpt-5.4-2026-03-05"

choices
object[]

Array of completion choices.

usage
object

Token accounting for this request. Billing uses these counts.

service_tier
string

Service tier that processed the request, when the provider reports one.

Ejemplo:

"default"

system_fingerprint
string | null

Provider backend configuration fingerprint, when the provider reports one.

Ejemplo:

"fp_490a4ad033"