modeller

Alibaba: HappyHorse 1.0

Markdown · JSON

Alibaba: HappyHorse 1.0

Alibaba HappyHorse 1.0 skapar korta videor med ljud från text, en startbild eller upp till nio referensbilder. Genereringslägena ger MP4-klipp på 3–15 sekunder med 24 bilder per sekund i 720p eller 1080p. En separat namngiven profil för videoredigering i 1.0 bearbetar inskickat material med valfria visuella referenser och egna begränsningar.

Om modellen

Den här beskrivningen omfattar modellens förmågor. Tillgängliga indata, utdata och alternativ i Ailoot anges nedan för den valda metoden.

Alibaba HappyHorse 1.0 är en videoskapande utgåva med namngivna profiler för text-till-video, bild-till-video från en första bildruta och referens-till-video. Tillverkaren beskriver fysiskt övertygande rörelser, semantisk förståelse och synkronisering mellan ljud och bild som dess kreativa fokus. Referensprofilen kan använda upp till nio bilder för att styra motiv och scener. Den användbara leveransen är ett kort klipp med ljud: en ny scen, en animation från en förberedd öppningsbild eller en referensstyrd tagning med en karaktär eller produkt.

För en textbaserad scen anger du motiv, miljö, handling och kamera samt önskat ljud. En bordsscen kan visa en liten modellsegelbåt som rör sig genom en grund vattenbricka medan kameran följer den i bordshöjd. Vid granskningen kan du då kontrollera båtens form, scenens skala, vattnets rörelse och sambandet mellan rörelse och ljud. En fokuserad handling är lättare att bedöma än en tät sekvens där det centrala ögonblicket inte anges tydligt.

För generering från en första bildruta använder du en stillbild vars motiv och komposition redan passar den önskade öppningen. Beskriv den efterföljande rörelsen och kamerans bana. Tillverkarens specifika bildprofil för 1.0 tar emot text och bild, medan genereringsmatrisen anger detta som bild-till-video från en första bildruta. Förbered beskärningen och synliga produkt- eller karaktärsdetaljer innan tagningen genereras. Kontrollera att detaljerna förblir igenkännbara genom rörelsen i stället för att bara bedöma öppningsbilden.

Referens-till-video kombinerar personer, produkter, stil eller miljö från visuella källor i en nybeskriven scen. Den specifika modellsidan för referensläget i 1.0 dokumenterar upp till nio bilder. Tilldela dem roller i instruktionen och beskriv hur motivet ska agera i scenen. I en produktpresentation kan du skilja produktreferensen från den omgivande platsen eller den visuella stilen. Tillverkarens betoning på stabilitet är ett granskningsmål: jämför motivet, märkningarna och placeringen med de faktiska referenserna genom hela klippet.

Familjen 1.0 har också en separat namngiven videoredigeringsprofil för stiländringar och lokala eller mer omfattande bearbetningar av befintligt material. Den profilen tar emot exakt en källvideo och noll till fem referensbilder, i stället för referensgenereringens upplägg med nio bilder. Ange vad som ska ändras och vad som ska bevaras, till exempel att byta ett plagg men behålla personen, rörelsen och bakgrunden. Redigeringsresultatet behöver jämföras med hela källklippet, inte bara en bildruta som visar det avsedda bytet.

Den specifika redigeringsguiden för 1.0 tar emot källmaterial i MP4 eller MOV, rekommenderar H.264 och tillåter en källängd på tre till sextio sekunder. Den anger högst 100 MB, en kortsida på minst 360 pixlar, en långsida på högst 4 096 pixlar, proportioner mellan 1:2,5 och 2,5:1 samt en bildfrekvens på åtta till sextio bilder per sekund. Redigerade utdata är begränsade till tre till femton sekunder: källor på högst femton sekunder behåller sin längd, medan bara de första femton sekunderna används från längre källor. Klipp ut det avsedda avsnittet innan du förbereder redigeringen om en viktig handling inträffar senare i källan.

Redigeringsprofilens valfria referensbilder har en egen gräns på tjugo MB och kräver formatet JPEG/JPG, PNG eller WEBP, med båda dimensionerna på minst 300 pixlar och samma dokumenterade proportionsintervall. Guiden skiljer också mellan automatisk ljudbehandling och att behålla originalljudet. Förbered referensen som identifierar den önskade ändringen och välj hur källans ljud ska förhålla sig till den. Detta är specifika kontroller för redigeringsprofilen i 1.0, separata från lägena för generering av nya scener.

