Source: https://ailoot.ai/models/es/alibaba-happyhorse-1-1/
Canonical: https://ailoot.ai/models/es/alibaba-happyhorse-1-1/
Language: es

# Alibaba: HappyHorse 1.1

[Markdown](https://ailoot.ai/models/es/alibaba-happyhorse-1-1/index.md) · [JSON](https://ailoot.ai/models/es/alibaba-happyhorse-1-1/facts.json)

## [Alibaba: HappyHorse 1.1](https://ailoot.ai/models/es/alibaba-happyhorse-1-1/)

Alibaba HappyHorse 1.1 genera vídeos cortos con sonido a partir de un encargo de texto, una imagen de primer fotograma o hasta nueve imágenes de referencia. Sus perfiles del fabricante destacan mejoras en movimiento, detalle de piel y coherencia de personajes entre clips. La salida es MP4 de 3–15 segundos a 24 fps, con opciones de 480p, 720p o 1080p.

- [**Ailoot Ultra · Vídeo** `POST /v1/videos` `alibaba/happyhorse-1.1`](https://ailoot.ai/models/es/alibaba-happyhorse-1-1/#method-0)

Sobre el modelo

Esta descripción cubre las capacidades del modelo. Las entradas, salidas y opciones disponibles en Ailoot se indican a continuación para el método seleccionado.

Alibaba HappyHorse 1.1 es una edición de generación de vídeo con perfiles independientes de texto a vídeo, imagen a vídeo con primer fotograma y referencia a vídeo. El fabricante destaca mejoras de detalle visual, movimiento, identidad de personajes entre clips, estabilidad del texto y sincronización audiovisual. El resultado es un vídeo corto con sonido, útil para un plano de producto, una animación de retrato o una pequeña escena de personajes. Seleccione el modo de entrada según lo que deba definir la escena: un concepto escrito, una imagen inicial exacta o varias referencias visuales.

Para texto a vídeo, describa el sujeto, la localización, la acción, el encuadre, el movimiento de cámara y la intención sonora. Para una escena breve de acción, muestre a un ciclista que se detiene junto a una cafetería a orillas de un río mientras la cámara se acerca suavemente a la bicicleta aparcada. Mantenga la acción adecuada para un clip corto y describa el momento final. La guía actual de texto del fabricante permite hasta 5000 caracteres no chinos o 2500 caracteres chinos y trunca el texto excedente. Organice el encargo de modo que el sujeto y la acción esenciales sean explícitos, en lugar de quedar enterrados en adjetivos repetidos.

Imagen a vídeo con primer fotograma utiliza exactamente una imagen como apertura. Prepare el sujeto, la composición y el recorte previstos en esa imagen fija y después describa qué debe moverse o cómo debe cambiar la cámara. Los formatos documentados de imagen son JPEG/JPG, PNG y WEBP, hasta 20 MB, con ambas dimensiones de al menos 300 píxeles y relación de aspecto entre 1:2.5 y 2.5:1. La salida aproxima el nivel de resolución seleccionado y conserva las proporciones de la imagen de origen. Por tanto, un resultado vertical comienza con una composición vertical adecuada, en lugar de una instrucción de relación de aspecto sin conexión.

Referencia a vídeo acepta de una a nueve imágenes. La instrucción utiliza \[Image 1\], \[Image 2\] y las posiciones posteriores para identificarlas en orden de entrada. Indique la función de cada referencia y nombre el objeto o la persona pertinente, para que una imagen de escena no se confunda con una fuente de personaje. La guía de referencias acepta JPEG/JPG, PNG o WEBP de hasta 20 MB, exige que el lado más corto tenga al menos 400 píxeles y recomienda referencias claras de 720p o superiores. Evite una referencia muy comprimida cuyo detalle identificativo ya falte.

Para una escena con varias referencias, coloque a la persona de una imagen en la habitación de otra y conserve un abrigo o producto proporcionado por una tercera. Describa la interacción y la cámara en el mismo encargo. El perfil de referencias 1.1 destaca la estabilidad de sujetos, estilo de escena y movimiento cinematográfico; examine el resultado real para comprobar la identidad prevista, las marcas de producto y la posición espacial. Varias imágenes aportan más información al encargo, pero la revisión sigue necesitando comprobar qué rasgos se han trasladado al vídeo.

El fabricante enumera salidas de 480p, 720p y 1080p para los modos de generación 1.1, con duración en segundos enteros de tres a quince y MP4 a 24 fps. La respuesta de API describe codificación H.264. La generación de texto y referencias ofrece formas como 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 y 21:9; la generación con primer fotograma sigue la imagen de entrada. Elija la forma según el destino y deje espacio para subtítulos o elementos de diseño posteriores. Examine el encuadre real del vídeo devuelto al tamaño previsto de visualización.

La salida de la familia de modelos incluye sonido. Asigne una función clara a la interpretación o la atmósfera en el encargo y revise con la imagen cualquier diálogo, efecto o pista de fondo. Mantenga el material hablado lo bastante corto para la acción y las pausas, en lugar de comprimir un guion largo en un plano breve. Compruebe el movimiento labial, la atribución del hablante y la redacción real cuando haya voz. La aceptación de un idioma de instrucciones no define por sí sola una pronunciación garantizada ni una entrada independiente de referencia de voz.

El flujo documentado del fabricante es asíncrono: un identificador de tarea permite seguir el procesamiento y un resultado satisfactorio proporciona la ubicación del vídeo. El enlace de resultado y las consultas de tarea se documentan con un periodo de validez de veinticuatro horas. Conserve el clip completado, las referencias y la instrucción como registro de revisión. Las guías también documentan controles de semilla y marca de agua. Una semilla fija puede facilitar la comparación, pero el fabricante indica expresamente que no garantiza resultados idénticos, por lo que debe juzgar el recurso devuelto, en lugar de asumir que un ajuste fija todos los fotogramas.

HappyHorse 1.0 y 1.1 son ediciones independientes. La tabla de salida 1.1 añade 480p a las opciones de 720p y 1080p de 1.0, y las páginas del modelo 1.1 describen mejoras de detalle, movimiento y coherencia. El perfil independiente de edición de vídeo HappyHorse 1.0 tiene sus propias entradas y límites y no es un modo de edición que deba asignarse silenciosamente a 1.1. Revise todo el clip 1.1 para comprobar identidad, movimiento, encuadre, texto y sonido y después realice una corrección específica conservando las partes satisfactorias del encargo.

**Ailoot Ultra · Vídeo** `POST /v1/videos` `alibaba/happyhorse-1.1`

[`alibaba/happyhorse-1.1`](https://ailoot.ai/models/es/#m=alibaba%2Fhappyhorse-1.1&route=Ultra&caller=alibaba%2Fhappyhorse-1.1&fmt=videos)

Alibaba /`alibaba/happyhorse-1.1`

### Primeros pasos

Alibaba HappyHorse 1.1 genera vídeos cortos con sonido a partir de un encargo de texto, una imagen de primer fotograma o hasta nueve imágenes de referencia. Sus perfiles del fabricante destacan mejoras en movimiento, detalle de piel y coherencia de personajes entre clips. La salida es MP4 de 3–15 segundos a 24 fps, con opciones de 480p, 720p o 1080p.

Entradas aceptadas

Texto

Resultados

Vídeo

### Disponible en Ailoot · entradas y métodos

**Ailoot Ultra · Vídeo** `POST /v1/videos`

Tipos de entrada

`text`

Tipos de salida

`video`

Formato de salida

mp4

Número de salidas

Hasta 4 salidas

| Campo | Tipo | Requisito | Valores y límites | Predeterminado |
| --- | --- | --- | --- | --- |
| Campo`model` | Tipo`string` | RequisitoObligatorio | Valores y límites alibaba/happyhorse-1.1 | Predeterminado— |
| Campo`prompt` | Tipo`string` | RequisitoObligatorio | Valores y límites Longitud mínima: 1 Máximo de bytes: 10.000 Unidad: bytes UTF8 | Predeterminado— |
| Campo`duration` | Tipo`integer` | RequisitoObligatorio | Valores y límites Mínimo: 3 Máximo: 15 Unidad: segundos | Predeterminado— |
| Campo`resolution` | Tipo`string` | RequisitoObligatorio | Valores y límites 720p | Predeterminado— |
| Campo`aspect_ratio` | Tipo`string` | RequisitoObligatorio | Valores y límites 16:9 | Predeterminado— |

Combinaciones de materiales de entrada

**Texto a vídeo** · Obligatorio: prompt

Parámetros del método y ciclo de vida

| Parámetro | Contrato |
| --- | --- |
| Parámetro`content_type` | Contratoapplication/json |
| Parámetro`required` | Contratomodel, prompt, duration, resolution, aspect\_ratio |
| Parámetro`other_options` | Contratofalse |
| Parámetro`resolution` | Contrato720p |
| Parámetro`prompt_max_bytes` | Contrato10000 |
| Parámetro`duration_integer_range` | Contrato3, 15 |
| Parámetro`aspect_ratio` | Contrato16:9 |
| Parámetro`generate_audio` | Contratodebe omitirse (no enviarse como false); AAC incluido |
| Parámetro`material_types` | Contratotext |
| Parámetro`additional_properties` | Contratofalse |

Alias de método: `/v1/videos/generations`, `/videos`, `/videos/generations`

Ciclo de vida: `submit_once_poll_original`

`GET /v1/videos/{request_id}`

`GET /v1/videos/generations/{request_id}`

`GET /v1/videos/{request_id}/content`

`GET /v1/videos/generations/{request_id}/content`

Crea una sola vez y guarda el ID devuelto.

Consulta periódicamente el estado original; conserva todos los recursos completados y sus duraciones.

### Planes

##### Cómo se calcula el cargo definitivo

Las tarifas mostradas estiman el coste antes de la generación. El cargo final se calcula a partir del coste registrado para la generación original. La duración medida del resultado y las cantidades previstas no constituyen la cantidad facturable final.

Las referencias tarifarias no añaden opciones a la solicitud. Los parámetros admitidos se indican en el método seleccionado.

Modo rápido

Sin especificar Cuando se selecciona el modo rápido

Modo flex

Sin especificar Cuando se selecciona el modo flex

Esfuerzo máximo de razonamiento

Sin especificar Cuando el esfuerzo máximo de razonamiento utiliza el ajuste predeterminado (default)

#### Tarifas estimadas para comparar

#### Precios por configuración

Relaciona cada cargo con las condiciones mostradas. Usa una tarifa para cada conjunto de configuraciones alternativas.

| Configuración | Tabla de tarifas | Cantidad prevista | Unidad de facturación | Condiciones de facturación | Cargo |
| --- | --- | --- | --- | --- | --- |
| ConfiguraciónTarifas base por token | Tabla de tarifasTarifa base | Cantidad prevista— | Unidad de facturación— | Condiciones de facturación— | Cargo Entrada · Tokens de entrada · Estimación solo para comparar **—** / 1K tokens Salida · Tokens de salida · Estimación solo para comparar **—** / 1K tokens Entrada · Lectura de caché · Estimación solo para comparar **—** / 1K tokens Entrada · Escritura en caché · Estimación solo para comparar **—** / 1K tokens Entrada · Escritura en caché, 1 hora · Estimación solo para comparar **—** / 1K tokens |
| ConfiguraciónPrecio del vídeo | Tabla de tarifas— | Cantidad prevista— | Unidad de facturaciónpor segundo de vídeo | Condiciones de facturaciónresolution: 1080p | Cargo Salida · Precio del vídeo · Estimación solo para comparar **$0.2556** por segundo de vídeo |
| ConfiguraciónPrecio del vídeo | Tabla de tarifas— | Cantidad prevista— | Unidad de facturaciónpor segundo de vídeo | Condiciones de facturaciónresolution: 720p | Cargo Salida · Precio del vídeo · Estimación solo para comparar **$0.1976** por segundo de vídeo |
| ConfiguraciónCoste estimado de generación | Tabla de tarifas— | Cantidad previstaestimación para una generación | Unidad de facturación— | Condiciones de facturación— | Cargo Salida · Coste estimado de generación · Estimación solo para comparar **$0.5928** estimación previa a la generación Esta estimación no es un cargo adicional ni una tarifa fija para la generación completada. |

Ailoot reserva un importe estimado antes de la solicitud. Tras obtener el resultado, liquida el cargo definitivo según el uso medido. En las respuestas en flujo, la liquidación usa el registro de uso final. [Cómo funcionan la reserva y la liquidación →](https://ailoot.ai/docs/es/billing/reserve/)

#### Detalles de la tarifa de referencia

Las tablas de referencia del modelo no cambian la selección del método, las estimaciones de coste ni los cargos. Los cargos aplicados usan las tarifas del método Ailoot seleccionado.

Referencias de precios de configuraciones de vídeo

#### Precios por configuración

Relaciona cada cargo con las condiciones mostradas. Usa una tarifa para cada conjunto de configuraciones alternativas.

| Configuración | Condiciones de facturación | Cargo |
| --- | --- | --- |
| ConfiguraciónPrecio del vídeo | Condiciones de facturaciónresolution: 720p | Cargo Salida · Precio del vídeo **$0.1976** por segundo de vídeo Referencia de precios publicada para la configuración mostrada. Los cargos finales se calculan según la configuración realmente facturada. |
| ConfiguraciónPrecio del vídeo | Condiciones de facturaciónresolution: 1080p | Cargo Salida · Precio del vídeo **$0.2556** por segundo de vídeo Referencia de precios publicada para la configuración mostrada. Los cargos finales se calculan según la configuración realmente facturada. |

### Solicitudes de ejemplo

#### Ailoot Ultra · Vídeo

curl · solicitud de creación exacta conservada

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "alibaba/happyhorse-1.1", "prompt": "A cat in a spacesuit walking on the Moon", "duration": 3, "resolution": "720p", "aspect_ratio": "16:9"}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
```

### Recibir y guardar resultados

#### Ailoot Ultra · Vídeo

mp4

- `GET /v1/videos/{request_id}`
- `GET /v1/videos/generations/{request_id}`
- `GET /v1/videos/{request_id}/content`
- `GET /v1/videos/generations/{request_id}/content`

##### Consultar el estado de la tarea

Obtener el estado de la operación original con GET

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_STATUS_URL'
import json
from pathlib import Path
from urllib.parse import quote
r=json.loads(Path('result.json').read_text())
if not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')
Path('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))
PY_STATUS_URL
curl --fail-with-body --silent --show-error "$(cat status-url.txt)" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('status.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
```

Otras consultas de contenido

Guarda todos los resultados completados que te pertenecen

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path('status.json').read_text())
if r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')
if not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')
urls=[]
for i,u in enumerate(r.get('data',[])):
    if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')
    urls.append((str(i),u))
for label,path in urls:
    u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
    if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
    target=Path('owned-'+label+'.bin')
    subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
```

##### Conserva todos los resultados completados

Guarda todos los vídeos completados o archivos recibidos; descarga cada URL de archivo que se haya devuelto.

data\[\] completado contiene todas las URL firmadas de contenido bajo tu titularidad. Recupera cada URL devuelta o utiliza el endpoint de contenido con index establecido en un índice real de salida. Un trabajo original fallido puede devolver charge\_pending\_check; comprueba ese trabajo original en lugar de crearlo de nuevo.

##### Si es necesario revisar la respuesta original

Consulta el trabajo original existente; no vuelvas a enviar nunca un envío de resultado desconocido.

Máximo de salidas: 4.

Campos de respuesta

| Campo | Tipo | Significado |
| --- | --- | --- |
| Campo`id` | Tipostring | Significado— |
| Campo`object` | Tipostring | Significado— |
| Campo`model` | Tipostring | Significado— |
| Campo`status` | Tipostring | Significado— |
| Campo`data[]` | Tiposigned content URL | Significado— |
| Campo`charge_pending_check` | Tipoboolean | Significado— |
| Campo`error.code` | Tipostring | Significado— |
| Campo`error.message` | Tipostring | Significado— |
| Campo`operation_id` | Tipostring | SignificadoRespuesta HTTP503 result\_pending\_check del estado o contenido original: el mismo ID público de vídeo original como id. |
| Campo`error.type` | Tipostring | Significadoserver\_error con HTTP503 result\_pending\_check. |

Errores y siguientes pasos

| Respuesta | Condición | Siguiente paso |
| --- | --- | --- |
| Respuesta400 · `invalid_request_error` | CondiciónNo se puede leer el cuerpo sin procesar de la solicitud antes de analizar el perfil de vídeo | Siguiente pasoConserva la respuesta devuelta y corrige el cuerpo ilegible de la solicitud. |
| Respuesta422 · `price_unavailable` | CondiciónNo se puede analizar el perfil exacto de vídeo, o el perfil completo analizado no tiene una ficha de precios exacta lista para usar | Siguiente pasoConserva la respuesta; utiliza el perfil admitido exacto y completo y su ficha publicada. Esta rama se ejecuta antes del envío al proveedor. |
| Respuesta409 · `video_not_ready` | CondiciónEl contenido del resultado original aún no está disponible | Siguiente pasoConsulta periódicamente el ID original devuelto y respeta Retry-After. |
| Respuesta`server_error` | CondiciónLa respuesta devuelta indica que la operación o el resultado requiere una comprobación | Siguiente pasoConserva el ID original de operación o tarea devuelto, las cabeceras de la solicitud y la respuesta; continúa con las lecturas admitidas de esa operación original. No vuelvas a enviar la solicitud de creación. |
| Respuesta503 · `result_pending_check` | CondiciónGET del estado o contenido original: la tarea no está publicada, el trabajo original no está en failed/cancelled/expired y el estado local es unknown o el estado del trabajo original es completed. | Siguiente pasoConserva el id y el operation\_id originales (el mismo ID público de vídeo), la respuesta y las cabeceras; consulta solo el estado o contenido original. No envíes nunca una nueva solicitud de generación. |

### Alias

#### Alias del modelo

**Ailoot Ultra** [`alibaba/happyhorse-1.1`](https://ailoot.ai/models/es/#m=alibaba%2Fhappyhorse-1.1&route=Ultra&caller=alibaba%2Fhappyhorse-1.1&fmt=videos)

#### Alias de rutas de métodos

`/v1/videos/generations`, `/videos`, `/videos/generations`

#### ID de modelo relacionados

[`alibaba/happyhorse-1.1`](https://ailoot.ai/models/es/#m=alibaba%2Fhappyhorse-1.1&route=Ultra&caller=alibaba%2Fhappyhorse-1.1&fmt=videos)

FAQ · Alibaba: HappyHorse 1.1

¿Qué entradas y resultados están disponibles?

`POST /v1/videos` · `alibaba/happyhorse-1.1`: `text` → `video`

¿Qué campos utiliza la solicitud?

`POST /v1/videos` · `alibaba/happyhorse-1.1`: `model`, `prompt`, `duration`, `resolution`, `aspect_ratio`

¿Qué límites se aplican?

`POST /v1/videos` · `alibaba/happyhorse-1.1`: `duration.minimum`: `3`; `duration.maximum`: `15`

Conecta Ailoot a Claude Code, OpenCode, Hermes o tu aplicación.

## La empresa y su cartera de proyectos

La empresa y su cartera de proyectos: millones de clientes; ventas por miles de millones al mes.

## Compra tokens con descuento.

Ahorro por suscripción para trabajo habitual. Códigos promocionales: hasta el 50% al comprar tokens.

Suscripción

Elige un plan con descuento para tus peticiones habituales.

Código de hasta el 50%

Introduce el código al comprar. El precio se recalcula según la promoción vigente.

Gasto en el historial

Modelo, tokens e importe quedan guardados por cada petición.

[Elegir suscripción](https://ailoot.ai/docs/es/billing/subscriptions/) · [Consultar precios de modelos](https://ailoot.ai/models/es/)

## Conecta la API al producto que vendes.

SaaS, aplicaciones y bots bajo la oferta y el acuerdo de licencia Ailoot. Solicita una licencia de reventa para redistribuir el acceso.

Aplicación comercial

Integra generación de texto, imágenes, vídeo y sonido en funciones de pago de tu servicio.

Licencia para revendedores

Envía descripción del proyecto y esquema de acceso. Solicita condiciones escritas de uso y reventa.

Documentos en la web

La oferta, el acuerdo de licencia y la política de datos están disponibles antes de conectar.

[Solicitar licencia de reventa](mailto:support@ailoot.ai) · [Oferta y acuerdo de licencia](https://ailoot.ai/legal/offer?lang=es)

## Ailoot · La empresa y su cartera de proyectos





Ailoot se apoya en la experiencia operativa acumulada, una amplia base de clientes, un servicio estable y el seguimiento continuo de KPI.





La empresa y su cartera de proyectos: millones de clientes; ventas por miles de millones al mes.





Ailoot aplica esa experiencia operativa al acceso por API a funciones de IA en productos de clientes, agentes, aplicaciones y automatizaciones.
