openai/gpt-5, servida por Comfy Router desde OpenAI.
Entrada: Texto, Imagen · Salida: Texto
Inicio rápido
Crea una clave en tu espacio de trabajo de Comfy y expórtala comoCOMFY_API_KEY. Los fragmentos de Python y TypeScript usan los SDK de Comfy (pip install comfy-sdk y npm install @comfyorg/sdk); el fragmento de cURL es la misma llamada por HTTP directo.
ID del modelo: openai/gpt-5
Endpoint: POST https://api.comfy.org/v2/models/openai/gpt-5
- Esperar el resultado
- Encolar y recoger más tarde
El mismo cuerpo, enviado a
POST https://api.comfy.org/v2/models/openai/gpt-5/requests. Router responde 201 con un request_id en cuanto se admite la ejecución, y puedes recoger el resultado cuando esté listo, desde este proceso o desde otro. Entrega en cola explica el estado, la cancelación y la recogida.Esquema
Entrada
Entradas de texto, imagen o archivo para el modelo, que se usan para generar una respuesta. Es el único campo de este contrato que Router no puede proporcionar y la única entrada en
required a continuación.Inserta un mensaje de sistema (o de desarrollador) como el primer elemento del contexto del modelo.
Un límite superior para la cantidad de tokens generados en una respuesta, incluidos los tokens de salida visibles y los tokens de razonamiento. En un id de razonamiento, este límite se comparte con los tokens de razonamiento ocultos, así que un valor pequeño puede consumir todo el presupuesto antes de que aparezca cualquier texto visible. Por eso los casos de prueba de razonamiento envían 1024, mientras que los de chat envían 16.Rango:
1 a …Identificador del modelo de OpenAI. En Comfy Router este campo es OPCIONAL y Router lo completa desde el segmento de ruta
{model}; un null explícito se reemplaza de la misma manera. Enviar un valor que no coincida con la ruta se rechaza.SOLO NIVEL DE RAZONAMIENTO. Configuración para modelos de razonamiento, p. ej.
{"effort": "medium"}. Se reenvía sin cambios; consulta la guía de razonamiento de OpenAI para conocer las claves aceptadas. Un id de nivel de chat lo ignora.Se declara para que no se rechace a quien lo envíe, pero es INERTE en esta superficie: Router lo FIJA en
false antes del despacho, porque captura la respuesta del proveedor en lugar de retransmitir un text/event-stream, que no puede decodificar; por lo tanto, OpenAI facturaría una generación en streaming y nadie la contabilizaría. Ninguna superficie de Comfy entrega el stream: la entrada v1 de POST /proxy/openai/v1/responses rechaza stream: true con un 400 y nunca reenvía la solicitud al proveedor, así que omite el campo o envía false en cualquiera de las dos superficies y lee la respuesta completada como un único cuerpo JSON.Temperatura de muestreo. SOLO NIVEL DE CHAT: los ids de razonamiento de la serie o (
o1, o1-pro, o3, o4-mini) rechazan este parámetro en OpenAI. Router no lo rechaza para ellos (consulta la nota de este componente sobre por qué los dos niveles comparten un esquema), así que una llamada de razonamiento que lo envíe recibe el propio error de OpenAI.Rango: 0 a 2Configuración del formato de salida, p. ej.
{"format": {"type": "json_schema", ...}} para Structured Outputs. Se reenvía sin cambios.Cómo debe seleccionar el modelo qué herramienta usar. Ya sea un modo de tipo cadena o un objeto que nombra una herramienta.
Definiciones de herramientas que el modelo puede llamar. Router no restringe la taxonomía de herramientas; consulta la referencia de la API de Responses de OpenAI para ver las formas aceptadas.
Corte de muestreo de núcleo. SOLO NIVEL DE CHAT, en los mismos términos que
temperature.Rango: 0 a 1Estrategia de truncamiento cuando el contexto excede la ventana del modelo. La enumeración SÍ se aplica aquí, a diferencia de los tres vocabularios anteriores, porque estos dos valores son el conjunto completo que OpenAI documenta y no ha crecido. Un
null explícito sigue aceptándose, en los mismos términos que los campos anteriores.Valores posibles: auto, disabledEnvoltorio de uso de tokens. Presente en este contrato porque la operación v1 lo declara en el cuerpo de la solicitud; OpenAI lo completa en la RESPUESTA, así que quien llama no tiene motivo para enviarlo.
GET /v2/models/openai/gpt-5/openapi.json, el mismo documento con el que valida una llamada antes de que la solicitud llegue al proveedor.
Salida
Inserta un mensaje de sistema (o de desarrollador) como el primer elemento en el contexto del modelo.Cuando lo uses junto con
previous_response_id, las instrucciones de una respuesta anterior no se transferirán a la siguiente respuesta. Esto facilita intercambiar mensajes de sistema (o de desarrollador) en nuevas respuestas.Un límite superior para la cantidad de tokens que se pueden generar en una respuesta, incluidos los tokens de salida visibles y los tokens de razonamiento.
Controla la diversidad de la respuesta mediante muestreo de núcleoRango:
0 a 1La estrategia de truncamiento a usar para la respuesta del modelo.
-
auto: Si el contexto de esta respuesta y de las anteriores supera el tamaño de la ventana de contexto del modelo, el modelo truncará la respuesta para ajustarla a la ventana de contexto descartando elementos de entrada en medio de la conversación. -
disabled(predeterminado): Si una respuesta del modelo supera el tamaño de la ventana de contexto de un modelo, la solicitud fallará con un error 400. Valores posibles:auto,disabled
El ID único de la respuesta anterior del modelo. Úsalo para
crear conversaciones de varios turnos. Aprende más acerca de
estado de la conversación.
Solo modelos de la serie oOpciones de configuración para
modelos de razonamiento.
Controla qué elementos de razonamiento se devuelven al modelo en turnos posteriores, p. ej.
auto, current_turn o all_turns.Solo modelos de la serie oRestringe el esfuerzo de razonamiento para los
modelos de razonamiento.
Actualmente los valores admitidos son
low, medium y high. Reducir
el esfuerzo de razonamiento puede dar como resultado respuestas más rápidas y menos tokens usados
en razonamiento en una respuesta.Valores posibles: low, medium, highObsoleto: usa
summary en su lugar.Un resumen del razonamiento realizado por el modelo. Esto puede ser
útil para depurar y entender el proceso de razonamiento del modelo.
Uno de auto, concise o detailed.Valores posibles: auto, concise, detailedUn resumen del razonamiento realizado por el modelo. Esto puede ser
útil para depurar y entender el proceso de razonamiento del modelo.
Uno de
auto, concise o detailed.Valores posibles: auto, concise, detailedUn objeto que especifica el formato que el modelo debe generar.Configurar
{ "type": "json_schema" } habilita las Structured Outputs,
lo que garantiza que el modelo coincida con el esquema JSON que proporciones. Aprende más en la
guía de Structured Outputs.El formato predeterminado es { "type": "text" } sin opciones adicionales.No recomendado para gpt-4o y modelos más recientes:Establecer { "type": "json_object" } habilita el modo JSON anterior, que
garantiza que el mensaje que genera el modelo sea JSON válido. Se prefiere usar json_schema
en los modelos que lo admiten.Cómo debe seleccionar el modelo qué herramienta (o herramientas) usar al generar
una respuesta. Consulta el parámetro
tools para ver cómo especificar qué herramientas
puede llamar el modelo.Marca de tiempo Unix (en segundos) de cuándo se completó esta respuesta. Solo está presente cuando el estado es
completed.El código de error de la respuesta.Valores posibles:
server_error, rate_limit_exceeded, invalid_prompt, vector_store_timeout, invalid_image, invalid_image_format, invalid_base64_image, invalid_image_url, image_too_large, image_too_small, image_parse_error, image_content_policy_violation, invalid_image_mode, image_file_too_large, unsupported_image_media_type, empty_image_file, failed_to_download_image, image_file_not_foundEl motivo por el que la respuesta está incompleta.Valores posibles:
max_output_tokens, content_filterEl número máximo de llamadas totales a herramientas integradas que se pueden procesar en una respuesta.
Resultados de moderación para la entrada y la salida de la respuesta, si solicitaste finalizaciones moderadas.
El tipo de objeto de este recurso: siempre se establece en
response.Valores posibles: responseUn arreglo de elementos de contenido generados por el modelo.
- La longitud y el orden de los elementos del arreglo
outputdependen de la respuesta del modelo. - En lugar de acceder al primer elemento del arreglo
outputy suponer que es un mensajeassistantcon el contenido generado por el modelo, considera usar la propiedadoutput_textdonde sea compatible en los SDK.
Propiedad de conveniencia exclusiva de los SDK que contiene la salida de texto agregada
de todos los elementos
output_text del arreglo output, si hay alguno.
Compatible con los SDK de Python y JavaScript.OpenAI la usa para almacenar en caché las respuestas de solicitudes similares y optimizar la tasa de aciertos de la caché. Reemplaza el campo
user.Un identificador estable que ayuda a detectar a los usuarios de tu aplicación que podrían estar infringiendo las políticas de uso de OpenAI.
El nivel de procesamiento que se usa para atender la solicitud; por ejemplo,
auto, default, flex, scale o priority.El estado de la generación de la respuesta. Uno de
completed, failed, in_progress, cancelled, queued o incomplete.Valores posibles: completed, failed, in_progress, cancelled, queued, incompleteEl número máximo de tokens más probables que se devuelven en cada posición de token, cada uno con su probabilidad logarítmica asociada.
Representa los detalles de uso de tokens, incluidos los tokens de entrada, los tokens de salida,
un desglose de los tokens de salida y el total de tokens usados.
Las escrituras en caché desglosadas por vida útil de la caché. Los dos recuentos suman
cache_write_tokens.La cantidad de tokens que se recuperaron de la caché.
Más información sobre el almacenamiento en caché de prompts.
Identificador obsoleto del usuario final. Reemplazado por
safety_identifier y prompt_cache_key.Ejemplos
Entrada
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.