Saltar al contenido principal
Comfy Router te ofrece una sola API para modelos alojados de imagen y video en https://api.comfy.org. Crea una clave API en tu espacio de trabajo de Comfy y luego llama a cualquier modelo con los SDK oficiales de Python y TypeScript o por HTTP simple. La facturación es de pago por uso: de forma predeterminada, cada solicitud toma créditos del saldo de tu espacio de trabajo, sin suscripción. Consulta los precios de Router para ver las tarifas y otras opciones de facturación.
¿Haces seguimiento del gasto con LiteLLM? Router informa el costo en USD de una ejecución síncrona en el encabezado que LiteLLM lee, así no tienes que mantener una tabla de precios. Consulta Usar Comfy Router con LiteLLM.
1

Crear una clave API

Crea una clave en tu espacio de trabajo de Comfy. En una terminal compatible con Bash, establece:
Mantén las claves API en tu servidor o en tu entorno local. Estos ejemplos son para una terminal o un servidor, no para JavaScript del navegador.Router cobra créditos por solicitud. Si tu espacio de trabajo no tiene saldo de créditos, la primera llamada real devuelve 402 con error_type: insufficient_credits. Esta comprobación se ejecuta antes de la validación del cuerpo, así que un espacio de trabajo sin fondos puede devolver 402 incluso para una solicitud no válida. Agrega créditos en facturación del espacio de trabajo antes de depurar el cuerpo de la solicitud.
2

Encolar una solicitud

Elige tu idioma y ejecuta el ejemplo. La generación puede tardar unos minutos.
Cada llamada de envío del SDK crea una clave de idempotencia y la reutiliza para los reintentos automáticos. El ejemplo de cURL genera una con uuidgen. Si no está disponible, usa otro generador de UUID. Para detalles sobre el estado, la cancelación y la recopilación del resultado, consulta Entrega en cola.

Imagen a video y referencia a video

La misma solicitud de Seedance acepta entradas de imagen, video y audio. Agrega elementos a content y define el role de cada uno. Los roles que envías determinan la operación que ejecuta Router. El precio sigue los tipos de medio en content, no los roles: una solicitud con cualquier entrada de video se cobra como video a video; si no, una con cualquier imagen se cobra como imagen a video; y una solicitud solo de texto se cobra como texto a video. Algunos modelos cobran la misma tarifa para texto a video e imagen a video. La url de una imagen puede ser una URL pública o una cadena data:image/<format>;base64,<content>. Envía, consulta el estado y recoge el resultado exactamente como en la guía de inicio rápido anterior. Solo cambia el cuerpo.
Image-to-video
Reference-to-video
En Seedance 2.5, las solicitudes de primer fotograma y de primer y último fotograma toman la relación de aspecto de salida del primer fotograma. Omite ratio o envía adaptive, porque una relación concreta se rechaza con un 400. El esquema de la solicitud es compartido por toda la familia Seedance y puede listar roles que un modelo ignora, así que revisa el campo x-comfy-router-input-modalities en el esquema de entrada de cada modelo para conocer los tipos de entrada que ese modelo acepta. Por ejemplo, reference_video y reference_audio necesitan un modelo que liste video o audio ahí.

Editar o extender un video de referencia

En Seedance 2.5, omni_reference_task_type le indica al modelo qué hacer con el material de referencia: reference crea un video nuevo guiado por él, edit cambia un clip de reference_video y extend continúa un clip. Sin el campo, el modelo elige la tarea a partir del prompt, y una edición conserva la longitud y la relación de aspecto del propio clip e ignora duration y ratio. En la ruta nativa de BytePlus, un valor explícito que no se ajusta a la solicitud se rechaza antes de que empiece la generación, por lo que no se cobra. Una ruta de proveedor alternativa, usada como respaldo o elegida con model_provider, no tiene campo de tipo de tarea: descarta el valor y deja que ese proveedor infiera la tarea como si el campo se hubiera omitido. El descarte se indica en X-Comfy-Router-Dropped-Params, en la respuesta de una ruta de ejecución síncrona y en el 201 del envío en cola. La ruta en cola no tiene respaldo, así que solo llega a una ruta alternativa mediante model_provider.
Edit a reference video
Una edición conserva la longitud del clip de origen, así que envía "duration": -1 y omite ratio. Una solicitud de extend devuelve solo el segmento recién generado, con la duration que envíes.

Siguientes pasos

Explorar modelos

Explora los modelos disponibles y encuentra ejemplos de solicitudes específicos para cada modelo.

Usar la API de Router

Conoce el descubrimiento de modelos, los esquemas, las solicitudes en cola, los errores y la facturación.