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

# Alibaba: HappyHorse 1.1

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

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

Alibaba HappyHorse 1.1 génère de courtes vidéos avec son à partir d’un brief textuel, d’une image d’ouverture ou d’un maximum de neuf images de référence. Ses profils officiels mettent l’accent sur l’amélioration du mouvement, des détails de la peau et de la cohérence des personnages entre les séquences. La sortie est un fichier MP4 de 3 à 15 secondes à 24 images/s, avec des options 480p, 720p ou 1080p.

- [**Ailoot Ultra · Vidéo** `POST /v1/videos` `alibaba/happyhorse-1.1`](https://ailoot.ai/models/fr-ca/alibaba-happyhorse-1-1/#method-0)

À propos du modèle

Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.

Alibaba HappyHorse 1.1 est une édition de génération vidéo dotée de profils nommés séparément pour le texte en vidéo, l’image en vidéo à partir d’une première image et les références en vidéo. Le fabricant met l’accent sur l’amélioration des détails visuels, du mouvement, de l’identité des personnages entre les séquences, de la stabilité du texte et de la synchronisation audiovisuelle. Le résultat est une courte vidéo avec son, utile pour un plan de produit, une animation de portrait ou une petite scène de personnages. Choisissez le mode d’entrée selon ce qui doit définir la scène : un concept écrit, une image d’ouverture précise ou plusieurs références visuelles.

Pour le texte en vidéo, décrivez le sujet, le lieu, l’action, le cadrage, le mouvement de caméra et l’intention sonore. Pour une courte scène d’action, montrez un cycliste qui s’arrête près d’un café au bord d’une rivière tandis que la caméra s’approche doucement du vélo stationné. Gardez l’action adaptée à une courte séquence et décrivez le moment final. Le guide texte actuel du fabricant permet jusqu’à 5 000 caractères non chinois ou 2 500 caractères chinois et tronque le texte excédentaire. Organisez le brief pour que son sujet et son action essentiels soient explicites plutôt qu’enfouis dans des adjectifs répétés.

La génération d’image en vidéo à partir d’une première image utilise exactement une image comme ouverture. Préparez le sujet, la composition et le recadrage souhaité dans cette image fixe, puis décrivez ce qui doit bouger ou comment la caméra doit changer. Les formats d’image documentés sont JPEG/JPG, PNG et WEBP, jusqu’à 20 Mo, avec deux dimensions d’au moins 300 pixels et un ratio entre 1:2,5 et 2,5:1. La sortie se rapproche du palier de résolution choisi tout en conservant les proportions de l’image source. Un résultat en portrait commence donc par une composition en portrait appropriée plutôt que par une instruction de ratio sans rapport.

La génération par références accepte d’une à neuf images. Le prompt utilise \[Image 1\], \[Image 2\] et les positions suivantes pour les identifier dans l’ordre d’entrée. Précisez le rôle de chaque référence et nommez l’objet ou la personne concernés, afin qu’une image de décor ne soit pas confondue avec une source de personnage. Le guide de référence accepte les fichiers JPEG/JPG, PNG ou WEBP jusqu’à 20 Mo, exige que le côté le plus court mesure au moins 400 pixels et recommande des références claires en 720p ou plus. Évitez une référence fortement compressée dont les détails d’identification sont déjà absents.

Pour une scène comportant plusieurs références, placez la personne d’une image dans la pièce d’une autre tout en conservant un manteau ou un produit fourni par une troisième. Décrivez l’interaction et la caméra dans le même brief. Le profil de référence 1.1 souligne la stabilité des sujets, du style de scène et du mouvement cinématographique; inspectez le résultat réel pour vérifier l’identité voulue, les marques du produit et le placement spatial. Plusieurs images donnent plus d’information au brief, mais la vérification doit tout de même contrôler quelles caractéristiques ont été transférées dans la vidéo.

Le fabricant indique des sorties 480p, 720p et 1080p pour les modes de génération 1.1, avec une durée en secondes entières de trois à quinze et du MP4 à 24 images/s. La réponse de l’API décrit un encodage H.264. La génération à partir de texte et de références propose notamment les formats 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 et 21:9; la génération à partir d’une première image suit l’image d’entrée. Choisissez le format pour la destination et prévoyez de la place pour des sous-titres ou des éléments de mise en page ajoutés plus tard. Inspectez le cadrage réel de la vidéo renvoyée à la taille d’affichage prévue.

La sortie de cette famille de modèles comprend le son. Donnez un rôle clair à l’interprétation ou à l’atmosphère dans le brief, et vérifiez tout dialogue, effet ou piste de fond avec l’image. Gardez le contenu parlé assez court pour laisser place à l’action et aux pauses, au lieu de comprimer un long texte dans un seul plan court. Vérifiez le mouvement des lèvres, l’attribution des voix et les paroles exactes lorsqu’il y a de la parole. L’acceptation d’une langue de prompt ne définit pas en soi une prononciation garantie ni une entrée distincte de référence vocale.

Le processus documenté du fabricant est asynchrone : un identifiant de tâche suit le traitement, et un résultat réussi fournit l’emplacement de la vidéo. Le lien du résultat et les requêtes de tâche sont documentés avec une validité de vingt-quatre heures. Conservez la séquence terminée, les références et le prompt comme dossier de révision. Les guides documentent aussi les contrôles de seed et de filigrane. Un seed fixe peut aider à comparer les résultats, mais le fabricant précise expressément qu’il ne garantit pas des résultats identiques : jugez donc le résultat renvoyé plutôt que de supposer qu’un réglage corrige chaque image.

HappyHorse 1.0 et 1.1 sont des éditions distinctes. Le tableau de sortie 1.1 ajoute le 480p aux options 720p et 1080p de la version 1.0, et les pages des modèles 1.1 décrivent des améliorations des détails, du mouvement et de la cohérence. Le profil de montage vidéo HappyHorse 1.0, nommé séparément, a ses propres entrées et limites et ne doit pas être attribué silencieusement à la version 1.1 comme mode de montage. Vérifiez la séquence 1.1 complète pour l’identité, le mouvement, le cadrage, le texte et le son, puis formulez une correction précise tout en conservant les parties réussies du brief.

**Ailoot Ultra · Vidéo** `POST /v1/videos` `alibaba/happyhorse-1.1`

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

Alibaba /`alibaba/happyhorse-1.1`

### Pour commencer

Alibaba HappyHorse 1.1 génère de courtes vidéos avec son à partir d’un brief textuel, d’une image d’ouverture ou d’un maximum de neuf images de référence. Ses profils officiels mettent l’accent sur l’amélioration du mouvement, des détails de la peau et de la cohérence des personnages entre les séquences. La sortie est un fichier MP4 de 3 à 15 secondes à 24 images/s, avec des options 480p, 720p ou 1080p.

Entrées acceptées

Texte

Résultats

Vidéo

### Disponible dans Ailoot · entrées et méthodes

**Ailoot Ultra · Vidéo** `POST /v1/videos`

Entrée

`text`

Sortie

`video`

Format de sortie

mp4

Nombre de sorties

Jusqu’à 4 sorties

| Champ | Type | Exigence | Valeurs et limites | Par défaut |
| --- | --- | --- | --- | --- |
| Champ`model` | Type`string` | ExigenceObligatoire | Valeurs et limites alibaba/happyhorse-1.1 | Par défaut— |
| Champ`prompt` | Type`string` | ExigenceObligatoire | Valeurs et limites Longueur minimale: 1 Nombre maximal d’octets: 10 000 Unité: octets UTF8 | Par défaut— |
| Champ`duration` | Type`integer` | ExigenceObligatoire | Valeurs et limites Minimum: 3 Maximum: 15 Unité: secondes | Par défaut— |
| Champ`resolution` | Type`string` | ExigenceObligatoire | Valeurs et limites 720p | Par défaut— |
| Champ`aspect_ratio` | Type`string` | ExigenceObligatoire | Valeurs et limites 16:9 | Par défaut— |

Combinaisons d’éléments d’entrée

**Texte vers vidéo** · Obligatoire : prompt

Paramètres et cycle de vie de la méthode

| Paramètre | Contrat |
| --- | --- |
| Paramètre`content_type` | Contratapplication/json |
| Paramètre`required` | Contratmodel, prompt, duration, resolution, aspect\_ratio |
| Paramètre`other_options` | Contratfalse |
| Paramètre`resolution` | Contrat720p |
| Paramètre`prompt_max_bytes` | Contrat10000 |
| Paramètre`duration_integer_range` | Contrat3, 15 |
| Paramètre`aspect_ratio` | Contrat16:9 |
| Paramètre`generate_audio` | Contratdoit être omis (et non false); AAC inclus |
| Paramètre`material_types` | Contrattext |
| Paramètre`additional_properties` | Contratfalse |

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

Cycle de vie : `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`

Créez une seule fois et enregistrez l’identifiant retourné.

Interrogez l’état d’origine; conservez chaque ressource terminée et sa durée.

### Tarifs

##### Calcul du coût final

Les tarifs affichés servent à estimer le coût avant la génération. Le montant final est calculé à partir du coût enregistré pour la génération d’origine. La durée mesurée du résultat et les quantités prévisionnelles ne constituent pas la quantité finale facturable.

Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.

Mode rapide

Non précisé Lorsque le mode rapide est sélectionné

Mode Flex

Non précisé Lorsque le mode flex est sélectionné

Effort de raisonnement maximal

Non précisé Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)