För genereringslägena i 1.0 anger tillverkarens specifika matris 720p eller 1080p, tre till femton sekunder, MP4 med 24 bilder per sekund och ljud. Redigeringsprofilen ger också 720p eller 1080p inom sin gräns på femton sekunder. Det dokumenterade uppgiftsflödet returnerar först ett bearbetnings-ID och efter lyckat resultat videons plats; resultatadresserna gäller i tjugofyra timmar. Spara själva klippet, prompten och referenserna när du förbereder en produktionsredigering, och granska bildutsnitt, längd och ljud tillsammans.

HappyHorse 1.1 lägger till genereringsalternativet 480p och namngivna förbättringar av visuella detaljer, rörelse och konsekvens mellan klipp. Dessa senare påståenden om generering är ingen garanti för den fasta versionen av profilen 1.0. Användbar förberedelse för 1.0 följer det valda läget och dess faktiska källmaterial. Granska identitet, kontakt, objektgeometri, text och ljud, och gör sedan nästa korrigering konkret. För ett redigerat klipp kontrollerar du också att viktiga originaldetaljer utanför den begärda ändringen fortfarande passar den avsedda scenen.

Ailoot Ultra · Video POST /v1/videos alibaba/happyhorse-1.0

alibaba/happyhorse-1.0

Alibaba /alibaba/happyhorse-1.0

Start

Alibaba HappyHorse 1.0 skapar korta videor med ljud från text, en startbild eller upp till nio referensbilder. Genereringslägena ger MP4-klipp på 3–15 sekunder med 24 bilder per sekund i 720p eller 1080p. En separat namngiven profil för videoredigering i 1.0 bearbetar inskickat material med valfria visuella referenser och egna begränsningar.

Godkända indata
Text · Bilder
Resultat
Video

Tillgängligt i Ailoot · indata & metoder

Ailoot Ultra · Video POST /v1/videos
Indatatyper
text, image
Utdatatyper
video
Utdataformat
ursprungliga MP4-byte; ingen normalisering/omkodning
FältTypKravVärden & gränserStandard
FältmodelTypstringKravObligatorisktVärden & gränser
alibaba/happyhorse-1.0
Standard—
FältpromptTypstringKravObligatorisktVärden & gränserStandard—
FältdurationTypintegerKravObligatorisktVärden & gränser
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
Minimum: 1
Maximum: 600
Standard—
FältresolutionTypstringKravValfrittVärden & gränser
720p, 1080p
Standard—
Fältaspect_ratioTypstringKravValfrittVärden & gränser
16:9, 9:16, 1:1, 4:3, 3:4, 21:9, 9:21
Standard—
Fältgenerate_audioTypbooleanKravValfrittVärden & gränser
false
Standard—
Fältframe_imagesTyparrayKravValfrittVärden & gränser
Minsta antal objekt: 1
Maximalt antal objekt: 1
Indatainnehåll: Array med bildruteobjekt. Varje objekt har type=image_url, image_url som innehåller url samt frame_type. Använd en HTTPS URL till en bild och sätt frame_type till first_frame. Varje bildruteroll förekommer högst en gång.
Exakta nycklar: type, image_url, frame_type
Villkor: Dessa nycklar beskriver varje bildruteobjekt; image_url innehåller endast url. Utelämna frame_images för en begäran med enbart text.
Standard—
Fältinput_referencesTyparrayKravValfrittVärden & gränserStandard—
FältsizeTypstringKravValfrittVärden & gränser
1280x720, 720x1280, 720x720, 960x720, 720x960, 1680x720, 720x1680, 1920x1080, 1080x1920, 1080x1080, 1440x1080, 1080x1440, 2520x1080, 1080x2520
Mönster: ^[1-9][0-9]*x[1-9][0-9]*$
Standard—
FältseedTypintegerKravValfrittVärden & gränser
Minimum: −9 223 372 036 854 775 808
Maximum: 9 223 372 036 854 775 807
Standard—
Fältcallback_urlTypstringKravValfrittVärden & gränser
Mönster: ^https://
Standard—
Fältsession_idTypstringKravValfrittVärden & gränserStandard—
FälttraceTypobjectKravValfrittVärden & gränserStandard—
FältuserTypstringKravValfrittVärden & gränserStandard—
Kombinationer av indatamaterial

