openrouter/chat-completions, servida por Comfy Router desde Openrouter.
Entrada: Texto, Imagen · Salida: Texto
Configurar la solicitud
Crea una clave en tu espacio de trabajo de Comfy y expórtala comoCOMFY_API_KEY. Para Python, ejecuta pip install comfy-sdk. Para TypeScript, ejecuta npm install @comfyorg/sdk. cURL usa HTTP sin procesar.
ID del modelo: openrouter/chat-completions
Endpoint: POST https://api.comfy.org/v2/models/openrouter/chat-completions
Este modelo no tiene un ejemplo de solicitud ejecutable. Construye el cuerpo a partir de la documentación de entrada que aparece abajo y luego úsalo con la guía de inicio rápido del Router.
Esquema
Entrada
object
Habilita el almacenamiento en caché automático de prompts. Cuando se define en el nivel superior, el sistema aplica automáticamente puntos de interrupción de caché al último bloque que se puede almacenar en caché en la solicitud. Actualmente es compatible con modelos de Anthropic Claude.
string
Valores posibles:
5m, 1hstring
requerido
Valores posibles:
ephemeralobject
Opciones de depuración para inspeccionar las transformaciones de la solicitud (solo streaming)
boolean
Si es verdadero, incluye el cuerpo de la solicitud upstream transformado en un fragmento de depuración al inicio del stream. Solo funciona en modo streaming.
number
Penalización por frecuencia (-2.0 a 2.0)Formato:
doubleobject | string | number | object[]
object
Ajustes de sesgo de logit de tokens
boolean
Devuelve las probabilidades logarítmicas
integer
Máximo de tokens en la respuesta
integer
Máximo de tokens (obsoleto, usa max_completion_tokens). Nota: algunos proveedores exigen un mínimo de 16.
object[]
requerido
Lista de mensajes de la conversación
object
Pares clave-valor con información adicional del objeto (máximo 16 pares, claves de 64 caracteres y valores de 512 caracteres)
`text`, `image`, `audio`[]
Modalidades de salida de la respuesta. Los valores admitidos son “text”, “image” y “audio”.
string
Modelo a usar para la respuesta
string[]
Modelos a usar para la respuesta
boolean
Indica si se habilita el llamado paralelo de funciones durante el uso de herramientas. Cuando es verdadero, el modelo puede generar varias llamadas a herramientas en una sola respuesta.
object[]
Plugins que quieres habilitar para esta solicitud, incluidos sus ajustes.
number
Penalización por presencia (-2.0 a 2.0)Formato:
doubleobject
Cuando hay varios proveedores de modelos disponibles, puedes indicar opcionalmente tu preferencia de enrutamiento.
boolean
Indica si se permite que proveedores de respaldo atiendan las solicitudes
- true: (predeterminado) cuando el proveedor principal (o tus proveedores personalizados en “order”) no está disponible, usa el siguiente mejor proveedor.
- false: usa solo el proveedor principal/personalizado y devuelve el error del upstream si no está disponible.
`deny`, `allow`
Configuración de recopilación de datos. Si ningún proveedor de modelos disponible cumple el requisito, tu solicitud devolverá un error.
- allow: (predeterminado) permite proveedores que almacenan datos de usuario de forma no transitoria y que pueden entrenar con ellos
- deny: usa solo proveedores que no recopilan datos de usuario.
boolean
Indica si se restringe el enrutamiento solo a modelos que permiten la destilación de texto. Cuando es verdadero, solo se usarán los modelos en los que el autor haya permitido la destilación.
`AkashML`, `AI21`, `AionLabs`, `Alibaba`, `Ambient`, `Baidu`, `Amazon Bedrock`, `Amazon Nova`, `Anthropic`, `Arcee AI`, `AtlasCloud`, `Avian`, `Azure`, `BaseTen`, `BytePlus`, `Black Forest Labs`, `Cerebras`, `Chutes`, `Cirrascale`, `Clarifai`, `Cloudflare`, `Cohere`, `Crucible`, `Crusoe`, `DeepInfra`, `DeepSeek`, `DekaLLM`, `Featherless`, `Fireworks`, `Friendli`, `GMICloud`, `Google`, `Google AI Studio`, `Groq`, `Hyperbolic`, `Inception`, `Inceptron`, `InferenceNet`, `Ionstream`, `Infermatic`, `Io Net`, `Inflection`, `Liquid`, `Mara`, `Mancer 2`, `Minimax`, `ModelRun`, `Mistral`, `Modular`, `Moonshot AI`, `Morph`, `NCompass`, `Nebius`, `Nex AGI`, `NextBit`, `Novita`, `Nvidia`, `OpenAI`, `OpenInference`, `Parasail`, `Poolside`, `Perceptron`, `Perplexity`, `Phala`, `Recraft`, `Reka`, `Relace`, `SambaNova`, `Seed`, `SiliconFlow`, `Sourceful`, `StepFun`, `Stealth`, `StreamLake`, `Switchpoint`, `Together`, `Upstage`, `Venice`, `WandB`, `Xiaomi`, `xAI`, `Z.AI`, `FakeProvider` | string[]
Lista de slugs de proveedores que se deben ignorar. Si se proporciona, esta lista se combina con la configuración de proveedores ignorados de toda tu cuenta para esta solicitud.
object
El objeto que especifica el precio máximo que quieres pagar por esta solicitud. Precio en USD por millón de tokens, para prompt y respuesta.
string
Precio por millón de tokens de prompt
string
Precio por millón de tokens de prompt
string
Precio por millón de tokens de prompt
string
Precio por millón de tokens de prompt
string
Precio por millón de tokens de prompt
`AkashML`, `AI21`, `AionLabs`, `Alibaba`, `Ambient`, `Baidu`, `Amazon Bedrock`, `Amazon Nova`, `Anthropic`, `Arcee AI`, `AtlasCloud`, `Avian`, `Azure`, `BaseTen`, `BytePlus`, `Black Forest Labs`, `Cerebras`, `Chutes`, `Cirrascale`, `Clarifai`, `Cloudflare`, `Cohere`, `Crucible`, `Crusoe`, `DeepInfra`, `DeepSeek`, `DekaLLM`, `Featherless`, `Fireworks`, `Friendli`, `GMICloud`, `Google`, `Google AI Studio`, `Groq`, `Hyperbolic`, `Inception`, `Inceptron`, `InferenceNet`, `Ionstream`, `Infermatic`, `Io Net`, `Inflection`, `Liquid`, `Mara`, `Mancer 2`, `Minimax`, `ModelRun`, `Mistral`, `Modular`, `Moonshot AI`, `Morph`, `NCompass`, `Nebius`, `Nex AGI`, `NextBit`, `Novita`, `Nvidia`, `OpenAI`, `OpenInference`, `Parasail`, `Poolside`, `Perceptron`, `Perplexity`, `Phala`, `Recraft`, `Reka`, `Relace`, `SambaNova`, `Seed`, `SiliconFlow`, `Sourceful`, `StepFun`, `Stealth`, `StreamLake`, `Switchpoint`, `Together`, `Upstage`, `Venice`, `WandB`, `Xiaomi`, `xAI`, `Z.AI`, `FakeProvider` | string[]
Lista de slugs de proveedor permitidos. Si se proporciona, esta lista se combina con las configuraciones de proveedores permitidos de tu cuenta para esta solicitud.
`AkashML`, `AI21`, `AionLabs`, `Alibaba`, `Ambient`, `Baidu`, `Amazon Bedrock`, `Amazon Nova`, `Anthropic`, `Arcee AI`, `AtlasCloud`, `Avian`, `Azure`, `BaseTen`, `BytePlus`, `Black Forest Labs`, `Cerebras`, `Chutes`, `Cirrascale`, `Clarifai`, `Cloudflare`, `Cohere`, `Crucible`, `Crusoe`, `DeepInfra`, `DeepSeek`, `DekaLLM`, `Featherless`, `Fireworks`, `Friendli`, `GMICloud`, `Google`, `Google AI Studio`, `Groq`, `Hyperbolic`, `Inception`, `Inceptron`, `InferenceNet`, `Ionstream`, `Infermatic`, `Io Net`, `Inflection`, `Liquid`, `Mara`, `Mancer 2`, `Minimax`, `ModelRun`, `Mistral`, `Modular`, `Moonshot AI`, `Morph`, `NCompass`, `Nebius`, `Nex AGI`, `NextBit`, `Novita`, `Nvidia`, `OpenAI`, `OpenInference`, `Parasail`, `Poolside`, `Perceptron`, `Perplexity`, `Phala`, `Recraft`, `Reka`, `Relace`, `SambaNova`, `Seed`, `SiliconFlow`, `Sourceful`, `StepFun`, `Stealth`, `StreamLake`, `Switchpoint`, `Together`, `Upstage`, `Venice`, `WandB`, `Xiaomi`, `xAI`, `Z.AI`, `FakeProvider` | string[]
Una lista ordenada de slugs de proveedor. El enrutador intentará usar el primer proveedor del subconjunto de esta lista que admita el modelo que solicitaste y recurrirá al siguiente si no está disponible. Si no hay proveedores disponibles, la solicitud fallará con un mensaje de error.
number | object
Latencia máxima preferida (en segundos). Puede ser un número (se aplica a p50) o un objeto con umbrales específicos por percentil. Los endpoints por encima de los umbrales aún pueden usarse, pero tienen menor prioridad en el enrutamiento. Al usar modelos de respaldo, esto puede provocar que se use un modelo de respaldo en lugar del modelo principal si cumple con el umbral.
number | object
Rendimiento mínimo preferido (en tokens por segundo). Puede ser un número (se aplica a p50) o un objeto con umbrales específicos por percentil. Los endpoints por debajo de los umbrales aún pueden usarse, pero tienen menor prioridad en el enrutamiento. Al usar modelos de respaldo, esto puede provocar que se use un modelo de respaldo en lugar del modelo principal si cumple con el umbral.
`int4`, `int8`, `fp4`, `fp6`, `fp8`, `fp16`, `bf16`, `fp32`, `unknown`[]
Una lista de niveles de cuantización para filtrar los proveedores.
boolean
Indica si se deben filtrar los proveedores para dejar solo aquellos que admitan los parámetros que proporcionaste. Si se omite esta configuración o se establece en false, los proveedores recibirán solo los parámetros que admitan e ignorarán el resto.
`price`, `throughput`, `latency`, `exacto` | object
La estrategia de ordenamiento que se usará para esta solicitud si no se especifica “order”. Cuando se establece, no se realiza balanceo de carga.
boolean
Indica si se debe restringir el enrutamiento solo a endpoints ZDR (Zero Data Retention). Cuando es true, solo se usarán los endpoints que no retienen prompts.
object
Opciones de configuración para modelos de razonamiento
`xhigh`, `high`, `medium`, `low`, `minimal`, `none`
Restringe el esfuerzo de razonamiento en los modelos de razonamiento
string
Valores posibles:
auto, concise, detailedobject
Configuración del formato de respuesta
object
Cualquier tipo
integer
Semilla aleatoria para salidas deterministas
`auto`, `default`, `flex`, `priority`, `scale`
El nivel de servicio que se usará para procesar esta solicitud.
string
Un identificador único para agrupar solicitudes relacionadas (por ejemplo, una conversación o un flujo de trabajo de agente) para observabilidad. Si se proporciona tanto en el cuerpo de la solicitud como en el encabezado x-session-id, el valor del cuerpo tiene prioridad. Máximo de 256 caracteres.
string | string[] | object
Secuencias de parada (hasta 4)
object[]
Condiciones de parada para el bucle del agente de herramientas del servidor. Si se activa cualquier condición, se detiene el bucle (lógica OR). Cuando se establece, anula
max_tool_calls.boolean
predeterminado:"false"
Habilitar la respuesta en streaming
object
Opciones de configuración de streaming
boolean
Obsoleto: este campo no tiene efecto. Los detalles de uso completo siempre se incluyen.
number
Temperatura de muestreo (0-2)Formato:
double`none` | `auto` | `required` | object
Configuración de elección de herramienta
object[]
Herramientas disponibles para llamadas a funciones
integer
Número de log probabilidades principales a devolver (0-20)
number
Parámetro de muestreo de núcleo (0-1)Formato:
doubleobject
Metadatos para observabilidad y trazabilidad. Las claves conocidas (trace_id, trace_name, span_name, generation_name, parent_span_id) tienen un manejo especial. Las claves adicionales se pasan como metadatos personalizados a los destinos de difusión configurados.
string
string
string
string
string
string
Identificador único de usuario
GET /v2/models/openrouter/chat-completions/openapi.json, el mismo documento contra el que valida una llamada antes de que la solicitud llegue al proveedor.
Salida
object[]
requerido
Lista de opciones de completado
string
requerido
Valores posibles:
tool_calls, stop, length, content_filter, errorinteger
requerido
Índice de la opción
object
Logaritmos de probabilidad del completado
object[]
requerido
Logaritmos de probabilidad de los tokens de contenido
integer[]
requerido
Bytes UTF-8 del token
number
requerido
Logaritmo de probabilidad del tokenFormato:
doublestring
requerido
El token
object[]
requerido
Tokens alternativos principales con sus probabilidades
integer[]
requerido
number
requerido
Formato:
doublestring
requerido
object[]
Logaritmos de probabilidad de los tokens de rechazo
integer[]
requerido
Bytes UTF-8 del token
number
requerido
Logaritmo de probabilidad del tokenFormato:
doublestring
requerido
El token
object[]
requerido
Tokens alternativos principales con sus probabilidades
integer[]
requerido
number
requerido
Formato:
doublestring
requerido
object
requerido
Mensaje del asistente para solicitudes y respuestas
object
Datos o referencia de salida de audio
string
Datos de audio codificados en Base64
integer
Marca de tiempo de expiración del audio
string
Identificador de la salida de audio
string
Transcripción del audio
string | object[] | object
Contenido del mensaje del asistente
object[]
Imágenes generadas por modelos de generación de imágenes
object
requerido
string
requerido
URL o datos codificados en base64 de la imagen generada
string
Nombre opcional para el asistente
string
Salida de razonamiento
object[]
Detalles de razonamiento para modelos de pensamiento extendido
string
Mensaje de rechazo si se rechazó el contenido
object[]
Llamadas a herramientas realizadas por el asistente
object
requerido
string
requerido
Argumentos de la función como cadena JSON
string
requerido
Nombre de la función a llamar
string
requerido
Identificador de la llamada a la herramienta
string
requerido
Valores posibles:
functioninteger
requerido
Marca de tiempo Unix de creación
string
requerido
Identificador único del completado
string
requerido
Modelo usado para el completado
string
requerido
Valores posibles:
chat.completionobject
integer
requerido
object[]
string
requerido
string
requerido
integer
requerido
object
requerido
object[]
requerido
string
requerido
string
requerido
boolean
requerido
integer
requerido
boolean
requerido
object
number
Formato:
doublenumber
Formato:
doublestring
object[]
number
Formato:
doubleobject
string
string
string
requerido
string
string
requerido
Tipo categórico de una etapa de pipeline. Varios plugins pueden compartir un tipo (por ejemplo, todos los plugins de nivel guardrail emiten
guardrail); el campo name distingue qué plugin lo emitió.Valores posibles: guardrail, plugin, server_tools, response_healing, context_compressionstring
requerido
string
requerido
string
requerido
Valores posibles:
direct, auto, free, latest, alias, fallback, pareto, bodybuilder, fusionstring
requerido
string
El nivel de servicio que utiliza el proveedor upstream para esta solicitud
string
requerido
Huella del sistema
object
Estadísticas de uso de tokens
integer
requerido
Número de tokens de la finalización
object
Uso detallado de tokens de finalización
number
Costo de la finalizaciónFormato:
doubleobject
Desglose de los costos de inferencia upstream
number
requerido
Formato:
doublenumber
Formato:
doublenumber
requerido
Formato:
doubleboolean
Indica si una solicitud se realizó con una configuración Bring Your Own Key
integer
requerido
Número de tokens del prompt
object
Uso detallado de tokens del prompt
integer
requerido
Número total de tokens
Ejemplos
Salida
Antes de lanzar
Los SDK crean unaIdempotency-Key y la reutilizan para los reintentos automáticos. Para los reintentos manuales, reutiliza la clave original. Router puede mantener la conexión abierta hasta 10 minutos.
Cuando una solicitud falla, Router envía un encabezado de respuesta X-Comfy-Error-Type que explica el motivo. Un 422 significa que Router rechazó la entrada antes de llamar al proveedor, y un 413 significa que el cuerpo de la solicitud era más grande de lo que Router acepta. Descarga los recursos generados de inmediato, porque las URL de resultados pueden caducar.
Cualquier límite de tamaño mencionado en la descripción de un campo más arriba es el límite propio del proveedor para ese campo, citado de la especificación del proveedor. Router aplica un tope aparte al cuerpo completo de la solicitud, con el que cuentan los medios codificados en base64: consulta tamaño del cuerpo de la solicitud.
Esta página documenta un modelo socio al que se llama a través de Comfy Router. El mismo paquete comfy-sdk / @comfyorg/sdk también incluye un segundo cliente, para ejecutar todo un gráfico de flujo de trabajo de ComfyUI en Comfy Cloud: Comfy(api_key=...) / new Comfy({ apiKey }), con client.workflows, client.assets y client.jobs. Consulta SDK de Comfy.
Encabezados
Autenticación, idempotencia, IDs de solicitud, agrupaciones de errores, ritmo de reintentos y límites de gasto.
Uso de la API de Router
Descubrimiento de modelos, errores de validación, reintentos y facturación.
Limitaciones
Lo que Router no hace hoy y qué usar en su lugar.