#### Tarifs estimés à des fins de comparaison

#### Prix par configuration

Associez chaque coût aux conditions indiquées. Utilisez un seul tarif pour chaque ensemble de configurations alternatives.

| Configuration | Barème tarifaire | Quantité prévisionnelle | Unité de facturation | Conditions de facturation | Coût |
| --- | --- | --- | --- | --- | --- |
| ConfigurationTarifs de base des jetons | Barème tarifaireTarif de base | Quantité prévisionnelle— | Unité de facturation— | Conditions de facturation— | Coût Entrée · Jetons en entrée · Estimation à des fins de comparaison uniquement **—** / 1K jetons Sortie · Jetons en sortie · Estimation à des fins de comparaison uniquement **—** / 1K jetons Entrée · Lecture du cache · Estimation à des fins de comparaison uniquement **—** / 1K jetons Entrée · Écriture dans le cache · Estimation à des fins de comparaison uniquement **—** / 1K jetons Entrée · Écriture dans le cache, 1 h · Estimation à des fins de comparaison uniquement **—** / 1K jetons |
| ConfigurationTarif vidéo | Barème tarifaire— | Quantité prévisionnelle— | Unité de facturationpar seconde de vidéo | Conditions de facturationresolution: 1080p | Coût Sortie · Tarif vidéo · Estimation à des fins de comparaison uniquement **$0.2556** par seconde de vidéo |
| ConfigurationTarif vidéo | Barème tarifaire— | Quantité prévisionnelle— | Unité de facturationpar seconde de vidéo | Conditions de facturationresolution: 720p | Coût Sortie · Tarif vidéo · Estimation à des fins de comparaison uniquement **$0.1976** par seconde de vidéo |
| ConfigurationCoût de génération estimé | Barème tarifaire— | Quantité prévisionnelleestimation pour une génération | Unité de facturation— | Conditions de facturation— | Coût Sortie · Coût estimé de génération · Estimation à des fins de comparaison uniquement **$0.5928** estimation avant génération Cette estimation ne constitue ni des frais supplémentaires ni un tarif fixe pour la génération terminée. |

Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. [Fonctionnement de la réservation et du débit →](https://ailoot.ai/docs/fr-ca/billing/reserve/)

#### Détails du tarif de référence

Les barèmes de référence du modèle ne modifient ni la sélection de méthode, ni les devis, ni les coûts. Les frais actifs utilisent les tarifs de la méthode Ailoot sélectionnée.

Références tarifaires des configurations vidéo

#### Prix par configuration

Associez chaque coût aux conditions indiquées. Utilisez un seul tarif pour chaque ensemble de configurations alternatives.

| Configuration | Conditions de facturation | Coût |
| --- | --- | --- |
| ConfigurationTarif vidéo | Conditions de facturationresolution: 720p | Coût Sortie · Tarif vidéo **$0.1976** par seconde de vidéo Tarif publié de référence pour la configuration affichée. Les frais définitifs correspondent à la configuration réellement facturée. |
| ConfigurationTarif vidéo | Conditions de facturationresolution: 1080p | Coût Sortie · Tarif vidéo **$0.2556** par seconde de vidéo Tarif publié de référence pour la configuration affichée. Les frais définitifs correspondent à la configuration réellement facturée. |

### Exemples de requêtes

#### Ailoot Ultra · Vidéo

curl · création conservée à l’identique

```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
```

### Recevoir et enregistrer les résultats

#### Ailoot Ultra · Vidéo

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`

##### Vérifier l’état de la tâche

GET état de l’opération d’origine

```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
```

Autres lectures de contenu

Enregistrer chaque sortie terminée dont vous êtes propriétaire

```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
```

##### Conserver tous les résultats terminés

Enregistrez chaque vidéo terminée ou fichier renvoyé ; récupérez chaque URL de ressource effectivement renvoyée.

Le tableau data\[\] terminé contient toutes les URL de contenu signées appartenant à votre compte. Récupérez chaque URL retournée ou utilisez le point de terminaison de contenu en définissant index à un indice de sortie réel. Une tâche d’origine en échec peut retourner charge\_pending\_check; vérifiez cette tâche d’origine au lieu de la créer de nouveau.

##### Si la réponse d’origine doit être vérifiée

Consultez la tâche d’origine existante; ne soumettez jamais de nouveau un envoi dont l’état est inconnu.

Nombre maximal de sorties : 4.

Champs de la réponse

| Champ | Type | Signification |
| --- | --- | --- |
| Champ`id` | Typestring | Signification— |
| Champ`object` | Typestring | Signification— |
| Champ`model` | Typestring | Signification— |
| Champ`status` | Typestring | Signification— |
| Champ`data[]` | Typesigned content URL | Signification— |
| Champ`charge_pending_check` | Typeboolean | Signification— |
| Champ`error.code` | Typestring | Signification— |
| Champ`error.message` | Typestring | Signification— |
| Champ`operation_id` | Typestring | SignificationRéponse HTTP503 result\_pending\_check de l’état ou du contenu d’origine : le même identifiant public d’opération vidéo d’origine dans id. |
| Champ`error.type` | Typestring | Significationserver\_error sur HTTP503 result\_pending\_check. |

Erreurs et étapes suivantes

| Réponse | Condition | Étape suivante |
| --- | --- | --- |
| Réponse400 · `invalid_request_error` | ConditionLa lecture du corps brut de la demande échoue avant l’analyse du profil vidéo | Étape suivanteConservez la réponse retournée et corrigez le corps de demande illisible. |
| Réponse422 · `price_unavailable` | ConditionL’analyse du profil vidéo exact échoue ou le profil complet analysé ne possède aucune fiche tarifaire exacte prête à l’emploi | Étape suivanteConservez la réponse; utilisez le profil complet exact autorisé et sa fiche publiée. Cette branche s’exécute avant tout envoi au fournisseur. |
| Réponse409 · `video_not_ready` | ConditionLe contenu du résultat d’origine n’est pas encore disponible | Étape suivanteInterrogez l’identifiant d’origine retourné et respectez Retry-After. |
| Réponse`server_error` | ConditionLa réponse renvoyée indique que l’opération ou le résultat nécessite une vérification | Étape suivanteConservez l’identifiant d’opération/de tâche initialement renvoyé, les en-têtes de la requête et la réponse ; poursuivez les lectures prises en charge de cette opération d’origine. Ne soumettez pas à nouveau la requête de création. |
| Réponse503 · `result_pending_check` | ConditionGET de l’état ou du contenu d’origine : la tâche n’est pas publiée, la tâche d’origine n’est ni failed, ni cancelled, ni expired, et l’état local est unknown ou l’état de la tâche d’origine est completed. | Étape suivanteConservez les valeurs id et operation\_id d’origine (le même identifiant vidéo public), la réponse et les en-têtes; consultez seulement l’état ou le contenu d’origine. Ne soumettez jamais une nouvelle demande de génération. |

### Alias

#### Alias du modèle

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

#### Alias des chemins de méthode

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

#### ID d’appel associés

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

FAQ · Alibaba: HappyHorse 1.1

Quelles entrées et quels résultats sont disponibles ?

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

Quels champs la requête utilise-t-elle ?

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

Quelles limites s’appliquent ?

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

Connectez Ailoot à Claude Code, OpenCode, Hermes ou à votre application.

## L’entreprise et son portefeuille de projets

L’entreprise et son portefeuille de projets : des millions de clients ; des ventes qui se chiffrent en milliards chaque mois.

## Achetez des tokens à prix réduit.

Une remise d’abonnement pour le travail régulier. Des codes promo jusqu’à 50% sur l’achat de tokens.

Abonnement

Choisissez une offre à tarif réduit pour vos requêtes régulières.

Code promo jusqu’à 50%

Saisissez le code à l’achat. Le prix est recalculé selon la promotion en cours.

Dépenses dans l’historique

Modèle, tokens et montant sont enregistrés pour chaque requête.

[Choisir un abonnement](https://ailoot.ai/docs/fr-ca/billing/subscriptions/) · [Voir les prix des modèles](https://ailoot.ai/models/fr-ca/)

## Connectez l’API au produit que vous vendez.

SaaS, applications et bots selon l’offre officielle et le contrat de licence Ailoot. Pour la revente, demandez une licence revendeur.

Application commerciale

Intégrez la génération de texte, d’images, de vidéo et de son aux fonctions payantes de votre service.

Licence revendeur

Envoyez la description du projet et le mode d’accès. Demandez des conditions écrites d’utilisation et de revente.

Documents sur le site

L’offre officielle, le contrat de licence et la politique de traitement des données sont accessibles avant connexion.

[Demander une licence revendeur](mailto:support@ailoot.ai) · [Offre officielle et contrat de licence](https://ailoot.ai/legal/offer?lang=fr-ca)

## Ailoot · L’entreprise et son portefeuille de projets





Ailoot s’appuie sur une expérience opérationnelle éprouvée, une large clientèle, un service stable et un suivi continu des KPI.





L’entreprise et son portefeuille de projets : des millions de clients ; des ventes qui se chiffrent en milliards chaque mois.





Ailoot met cette expérience opérationnelle au service de l’accès API aux fonctions d’IA dans les produits des clients, leurs agents, applications et automatisations.