Text till video · En skriven prompt. · Krävs: model, prompt, duration

Ange prompt som text och längd i hela sekunder. Välj en upplösning som stöds; lägg till ett bildförhållande eller använd en angiven storlek.

model: Typ: string · alibaba/happyhorse-1.0

prompt: Typ: string · Maximalt antal UTF-8-byte: 10 000 · Minst ett tecken som inte är blanksteg krävs: Ja

Bild till video · En skriven prompt och en bild för den första bildrutan. · Krävs: model, prompt, duration, frame_images

frame_images är en array. Varje bildruteobjekt har type, image_url och frame_type; image_url innehåller url. Sätt type till image_url. Använd first_frame. Varje bildruteroll förekommer högst en gång. Ange en offentlig HTTPS URL till en bild för varje bildruta. Välj en upplösning som stöds; lägg till ett bildförhållande eller använd en angiven storlek.

Exakta nycklar: type, image_url, frame_type

model: Typ: string · alibaba/happyhorse-1.0

prompt: Typ: string · Maximalt antal UTF-8-byte: 10 000 · Minst ett tecken som inte är blanksteg krävs: Ja

Reference to video · En skriven prompt och bildreferenser som stöds. · Krävs: model, prompt, duration, input_references

input_references är en array med objekt. Sätt type till image_url och använd motsvarande fält som innehåller url. Använd offentliga HTTPS-länkar. Utelämna frame_images för att välja referensläge. Välj en upplösning som stöds; lägg till ett bildförhållande eller använd en angiven storlek.

model: Typ: string · alibaba/happyhorse-1.0

prompt: Typ: string · Maximalt antal UTF-8-byte: 10 000 · Minst ett tecken som inte är blanksteg krävs: Ja

Metodparametrar och livscykel
ParameterAvtal
Parametercontent_typeAvtalapplication/json
ParameterrequiredAvtalmodel, prompt, duration
Parametermaterial_typesAvtaltext, image
Parameteradditional_propertiesAvtalfalse
Parameteroptional_controlsAvtalresolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user

Livscykel: submit_once_poll_original

GET /v1/videos/{public_id}

GET /v1/videos/{public_id}/content

Priser

Så beräknas slutavgiften

De visade priserna används för att uppskatta kostnaden före genereringen. Den slutliga debiteringen beräknas utifrån den kostnad som registrerats för den ursprungliga genereringen. Uppmätt längd på resultatet och uppskattade mängder utgör inte den slutliga debiterbara mängden.

Tariffuppgifter lägger inte till begäransalternativ. Parametrar som stöds anges för den valda metoden.

Snabbt läge
Ej angivet När snabbt läge är valt
Flex-läge
Ej angivet När läget flex är valt
Högsta resonemangsnivå
Ej angivet När den högsta resonemangsnivån använder standardjusteringen (default)

Uppskattade priser för jämförelse

Priser efter konfiguration

Matcha varje avgift mot de visade villkoren. Använd ett pris för varje uppsättning alternativa konfigurationer.

KonfigurationPrislistaPrognostiserad mängdDebiteringsenhetDebiteringsvillkorAvgift
KonfigurationGrundpriser för tokenPrislistaGrundprisPrognostiserad mängd—Debiteringsenhet—Debiteringsvillkor—Avgift
Indata · Indatatoken · Uppskattning endast för jämförelse — / 1K token
Utdata · Utdatatoken · Uppskattning endast för jämförelse — / 1K token
Indata · Cacheläsning · Uppskattning endast för jämförelse — / 1K token
Indata · Skrivning till cache · Uppskattning endast för jämförelse — / 1K token
Indata · Skrivning till cache, 1 tim · Uppskattning endast för jämförelse — / 1K token
KonfigurationVideoprisPrislista—Prognostiserad mängd—Debiteringsenhetper videosekundDebiteringsvillkorresolution: 1080pAvgift
Utdata · Videopris · Uppskattning endast för jämförelse $0.3388 per videosekund
KonfigurationVideoprisPrislista—Prognostiserad mängd—Debiteringsenhetper videosekundDebiteringsvillkorresolution: 720pAvgift
Utdata · Videopris · Uppskattning endast för jämförelse $0.1976 per videosekund
KonfigurationUppskattad genereringskostnadPrislista—Prognostiserad mängduppskattning för en genereringDebiteringsenhet—Debiteringsvillkor—Avgift
Utdata · Uppskattad genereringskostnad · Uppskattning endast för jämförelse $0.5928 uppskattning före generering

