Generación de Video
Envía tareas de generación de video, consulta el estado de las tareas y pasa parámetros avanzados de Seedance/Doubao a través de TENSORAXIS.
La generación de video es asíncrona: envía una tarea para obtener un task_id, consulta el estado de la tarea y luego lee la URL del video después de completarse.
Para los modelos de video Seedance/Doubao, usa los campos de solicitud de TENSORAXIS prompt, images y metadata. No envíes directamente el cuerpo content[] de nivel superior al estilo Volcengine upstream a /v1/video/generations; TENSORAXIS no encontrará un campo prompt y devolverá 400 prompt is required.
Páginas por Modelo
Esta página cubre el flujo compartido de envío, consulta y sondeo (polling). Para la matriz de capacidades de cada familia de video, los campos de solicitud, ejemplos por capacidad y tablas de parámetros, consulta las páginas dedicadas:
- Generación de Video SeeDance — Volcengine Ark Doubao Seedance (texto/imagen a video, primer/último fotograma, referencia/continuación de video)
- Generación de Video HappyHorse — Alibaba Cloud Bailian DashScope (texto/imagen/referencia a video, edición de video)
Puntos de conexión
| Método | Ruta | Propósito | Uso Recomendado |
|---|---|---|---|
POST | /v1/video/generations | Enviar una tarea de generación de video | Entrada común de TENSORAXIS para tareas de video Seedance/Doubao |
GET | /v1/video/generations/{task_id} | Consultar una tarea de generación de video | Se usa junto con el endpoint de envío anterior |
POST | /v1/videos | Envío de tarea al estilo OpenAI/Sora | Clientes compatibles con Sora/OpenAI |
GET | /v1/videos/{task_id} | Consulta de tarea al estilo OpenAI/Sora | Clientes compatibles con Sora/OpenAI |
GET | /v1/videos/{task_id}/content | Descarga de contenido de video mediante proxy | Obtener el contenido de video completado |
Para nuevas integraciones de Seedance/Doubao, se recomienda usar /v1/video/generations.
Cuerpo de la Solicitud
POST /v1/video/generations
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
model | string | Sí | Nombre del modelo a llamar |
prompt | string | Sí | Prompt del video; los valores vacíos devuelven 400 prompt is required |
image | string | No | URL de una única imagen de referencia; el servidor la normaliza en images |
images | string[] | No | URLs de imágenes de referencia para imagen a video |
metadata | object | No | Parámetros específicos del modelo o proveedor; los parámetros avanzados de Seedance/Doubao van aquí |
seconds | string | No | Campo de compatibilidad; un entero positivo se asigna al campo duration upstream para Doubao/Seedance |
duration | integer | No | Campo común de tarea; para Seedance/Doubao, se recomienda usar metadata.duration |
size | string | No | Campo de tamaño usado por algunos modelos de video |
mode | string | No | Campo de modo usado por algunos modelos de video |
input_reference | string | No | Referencia de entrada usada por algunos flujos compatibles con OpenAI/Sora; no se usa en los ejemplos de Seedance/Doubao |
Ejemplos Correctos e Incorrectos
Incorrecto: enviar directamente el cuerpo content[] de nivel superior upstream a TENSORAXIS.
{
"model": "doubao-seedance-2-0-260128",
"content": [
{
"type": "text",
"text": "An old man wearing a hat smiles and walks forward"
}
]
}Correcto: usa los campos de solicitud de TENSORAXIS y deja que el relay los traduzca.
{
"model": "doubao-seedance-2-0-260128",
"prompt": "An old man wearing a hat smiles and walks forward",
"images": ["https://example.com/reference.jpg"],
"metadata": {
"resolution": "1080p",
"ratio": "16:9",
"duration": 5,
"camera_fixed": true,
"watermark": false
}
}Enviar una Tarea
curl https://api.tensoraxis.ai/v1/video/generations \
-H "Authorization: Bearer $TENSORAXIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedance-2-0-260128",
"prompt": "An old man wearing a hat smiles and walks forward",
"images": ["https://example.com/reference.jpg"],
"metadata": {
"resolution": "1080p",
"ratio": "16:9",
"duration": 5,
"camera_fixed": true,
"watermark": false
}
}'Una respuesta de envío exitosa devuelve un ID de tarea público. Los campos pueden variar ligeramente según el canal de video, pero normalmente incluyen:
{
"id": "task_xxxxx",
"task_id": "task_xxxxx",
"object": "video",
"model": "doubao-seedance-2-0-260128",
"status": "queued",
"progress": 0,
"created_at": 1760000000
}Guarda id o task_id para el sondeo.
Consultar una Tarea
Si envías a través del endpoint común de tareas de video, consulta con:
curl https://api.tensoraxis.ai/v1/video/generations/task_xxxxx \
-H "Authorization: Bearer $TENSORAXIS_API_KEY"La respuesta común de consulta usa la forma envolvente de tarea:
{
"code": "success",
"message": "",
"data": {
"task_id": "task_xxxxx",
"status": "SUCCESS",
"progress": "100%",
"result_url": "https://example.com/video.mp4",
"fail_reason": ""
}
}Significados comunes de los estados:
| Estado | Significado |
|---|---|
SUBMITTED / QUEUED | Enviado o en cola |
IN_PROGRESS | Generando |
SUCCESS | Completado; lee result_url |
FAILURE | Fallido; lee fail_reason |
La ruta de consulta al estilo OpenAI/Sora es:
curl https://api.tensoraxis.ai/v1/videos/task_xxxxx \
-H "Authorization: Bearer $TENSORAXIS_API_KEY"Esa ruta devuelve una respuesta object: "video" y, en caso de éxito, expone la URL del video como url, video_url y metadata.url.
Metadatos de Seedance/Doubao
Para los canales Doubao/Seedance, TENSORAXIS convierte prompt, images y metadata en la forma de tarea de generación de contenido de Volcengine:
| Campo de Solicitud TENSORAXIS | Reenviado Upstream Como |
|---|---|
prompt | content[].text |
images[] | content[].image_url.url |
seconds | duration |
metadata.resolution | resolution |
metadata.ratio | ratio |
metadata.duration | duration |
metadata.frames | frames |
metadata.seed | seed |
metadata.camera_fixed | camera_fixed |
metadata.watermark | watermark |
metadata.generate_audio | generate_audio |
metadata.draft | draft |
metadata.service_tier | service_tier |
metadata.return_last_frame | return_last_frame |
metadata.execution_expires_after | execution_expires_after |
metadata.callback_url | callback_url |
metadata.tools | tools |
Notas:
metadata.modelse elimina y no puede sobrescribir el modelo facturado.- Los campos de
metadataque no se corresponden con la estructura del adaptador actual normalmente no se reenvían upstream. metadata.contentes un campo avanzado de compatibilidad interna y puede sobrescribir la lista de contenido generada a partir deimages; las integraciones públicas no deben usarlo.- Los valores válidos, las enumeraciones y el comportamiento real upstream están definidos por la documentación oficial de Volcengine para el modelo seleccionado. Esta página solo documenta cómo el relay actual de TENSORAXIS recibe y reenvía los campos.
Recomendaciones de Sondeo
- Espera de 2 a 5 segundos antes de la primera consulta después del envío.
- Consulta cada 5-10 segundos mientras la tarea se está generando.
- No uses sondeo de alta frecuencia como reemplazo de los callbacks; encola lotes grandes en tu aplicación.
- Si recibes
429, reduce la concurrencia y reintenta con retroceso exponencial.
Rerank
Reordena los documentos candidatos según la relevancia con la consulta.
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.