Alibaba: HappyHorse 1.1
Alibaba HappyHorse 1.1 erzeugt kurze Videos mit Ton aus einem Textbriefing, einem Startbild oder bis zu neun Referenzbildern. Seine Herstellerprofile betonen verbesserte Bewegung, Hautdetails und Figurenkonsistenz zwischen Clips. Die Ausgabe ist ein 3–15 Sekunden langes MP4-Video mit 24 fps und Optionen für 480p, 720p oder 1080p.
Über das Modell
Diese Beschreibung erläutert die Fähigkeiten des Modells. Die über Ailoot verfügbaren Eingaben, Ausgaben und Optionen sind unten für die ausgewählte Methode aufgeführt.
Alibaba HappyHorse 1.1 ist eine Videogenerierungsausgabe mit separat benannten Profilen für Text-to-Video, Image-to-Video mit Startbild und Reference-to-Video. Der Hersteller betont verbesserte Bilddetails, Bewegung, Figurenidentität über mehrere Clips hinweg, Textstabilität und audiovisuelle Synchronisierung. Das Ergebnis ist ein kurzes Video mit Ton, geeignet für eine Produktaufnahme, eine Porträtanimation oder eine kleine Figurenszene. Wählen Sie den Eingabemodus danach, was die Szene bestimmen soll: ein geschriebenes Konzept, ein genaues Eröffnungsbild oder mehrere visuelle Referenzen.
Beschreiben Sie für Text-to-Video Motiv, Ort, Handlung, Bildausschnitt, Kamerabewegung und beabsichtigten Ton. Eine kurze Handlungsszene könnte eine radfahrende Person zeigen, die neben einem Café am Fluss anhält, während die Kamera sanft auf das abgestellte Fahrrad zufährt. Halten Sie die Handlung für einen kurzen Clip geeignet und beschreiben Sie den letzten Moment. Der aktuelle Textleitfaden des Herstellers erlaubt bis zu 5.000 nicht chinesische oder 2.500 chinesische Zeichen und schneidet überschüssigen Text ab. Ordnen Sie das Briefing so, dass wesentliches Motiv und Handlung ausdrücklich genannt werden, statt unter wiederholten Adjektiven zu verschwinden.
Image-to-Video mit Startbild verwendet genau ein Bild als Anfang. Bereiten Sie Motiv, Komposition und gewünschten Zuschnitt in dieser Aufnahme vor und beschreiben Sie anschließend, was sich bewegen oder wie sich die Kamera verändern soll. Die dokumentierten Bildformate sind JPEG/JPG, PNG und WEBP mit bis zu 20 MB, beiden Abmessungen von mindestens 300 Pixeln und einem Seitenverhältnis zwischen 1:2,5 und 2,5:1. Die Ausgabe nähert sich der gewählten Auflösungsstufe an und erhält dabei das Seitenverhältnis des Quellbilds. Ein Hochformatergebnis beginnt deshalb mit einer geeigneten Hochformatkomposition statt einer davon unabhängigen Seitenverhältnisanweisung.
Reference-to-Video akzeptiert ein bis neun Bilder. Der Prompt verwendet [Image 1], [Image 2] und die folgenden Positionen, um sie in der Eingabereihenfolge zu benennen. Geben Sie die Rolle jeder Referenz an und benennen Sie das relevante Objekt oder die Person, damit ein Szenenbild nicht für eine Figurenquelle gehalten wird. Der Referenzleitfaden akzeptiert JPEG/JPG, PNG oder WEBP mit bis zu 20 MB, verlangt eine kurze Seite von mindestens 400 Pixeln und empfiehlt klare Referenzen mit 720p oder höher. Vermeiden Sie stark komprimierte Referenzen, deren kennzeichnende Details bereits fehlen.
Platzieren Sie bei einer Szene mit mehreren Referenzen die Person aus einem Bild in dem Raum eines anderen und bewahren Sie dabei einen Mantel oder ein Produkt aus einem dritten. Beschreiben Sie Interaktion und Kamera im selben Briefing. Das Referenzprofil 1.1 hebt die Stabilität von Motiven, Szenenstil und filmischer Bewegung hervor. Prüfen Sie das tatsächliche Ergebnis auf gewünschte Identität, Produktkennzeichnungen und räumliche Platzierung. Mehrere Bilder liefern dem Briefing zusätzliche Informationen; die Prüfung muss dennoch kontrollieren, welche Eigenschaften ins Video übernommen wurden.
Der Hersteller nennt 480p, 720p und 1080p für die Generierungsmodi von 1.1, eine ganzzahlige Dauer von drei bis fünfzehn Sekunden und MP4 mit 24 fps. Die API-Antwort beschreibt H.264-Kodierung. Text- und Referenzgenerierung bieten Formate wie 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 und 21:9; Startbildgenerierung folgt dem Eingabebild. Wählen Sie das Format für den Zielort und lassen Sie Platz für spätere Untertitel oder Layoutelemente. Prüfen Sie den tatsächlichen Bildausschnitt des zurückgegebenen Videos in der vorgesehenen Darstellungsgröße.
Die Ausgabe der Modellfamilie enthält Ton. Geben Sie Darbietung oder Atmosphäre im Briefing eine klare Rolle und prüfen Sie Dialog, Effekte oder Hintergrundspur zusammen mit dem Bild. Halten Sie gesprochenes Material kurz genug für Handlung und Pausen, statt ein langes Skript in eine kurze Einstellung zu drängen. Prüfen Sie bei Sprache Lippenbewegung, Sprecherzuordnung und tatsächlichen Wortlaut. Die Akzeptanz einer Promptsprache definiert für sich weder eine garantierte Aussprache noch einen separaten Stimmreferenzeingang.
Der dokumentierte Herstellerablauf ist asynchron: Eine Auftragskennung verfolgt die Verarbeitung und ein erfolgreiches Ergebnis liefert die Videoadresse. Für Ergebnislink und Auftragsabfragen ist eine Gültigkeit von vierundzwanzig Stunden dokumentiert. Bewahren Sie fertigen Clip, Referenzen und Prompt als Überarbeitungsnachweis auf. Die Leitfäden dokumentieren außerdem Seed- und Wasserzeichensteuerungen. Ein fester Seed kann Vergleiche erleichtern, garantiert nach ausdrücklicher Aussage des Herstellers aber keine identischen Ergebnisse. Beurteilen Sie deshalb das zurückgegebene Artefakt, statt anzunehmen, dass eine Einstellung jedes Bild festlegt.
HappyHorse 1.0 und 1.1 sind separate Ausgaben. Die Ausgabetabelle von 1.1 ergänzt 480p zu den 720p- und 1080p-Optionen von 1.0, und die Modellseiten von 1.1 beschreiben Verbesserungen bei Details, Bewegung und Konsistenz. Das separat benannte Video-Edit-Profil HappyHorse 1.0 hat eigene Eingaben und Grenzen und darf nicht stillschweigend als Bearbeitungsmodus von 1.1 behandelt werden. Prüfen Sie den gesamten Clip von 1.1 auf Identität, Bewegung, Bildausschnitt, Text und Ton und nehmen Sie anschließend eine konkrete Korrektur vor, während Sie die erfolgreichen Teile des Briefings erhalten.
Ailoot Ultra · Video POST /v1/videos alibaba/happyhorse-1.1
alibaba/happyhorse-1.1Start
Alibaba HappyHorse 1.1 erzeugt kurze Videos mit Ton aus einem Textbriefing, einem Startbild oder bis zu neun Referenzbildern. Seine Herstellerprofile betonen verbesserte Bewegung, Hautdetails und Figurenkonsistenz zwischen Clips. Die Ausgabe ist ein 3–15 Sekunden langes MP4-Video mit 24 fps und Optionen für 480p, 720p oder 1080p.
- Zulässige Eingaben
- Text
- Ergebnisse
- Video
In Ailoot verfügbar · Eingaben und Methoden
Ailoot Ultra · Video POST /v1/videos
- Eingabetypen
text- Ausgabetypen
video- Ausgabeformat
- mp4
- Ausgabeanzahl
- Bis zu 4 Ausgabes
| Feld | Typ | Anforderung | Werte und Limits | Standard |
|---|---|---|---|---|
Feldmodel | Typstring | AnforderungErforderlich | Werte und Limits alibaba/happyhorse-1.1 | Standard— |
Feldprompt | Typstring | AnforderungErforderlich | Werte und Limits Mindestlänge: 1 Maximale Anzahl Bytes: 10.000 Einheit: UTF8-Bytes | Standard— |
Feldduration | Typinteger | AnforderungErforderlich | Werte und Limits Minimum: 3 Maximum: 15 Einheit: Sekunden | Standard— |
Feldresolution | Typstring | AnforderungErforderlich | Werte und Limits 720p | Standard— |
Feldaspect_ratio | Typstring | AnforderungErforderlich | Werte und Limits 16:9 | Standard— |
Kombinationen von Eingabematerialien
Text zu Video · Erforderlich: prompt
Methodenparameter und Lebenszyklus
| Parameter | Vertrag |
|---|---|
Parametercontent_type | Vertragapplication/json |
Parameterrequired | Vertragmodel, prompt, duration, resolution, aspect_ratio |
Parameterother_options | Vertragfalse |
Parameterresolution | Vertrag720p |
Parameterprompt_max_bytes | Vertrag10000 |
Parameterduration_integer_range | Vertrag3, 15 |
Parameteraspect_ratio | Vertrag16:9 |
Parametergenerate_audio | VertragMuss weggelassen werden (nicht false); AAC enthalten |
Parametermaterial_types | Vertragtext |
Parameteradditional_properties | Vertragfalse |
Methodenaliasnamen: /v1/videos/generations, /videos, /videos/generations
Lebenszyklus: 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
Erstellen Sie den Auftrag einmal und speichern Sie die zurückgegebene ID.
Fragen Sie den ursprünglichen Status regelmäßig ab; bewahren Sie jedes fertiggestellte Asset und seine Dauer auf.
Tarife
So wird die endgültige Gebühr berechnet
Die angezeigten Tarife dienen zur Kostenschätzung vor der Generierung. Der endgültige Betrag wird aus den für die ursprüngliche Generierung erfassten Kosten berechnet. Die gemessene Ausgabedauer und prognostizierte Mengen sind nicht die endgültige abrechenbare Menge.
Tarifangaben erweitern die Anfrageoptionen nicht. Unterstützte Parameter stehen bei der ausgewählten Methode.
- Schnellmodus
- Nicht angegeben Wenn der Schnellmodus ausgewählt ist
- Flex-Modus
- Nicht angegeben Wenn der Modus flex ausgewählt ist
- Maximaler Denkaufwand
- Nicht angegeben Wenn beim maximalen Denkaufwand die Standardanpassung (default) verwendet wird
Geschätzte Tarife zum Vergleich
Preise nach Konfiguration
Ordnen Sie jede Gebühr den angezeigten Bedingungen zu. Verwenden Sie für jede Gruppe alternativer Konfigurationen einen Tarif.
| Konfiguration | Tarifstaffel | Prognostizierte Menge | Abrechnungseinheit | Abrechnungsbedingungen | Gebühr |
|---|---|---|---|---|---|
| KonfigurationBasistarife für Token | TarifstaffelGrundtarif | Prognostizierte Menge— | Abrechnungseinheit— | Abrechnungsbedingungen— | Gebühr Eingabe · Eingabetoken · Schätzung nur zum Vergleich — / 1K Token Ausgabe · Ausgabetoken · Schätzung nur zum Vergleich — / 1K Token Eingabe · Cache-Lesen · Schätzung nur zum Vergleich — / 1K Token Eingabe · Cache-Schreiben · Schätzung nur zum Vergleich — / 1K Token Eingabe · Cache-Schreiben, 1 Stunde · Schätzung nur zum Vergleich — / 1K Token |
| KonfigurationVideopreis | Tarifstaffel— | Prognostizierte Menge— | Abrechnungseinheitpro Videosekunde | Abrechnungsbedingungenresolution: 1080p | Gebühr Ausgabe · Videopreis · Schätzung nur zum Vergleich $0.2556 pro Videosekunde |
| KonfigurationVideopreis | Tarifstaffel— | Prognostizierte Menge— | Abrechnungseinheitpro Videosekunde | Abrechnungsbedingungenresolution: 720p | Gebühr Ausgabe · Videopreis · Schätzung nur zum Vergleich $0.1976 pro Videosekunde |
| KonfigurationGeschätzte Generierungskosten | Tarifstaffel— | Prognostizierte MengeSchätzung für eine Generierung | Abrechnungseinheit— | Abrechnungsbedingungen— | Gebühr Ausgabe · Geschätzte Generierungskosten · Schätzung nur zum Vergleich $0.5928 Schätzung vor der Generierung Diese Schätzung ist weder eine zusätzliche Gebühr noch ein fester Tarif für die abgeschlossene Generierung. |
Ailoot reserviert vor einer Anfrage einen geschätzten Betrag. Nach dem Ergebnis rechnet Ailoot die endgültige Gebühr anhand des gemessenen Verbrauchs ab. Bei Streaming erfolgt die Abrechnung anhand des abschließenden Verbrauchsdatensatzes. So funktionieren Reservierung und Abrechnung →
Details zum Referenztarif
Referenztarifstaffeln auf Modellebene ändern weder Methodenauswahl noch Kostenvoranschläge oder Gebühren. Für die aktive Abrechnung gelten die Tarife der ausgewählten Ailoot-Methode.
Preisreferenzen für Videokonfigurationen
Preise nach Konfiguration
Ordnen Sie jede Gebühr den angezeigten Bedingungen zu. Verwenden Sie für jede Gruppe alternativer Konfigurationen einen Tarif.
| Konfiguration | Abrechnungsbedingungen | Gebühr |
|---|---|---|
| KonfigurationVideopreis | Abrechnungsbedingungenresolution: 720p | Gebühr Ausgabe · Videopreis $0.1976 pro Videosekunde Veröffentlichte Preisreferenz für die angezeigte Konfiguration. Die endgültige Abrechnung folgt der tatsächlich abgerechneten Konfiguration. |
| KonfigurationVideopreis | Abrechnungsbedingungenresolution: 1080p | Gebühr Ausgabe · Videopreis $0.2556 pro Videosekunde Veröffentlichte Preisreferenz für die angezeigte Konfiguration. Die endgültige Abrechnung folgt der tatsächlich abgerechneten Konfiguration. |
Beispielanfragen
Ailoot Ultra · Video
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
Ergebnisse abrufen und speichern
Ailoot Ultra · Video
mp4
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Auftragsstatus prüfen
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
Abrufe anderer Inhalte
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
Alle fertiggestellten Ergebnisse aufbewahren
Speichern Sie jedes fertiggestellte Video oder jede zurückgegebene Datei; rufen Sie jede tatsächlich zurückgegebene Datei-URL ab.
Nach Abschluss enthält data[] alle signierten Inhalts-URLs der Ihnen zugeordneten Assets. Rufen Sie jede zurückgegebene URL ab oder verwenden Sie den Inhaltsendpunkt, wobei index auf einen tatsächlichen Ausgabeindex gesetzt ist. Ein fehlgeschlagener ursprünglicher Auftrag kann charge_pending_check zurückgeben; prüfen Sie diesen ursprünglichen Auftrag, statt ihn erneut zu erstellen.
Wenn die ursprüngliche Antwort geprüft werden muss
Lesen Sie den vorhandenen ursprünglichen Auftrag aus; wiederholen Sie eine Übermittlung mit unklarem Ausgang niemals.
Maximale Anzahl der Ausgaben: 4.
Antwortfelder
| Feld | Typ | Bedeutung |
|---|---|---|
Feldid | Typstring | Bedeutung— |
Feldobject | Typstring | Bedeutung— |
Feldmodel | Typstring | Bedeutung— |
Feldstatus | Typstring | Bedeutung— |
Felddata[] | Typsigned content URL | Bedeutung— |
Feldcharge_pending_check | Typboolean | Bedeutung— |
Felderror.code | Typstring | Bedeutung— |
Felderror.message | Typstring | Bedeutung— |
Feldoperation_id | Typstring | BedeutungHTTP503 result_pending_check in der ursprünglichen Status-/Inhaltsantwort: dieselbe ursprüngliche öffentliche Video-ID als id. |
Felderror.type | Typstring | Bedeutungserver_error bei HTTP503 result_pending_check. |
Fehler und nächste Schritte
| Antwort | Bedingung | Nächster Schritt |
|---|---|---|
Antwort400 · invalid_request_error | BedingungDas Lesen des rohen Anfrageinhalts schlägt vor dem Parsen des Videoprofils fehl | Nächster SchrittBewahren Sie die zurückgegebene Antwort auf und korrigieren Sie den nicht lesbaren Anfrageinhalt. |
Antwort422 · price_unavailable | BedingungDas exakte Videoprofil lässt sich nicht parsen, oder für das vollständig geparste Profil steht keine exakt passende Preiskarte bereit | Nächster SchrittBewahren Sie die Antwort auf; verwenden Sie das vollständige, exakt zugelassene Profil und seine veröffentlichte Preiskarte. Dieser Zweig wird vor der Übermittlung an den Anbieter ausgeführt. |
Antwort409 · video_not_ready | BedingungUrsprünglicher Ergebnisinhalt noch nicht verfügbar | Nächster SchrittFragen Sie die ursprünglich zurückgegebene ID regelmäßig ab und beachten Sie Retry-After. |
Antwortserver_error | BedingungDie zurückgegebene Antwort gibt an, dass der Vorgang oder das Ergebnis eine Prüfung erfordert | Nächster SchrittDie ursprünglich zurückgegebene Vorgangs-/Aufgaben-ID, die Anfrageheader und die Antwort aufbewahren; mit unterstützten Leseaufrufen für diesen ursprünglichen Vorgang fortfahren. Die Erstellungsanfrage nicht erneut senden. |
Antwort503 · result_pending_check | BedingungGET des ursprünglichen Status/Inhalts: Die Aufgabe ist nicht veröffentlicht, der ursprüngliche Auftrag ist weder failed noch cancelled noch expired, und der lokale Zustand ist unknown oder der Status des ursprünglichen Auftrags ist completed. | Nächster SchrittBewahren Sie die ursprünglichen Werte id und operation_id (dieselbe öffentliche Video-ID), Antwort und Header auf; lesen Sie ausschließlich den ursprünglichen Status/Inhalt aus. Senden Sie niemals eine neue Generierungsanfrage. |
Aliasnamen
Modellaliasnamen
Ailoot Ultra alibaba/happyhorse-1.1
Aliasnamen für Methodenpfade
/v1/videos/generations, /videos, /videos/generations
Zugehörige Aufrufer-IDs
FAQ · Alibaba: HappyHorse 1.1
- Welche Eingaben und Ergebnisse sind verfügbar?
POST /v1/videos·alibaba/happyhorse-1.1:text→video- Welche Felder verwendet die Anfrage?
POST /v1/videos·alibaba/happyhorse-1.1:model,prompt,duration,resolution,aspect_ratio- Welche Grenzen gelten?
POST /v1/videos·alibaba/happyhorse-1.1:duration.minimum:3;duration.maximum:15