openai/gpt-6-luna, 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 con HTTP sin procesar.
ID del modelo: openai/gpt-6-luna
Endpoint: POST https://api.comfy.org/v2/models/openai/gpt-6-luna
- Esperar el resultado
- Encolar y recoger más tarde
El mismo cuerpo, enviado a
POST https://api.comfy.org/v2/models/openai/gpt-6-luna/requests. Router responde 201 con un request_id en cuanto se admite la ejecución, y el resultado se recoge cuando está listo, desde este proceso o desde otro. Entrega en cola explica el estado, la cancelación y la recogida.Esquema
Entrada
string[]
Datos de salida adicionales que se incluyen en la respuesta del modelo.
string | object[]
requerido
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 aportar, y la única entrada en
required más abajo.string
Inserta un mensaje de sistema (o de desarrollador) como primer elemento en el contexto del modelo.
integer
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 techo 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, y por eso los casos de prueba de razonamiento envían 1024 donde los de chat envían 16.Rango:
1 a …string
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. Se rechaza el envío de un valor que no coincida con la ruta.boolean
Indica si se permite que el modelo ejecute llamadas a herramientas en paralelo.
string
El ID de una respuesta anterior, para conversaciones de varios turnos.
object
SOLO NIVEL DE RAZONAMIENTO. Configuración para modelos de razonamiento, por ejemplo
{"effort": "medium"}. Se reenvía sin cambios; consulta la guía de razonamiento de OpenAI para conocer las claves aceptadas. Un id de nivel chat lo ignora.boolean
Indica si OpenAI almacena la respuesta generada para recuperarla más tarde.
boolean
Se declara para que no se rechace a quien lo envía, 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, el cual no puede decodificar, así que una generación en streaming la facturaría OpenAI y nadie la mediría. Ninguna superficie de Comfy sirve el stream: la entrada POST /proxy/openai/v1/responses de la v1 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 solo cuerpo JSON.number
Temperatura de muestreo. SOLO NIVEL 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 por ellos (consulta la nota de este componente sobre por qué los dos niveles comparten un esquema), así que OpenAI responde con su propio error a una llamada de razonamiento que lo envía.Rango: 0 a 2object
Configuración del formato de salida, por ejemplo
{"format": {"type": "json_schema", ...}} para Structured Outputs. Se reenvía sin cambios.string | object
Cómo debe seleccionar el modelo qué herramienta usar. Ya sea un modo en forma de cadena o un objeto que nombra una herramienta.
object[]
Definiciones de herramientas que el modelo puede llamar. Router no restringe la taxonomía de herramientas; consulta la referencia de la API Responses de OpenAI para conocer las formas aceptadas.
number
Corte de muestreo de núcleo. SOLO NIVEL CHAT, en los mismos términos que
temperature.Rango: 0 a 1string
Estrategia de truncamiento cuando el contexto excede la ventana del modelo. Aquí el enum SÍ se aplica, 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, disabledobject
Envolvente de uso de tokens. Está presente en este contrato porque la operación de la v1 lo declara en el cuerpo de la solicitud; OpenAI lo rellena en la RESPUESTA, así que quien llama no tiene motivo para enviarlo.
GET /v2/models/openai/gpt-6-luna/openapi.json, el mismo documento con el que valida una llamada antes de que la solicitud llegue al proveedor.
Salida
string
Inserta un mensaje de sistema (o de desarrollador) como el primer elemento del contexto del modelo.Cuando se usa junto con
previous_response_id, las instrucciones de una respuesta anterior no se trasladan a la siguiente respuesta. Esto facilita reemplazar los mensajes de sistema (o de desarrollador) en las nuevas respuestas.integer
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.
string
El modelo que se usa para generar la respuesta
number
predeterminado:"1"
Controla la aleatoriedad de la respuestaRango:
0 a 2number
predeterminado:"1"
Controla la diversidad de la respuesta mediante muestreo de núcleoRango:
0 a 1string
predeterminado:"\"disabled\""
La estrategia de truncamiento que se usa para la respuesta del modelo.
-
auto: si el contexto de esta respuesta y 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
string
El ID único de la respuesta anterior del modelo. Úsalo para crear conversaciones de varios turnos. Aprende más acerca del estado de la conversación.
object
Solo modelos de la serie oOpciones de configuración para los modelos de razonamiento.
string
Controla qué elementos de razonamiento se devuelven al modelo en turnos posteriores, por ejemplo
auto, current_turn o all_turns.string
predeterminado:"\"medium\""
Solo modelos de la serie oLimita el esfuerzo de razonamiento de los modelos de razonamiento. Los valores admitidos actualmente 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 dentro de una respuesta.Valores posibles: low, medium, highstring
Obsoleto: usa
summary en su lugar.Un resumen del razonamiento realizado por el modelo. Puede ser útil para depurar y entender el proceso de razonamiento del modelo. Uno de auto, concise o detailed.Valores posibles: auto, concise, detailedstring
El modo de razonamiento usado para la respuesta.
string
Un resumen del razonamiento realizado por el modelo. Puede ser útil para depurar y entender el proceso de razonamiento del modelo. Uno de
auto, concise o detailed.Valores posibles: auto, concise, detailedobject
object
Un objeto que especifica el formato que el modelo debe producir.Configurar
{ "type": "json_schema" } habilita las salidas estructuradas, lo que garantiza que el modelo coincida con el esquema JSON que proporciones. Aprende más en la guía de salidas estructuradas.El formato predeterminado es { "type": "text" } sin opciones adicionales.No recomendado para gpt-4o y modelos más nuevos:Establecerlo en { "type": "json_object" } habilita el modo JSON anterior, que garantiza que el mensaje que genera el modelo sea JSON válido. Se prefiere json_schema en los modelos que lo admiten.string
Limita la verbosidad de la respuesta del modelo. Uno de
low, medium o high.`none`, `auto`, `required` | object
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.object[]
boolean
Indica si la respuesta del modelo se ejecuta en segundo plano.
object
Información de facturación de la respuesta.
string
La parte responsable de pagar la respuesta.
number
Marca de tiempo Unix (en segundos) de cuándo se completó esta respuesta. Solo está presente cuando el estado es
completed.number
Marca de tiempo Unix (en segundos) de cuándo se creó esta respuesta.
object
Un objeto de error que se devuelve cuando el modelo no logra generar una respuesta.
string
requerido
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_foundstring
requerido
Una descripción legible del error.
number
Penaliza los tokens nuevos según su frecuencia existente en el texto hasta el momento.
string
Identificador único de esta respuesta.
object
Detalles sobre por qué la respuesta está incompleta.
string
El motivo por el que la respuesta está incompleta.Valores posibles:
max_output_tokens, content_filterinteger
El número máximo de llamadas totales a herramientas integradas que puede procesar una respuesta.
object
Conjunto de pares clave-valor que puedes adjuntar a la respuesta.
object
Resultados de moderación para la entrada y la salida de la respuesta, si solicitaste finalizaciones moderadas.
string
El tipo de objeto de este recurso. Siempre se establece en
response.Valores posibles: responseobject[]
Un 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 los SDK lo admitan.
string
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. Es compatible con los SDK de Python y JavaScript.boolean
predeterminado:"true"
Indica si se permite que el modelo ejecute llamadas a herramientas en paralelo.
number
Penaliza los tokens nuevos según si aparecen en el texto hasta el momento.
string
OpenAI la usa para almacenar en caché las respuestas a solicitudes similares y optimizar la tasa de aciertos de la caché. Reemplaza el campo
user.string
La política de retención de la caché de prompts, por ejemplo,
in_memory o 24h.string
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.
string
El nivel de procesamiento usado para atender la solicitud, por ejemplo,
auto, default, flex, scale o priority.string
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, incompleteboolean
Indica si la respuesta se almacena para recuperarla más tarde mediante la API.
object
Uso de tokens y solicitudes desglosado por herramienta integrada.
object
Uso de tokens de la herramienta de generación de imágenes.
integer
object
integer
integer
integer
object
integer
integer
integer
object
Uso de la herramienta de búsqueda web.
integer
integer
El número máximo de tokens más probables que se devolverán en cada posición de token, cada uno con su probabilidad logarítmica asociada.
object
Representa los detalles del 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.
integer
requerido
El número de tokens de entrada.
object
requerido
Un desglose detallado de los tokens de entrada.
integer
El número de tokens de entrada que se escribieron en la caché.
integer
requerido
La cantidad de tokens que se recuperaron de la caché.
Más información sobre el almacenamiento en caché de prompts.
integer
requerido
La cantidad de tokens de salida.
object
requerido
Un desglose detallado de los tokens de salida.
integer
requerido
La cantidad de tokens de razonamiento.
integer
requerido
La cantidad total de tokens utilizados.
string
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.