Denna uppskattning är varken en extra avgift eller ett fast pris för den slutförda genereringen.

Ailoot reserverar ett uppskattat belopp före en begäran. Efter resultatet slutregleras avgiften utifrån uppmätt förbrukning. Slutreglering för strömning använder den slutliga förbrukningsposten. Så fungerar reservation och slutreglering →

Detaljer om referenstariffen

Referensprislistor på modellnivå ändrar inte metodval, prisuppgifter eller avgifter. Aktiva avgifter använder priserna för den valda Ailoot-metoden.

Prisreferenser för videokonfigurationer

Priser efter konfiguration

Matcha varje avgift mot de visade villkoren. Använd ett pris för varje uppsättning alternativa konfigurationer.

KonfigurationDebiteringsvillkorAvgift
KonfigurationVideoprisDebiteringsvillkorresolution: 720pAvgift
Utdata · Videopris $0.1976 per videosekund

Publicerad prisreferens för den visade konfigurationen. Den slutliga debiteringen följer den konfiguration som faktiskt debiterades.

KonfigurationVideoprisDebiteringsvillkorresolution: 1080pAvgift
Utdata · Videopris $0.3388 per videosekund

Publicerad prisreferens för den visade konfigurationen. Den slutliga debiteringen följer den konfiguration som faktiskt debiterades.

Exempelbegäranden

Ailoot Ultra · Video

curl · skapa video
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
from pathlib import Path
Path('request.json').write_text('{"aspect_ratio":"16:9","duration":3,"model":"alibaba/happyhorse-1.0","prompt":"A serene mountain landscape at sunset","resolution":"720p"}', encoding='utf-8')
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
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.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

Ta emot och spara resultat

Ailoot Ultra · Video

signerade innehållslänkar som du äger

  • GET /v1/videos/{public_id}
  • GET /v1/videos/{public_id}/content
Kontrollera jobbstatus
GET status för ursprunglig åtgärd
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
Andra innehållsläsningar
Spara alla färdiga utdata som tillhör dig
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
Behåll alla färdiga resultat

Spara varje färdig video eller returnerad fil; hämta varje faktiskt returnerad resurs-URL.

Behåll varje faktiskt resultat som du äger och dess returnerade, uppmätta metadata.

Om det ursprungliga svaret behöver kontrolleras

503 result_pending_check + ursprungligt id + X-Should-Retry:false; upprepa aldrig originalet

