Generación de Video HappyHorse
Llama a los modelos HappyHorse de Alibaba Cloud Bailian (DashScope) a través de TENSORAXIS — texto a video, imagen a video, referencia a video y edición de video, además de parámetros y facturación.
HappyHorse es la integración de TENSORAXIS de los modelos de video de Alibaba Cloud Bailian (DashScope) (canal HappyHorse). Es una tarea asíncrona: se envía una tarea para obtener un task_id, se consulta el estado de la tarea y luego se lee la URL del video una vez completada. El flujo compartido de envío/consulta se encuentra en el resumen de Generación de Video; esta página solo cubre las cuatro capacidades y parámetros de HappyHorse.
Las cuatro capacidades se distinguen por el sufijo del nombre del modelo:
| Capacidad | Modelos | Descripción |
|---|---|---|
| Texto a video (t2v) | happyhorse-1.1-t2v, happyhorse-1.0-t2v | Generar solo a partir de un prompt |
| Imagen a video (i2v) | happyhorse-1.1-i2v, happyhorse-1.0-i2v | Generar a partir de una imagen de primer fotograma |
| Referencia a video (r2v) | happyhorse-1.1-r2v, happyhorse-1.0-r2v | Generar a partir de múltiples imágenes de referencia |
| Edición de video (video-edit) | happyhorse-1.0-video-edit | Editar a partir de un video de origen + imágenes de referencia |
Campos de la Solicitud
POST /v1/video/generations
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
model | string | Sí | Nombre del modelo HappyHorse (ver tabla anterior) |
prompt | string | Sí | Prompt del video; si está vacío devuelve 400 prompt is required |
metadata.media | array | Según la capacidad | Array de entrada de medios; cada elemento tiene type y url; type es first_frame / reference_image / video |
images | string[] | Según la capacidad | URLs de imágenes de referencia (para r2v); se tratan como imágenes de referencia cuando metadata.media está ausente |
image | string | Según la capacidad | URL de una sola imagen (primer fotograma para i2v) |
input_reference | string | Según la capacidad | URL de referencia de entrada (entrada de compatibilidad para el primer fotograma de i2v / imagen de referencia de r2v) |
metadata | object | No | Resolución, duración, relación de aspecto, etc. — ver Parámetros |
Se prefiere pasar los medios a través de metadata.media, etiquetando el propósito de cada elemento con type. images / image / input_reference son entradas de compatibilidad: cuando metadata.media está ausente, i2v toma input_reference/image como el primer fotograma, y r2v toma images/input_reference como imágenes de referencia. El video de origen para la edición de video debe pasarse a través de metadata.media (type: video).
Texto a Video (-t2v)
Solo necesita prompt; no se acepta ninguna entrada de medios.
curl https://api.tensoraxis.ai/v1/video/generations \
-H "Authorization: Bearer $TENSORAXIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "happyhorse-1.1-t2v",
"prompt": "A lake at the foot of a snowy mountain reflects the sunset; the camera slowly pushes in",
"metadata": {
"resolution": "1080P",
"ratio": "16:9",
"duration": 5
}
}'Imagen a Video (-i2v)
Exactamente una imagen de primer fotograma. Pásela a través de metadata.media (type: first_frame), o use las entradas de compatibilidad input_reference / image. ratio no se acepta (la relación de aspecto la determina el primer fotograma).
curl https://api.tensoraxis.ai/v1/video/generations \
-H "Authorization: Bearer $TENSORAXIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "happyhorse-1.1-i2v",
"prompt": "The subject slowly looks up and smiles",
"metadata": {
"resolution": "1080P",
"duration": 5,
"media": [
{ "type": "first_frame", "url": "https://example.com/first-frame.jpg" }
]
}
}'Referencia a Video (-r2v)
Genera a partir de múltiples imágenes de referencia. El gateway acepta de 1 a 9 imágenes de referencia (elementos reference_image en metadata.media, o images de nivel superior); el upstream recomienda ≤5, y cualquier cantidad superior queda sujeta a la respuesta del upstream.
curl https://api.tensoraxis.ai/v1/video/generations \
-H "Authorization: Bearer $TENSORAXIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "happyhorse-1.1-r2v",
"prompt": "Have these characters interact in the same scene",
"images": [
"https://example.com/ref-1.jpg",
"https://example.com/ref-2.jpg"
],
"metadata": {
"resolution": "1080P",
"ratio": "16:9",
"duration": 5
}
}'Edición de Video (-video-edit)
Edita a partir de un video de origen. Debe pasar exactamente un video de origen type: video a través de metadata.media; puede agregar imágenes de referencia (type: reference_image, ≤5 en el gateway, ≤4 en upstream).
- No se acepta
duration: la salida conserva la duración del video de origen, por lo que no se envía ningún parámetro de duración. - Admite
audio_setting(solo esta capacidad):auto(predeterminado) /origin.
curl https://api.tensoraxis.ai/v1/video/generations \
-H "Authorization: Bearer $TENSORAXIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "happyhorse-1.0-video-edit",
"prompt": "Replace the background with a dusk city skyline",
"metadata": {
"resolution": "1080P",
"audio_setting": "origin",
"media": [
{ "type": "video", "url": "https://example.com/source.mp4" },
{ "type": "reference_image", "url": "https://example.com/style.jpg" }
]
}
}'Parámetros
Los parámetros bajo metadata se corresponden con los campos de solicitud upstream de DashScope. El «Valor del gateway» es el valor que este sitio realmente valida/limita; las «Notas» son solo de referencia y están definidas en última instancia por la respuesta del upstream.
| Parámetro | Tipo | Aplica a | Valor del gateway / Predeterminado | Notas |
|---|---|---|---|---|
resolution | string | Todas | 720P / 1080P, predeterminado 1080P | Los valores no reconocidos usan 1080P de forma predeterminada |
ratio | string | Solo t2v / r2v | 16:9 / 9:16 / 1:1 / 4:3 / 3:4; el upstream usa 16:9 de forma predeterminada si se omite | No aceptado por i2v / video-edit |
duration | integer | t2v / i2v / r2v | Limitado a [3,15], predeterminado 5 | No aceptado por video-edit (la salida conserva la duración de origen) |
seed | integer | Todas | [0, 2147483647] | Fija la aleatoriedad; un 0 explícito se conserva y se envía |
watermark | boolean | Todas | Predeterminado false (se envía explícitamente) | Si se debe agregar una marca de agua |
audio_setting | string | Solo video-edit | auto (predeterminado) / origin | Manejo del audio |
El rango oficial de duration varía según el escenario (texto a video aproximadamente [2,15], con video aproximadamente [2,10]), pero el gateway lo limita uniformemente a [3,15]; los valores fuera de rango se truncan al límite.
Facturación
HappyHorse se factura por segundo, multiplicado por un coeficiente de resolución (1080P es aproximadamente 1.78× de 720P).
- Para t2v / i2v / r2v, la duración se conoce en el momento de la solicitud y se liquida como duración real × coeficiente de resolución.
- La edición de video no tiene entrada
duration(salida = duración del video de origen), por lo que se factura según el valor declarado demetadata.duration; cuando no se declara, se usa un valor predeterminado conservador (aproximadamente 10 segundos).
Los precios unitarios exactos siguen la configuración de «Precios de Video» de la consola y la página de precios; los operadores pueden anular los valores predeterminados con las tarifas oficiales más recientes.
Consulta de Tareas
El flujo compartido de envío/consulta, los códigos de estado y las rutas de obtención compatibles con OpenAI/Sora se encuentran en el resumen de Generación de Video.
Generación de Video SeeDance
Llama a los modelos Volcengine Ark Doubao Seedance a través de TENSORAXIS — texto a video, imagen a video, primer/último fotograma, referencia/continuación de video, además de los parámetros avanzados de metadata y la facturación.
Lista de modelos
Enumera los modelos disponibles para tu clave de API y selecciona un modelo en las solicitudes.