Svarsfält
FältTypBetydelse
FältindexTypintegerBetydelseNollbaserad position för denna video i utdatalistan.
Fältcontent_urlTypstringBetydelseSignerad HTTPS URL för hämtning av denna färdiga video.
Fältsha256Typstring | nullBetydelseSHA-256-kontrollsumma för den ursprungliga videons byte; null om den inte är tillgänglig.
Fältsize_bytesTypinteger | nullBetydelseStorleken på den ursprungliga videofilen i byte; null om den inte är tillgänglig.
Fältduration_msTypinteger | nullBetydelseUppmätt videolängd i millisekunder; null om den inte är tillgänglig.
FältwidthTypinteger | nullBetydelseVideobredd i pixlar; null om den inte är tillgänglig.
FältheightTypinteger | nullBetydelseVideohöjd i pixlar; null om den inte är tillgänglig.
Fältvideo_codecTypstring | nullBetydelseIdentifierare för videokodek; null om ingen har registrerats.
Fälthas_audioTypboolean | nullBetydelseOm videon innehåller ett ljudspår; null om detta inte har mätts.
Fältaudio_codecTypstring | nullBetydelseIdentifierare för ljudkodek; null när ingen identifierare har registrerats.
Fel och nästa steg
SvarVillkorNästa steg
Svar404 · not_found_errorVillkorVideoåtkomst är inte tillgänglig eller detta video-ID hittades inte.Nästa stegKontrollera videoåtkomst. För en befintlig video använder du dess ursprungliga offentliga ID och samma API-nyckel.
Svar401 · authentication_errorVillkorAPI-nyckeln motsvarar inte det autentiserade kontot.Nästa stegKontrollera din API-nyckel och kontoåtkomst innan du skickar in.
Svar400 · invalid_request_errorVillkorBegäran kunde inte läsas eller hämtningsindexet är ogiltigt.Nästa stegKorrigera begäranskroppen. Vid hämtning väljer du ett utdataindex som returnerats av den ursprungliga uppgiften.
Svar422 · price_unavailableVillkorDen valda videokonfigurationen kan inte prissättas.Nästa stegVälj en videokonfiguration som stöds och fyll i dess obligatoriska alternativ innan du skickar en korrigerad begäran.
Svar422 · invalid_request_errorVillkorVideoindata eller den ursprungliga fortsättningsuppgiften är ogiltig.Nästa stegAnvänd giltiga HTTPS-indata. För fortsättning använder du det färdiga originalets offentliga video-ID med samma API-nyckel.
Svar402 · billing_errorVillkorDet tillgängliga saldot eller gränserna medger ingen reservation.Nästa stegKontrollera ditt tillgängliga saldo och dina gränser innan du skickar en ny begäran.
Svar503 · server_errorVillkorVideoverifiering, lagring eller tjänsteåtkomst är tillfälligt otillgänglig.Nästa stegVänta tills tjänsten är tillgänglig. Om du redan har ett video-ID kontrollerar du den ursprungliga uppgiften i stället för att skapa en ny generering.
Svar503 · result_pending_checkVillkorDet ursprungliga videoresultatet och debiteringen behöver kontrolleras.Nästa stegBehåll det returnerade video-ID:t och kontrollera den uppgiften. Skicka ingen ersättande genereringsbegäran medan den kontrolleras.
Svar503 · owned_result_unavailableVillkorHämtningen av den befintliga videon är tillfälligt otillgänglig.Nästa stegKontrollera samma videouppgift senare och hämta dess befintliga resultat. En ny generering skapar en separat operation.
Svar409 · video_not_readyVillkorVideoinnehållet har inte publicerats.Nästa stegKontrollera den ursprungliga uppgiftens status. Hämta när den rapporterar completed; om den rapporterar failed följer du dess meddelande om debiteringskontroll.

Alias

Modellalias

Ailoot Ultra alibaba/happyhorse-1.0

Alias för metodsökvägar

Använd metodsökvägarna som visas ovan.

Relaterade anropar-ID:n

alibaba/happyhorse-1.0

FAQ · Alibaba: HappyHorse 1.0
Vilka indata och resultat finns?

POST /v1/videos · alibaba/happyhorse-1.0: text, image → video

Vilka fält använder begäran?

POST /v1/videos · alibaba/happyhorse-1.0: model, prompt, duration, resolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user

Vilka gränser gäller?

POST /v1/videos · alibaba/happyhorse-1.0: duration.minimum: 1; duration.maximum: 600; frame_images.max_items: 1; frame_images.min_items: 1; seed.minimum: -9223372036854775808; seed.maximum: 9223372036854775807

Fler detaljer

Anslut Ailoot till Claude Code, OpenCode, Hermes eller din app.

Företaget och dess projektportfölj

Företaget och dess projektportfölj: miljontals kunder; månatlig försäljning för miljarder.

Köp token med rabatt.

Prenumerationsrabatt för återkommande arbete. Kampanjkoder ger upp till 50% vid tokenköp.

Prenumeration
Välj en rabatterad plan för återkommande anrop.
Kampanjkod upp till 50%
Ange koden vid köpet. Priset räknas om enligt kampanjen.
Kostnader i historiken
Modell, token och belopp sparas för varje anrop.

Välj prenumeration · Se modellpriser

Anslut API till produkten som du säljer.

SaaS, appar och botar enligt Ailoots officiella villkor och licensavtal. Begär återförsäljarlicens för vidareförsäljning.

Kommersiell applikation
Bygg text-, bild-, video- och ljudgenerering i tjänstens betalda funktioner.
Återförsäljarlicens
Skicka projektbeskrivning och åtkomstupplägg. Begär skriftliga villkor för användning och vidareförsäljning.
Dokument på webbplatsen
Officiella villkor, licensavtal och databehandlingspolicy finns tillgängliga före anslutning.

Begär återförsäljarlicens · Officiella villkor och licensavtal