μοντέλα

happyhorse-1.1-t2v

Markdown · JSON

happyhorse-1.1-t2v

Μοντέλο δημιουργίας σύντομου βίντεο με ήχο από περιγραφή κειμένου. Είναι κατάλληλο για σκηνές στις οποίες η κίνηση, η σύνθεση και το οπτικό ύφος καθορίζονται με λέξεις.

Σχετικά με το μοντέλο

Αυτή η περιγραφή καλύπτει τις δυνατότητες του μοντέλου. Οι είσοδοι, έξοδοι και επιλογές που διατίθενται στο Ailoot παρατίθενται παρακάτω για την επιλεγμένη μέθοδο.

Το HappyHorse-1.1-T2V είναι μοντέλο της Alibaba για τη δημιουργία σύντομων σκηνών βίντεο από κείμενο. Η περιγραφή ορίζει τους χαρακτήρες, τις ενέργειες, το περιβάλλον και την οπτική απόδοση· σε αυτή τη λειτουργία δεν απαιτείται αρχική εικόνα. Το μοντέλο δημιουργεί το βίντεο και μπορεί να παράγει τον ήχο που το συνοδεύει.

Ο κατασκευαστής δίνει έμφαση στην κατανόηση του νοήματος της σκηνής, στην κινηματογραφική σκηνοθεσία και στην εκφραστικότητα της κίνησης. Το κείμενο μπορεί να καθορίζει την ατμόσφαιρα, τις ενέργειες του χαρακτήρα, τη συμπεριφορά των αντικειμένων και τη φυσική δυναμική. Έτσι μπορείτε να χτίσετε τη σκηνή γύρω από όσα πρέπει να συμβούν και έπειτα να την κατευθύνετε με τον φωτισμό, τη γωνία λήψης και την κίνηση της κάμερας.

Σκηνοθεσία με λέξεις

Οι οδηγίες είναι υποχρεωτικές και μπορούν να είναι σε οποιαδήποτε γλώσσα. Μπορούν να περιλαμβάνουν έως 5000 μη κινεζικούς ή 2500 κινεζικούς χαρακτήρες· το επιπλέον τμήμα απορρίπτεται. Η δράση, το περιβάλλον και οι σημαντικές οπτικές λεπτομέρειες πρέπει να περιγραφούν μέσα σε αυτό το όριο. Αυτή η προσέγγιση αφήνει στο μοντέλο περιθώριο να δημιουργήσει μια νέα σκηνή, αντί να του ορίζει ένα έτοιμο πρώτο καρέ.

Σε αυτή τη λειτουργία, το κείμενο είναι το κύριο μέσο καθοδήγησης. Μπορείτε να περιγράψετε με λέξεις τη συγκεκριμένη εμφάνιση ενός χαρακτήρα ή αντικειμένου· η δυνατότητα να δοθεί η εμφάνισή του με ξεχωριστές εικόνες ανήκει σε άλλη λειτουργία της οικογένειας. Το αποτέλεσμα εξαρτάται από όλες τις οδηγίες, οπότε η ίδια αρχική τιμή τυχαιότητας βοηθά να προκύψουν παρόμοιες παραλλαγές, αλλά δεν εγγυάται ακριβή επανάληψη.

Βίντεο και ηχητική συνοδεία

Στο HappyHorse-1.1 η διάρκεια του βίντεο επιλέγεται ως ακέραιος αριθμός από 3 έως 15 δευτερόλεπτα. Υποστηρίζονται αναλύσεις 480P, 720P και 1080P. Το τελικό αρχείο είναι σε μορφή MP4 με ρυθμό 24 καρέ ανά δευτερόλεπτο. Το μοντέλο μπορεί να δημιουργεί ήχο μαζί με το βίντεο, συνδέοντας την ηχητική συνοδεία με όσα συμβαίνουν στη σκηνή.

Μπορείτε να ορίσετε εκ των προτέρων το σχήμα του καρέ. Διατίθενται 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 και 21:9 — από ευρύ κινηματογραφικό καρέ έως επιμήκες κατακόρυφο βίντεο. Η ανάλυση, η μορφή και η διάρκεια καθορίζουν το μέγεθος του αποτελέσματος· το περιεχόμενο και η κίνηση καθορίζονται από το κείμενο.

Αυτή η παραλλαγή προορίζεται για τη δημιουργία νέας σκηνής από μια ιδέα διατυπωμένη με λέξεις. Είναι κατάλληλη για ένα σύντομο επεισόδιο, μια οπτική ιδέα ή ένα βίντεο ατμόσφαιρας, όπου η σκηνοθεσία πρέπει να περιγραφεί με κείμενο.

Ailoot · Βίντεο POST /v1/videos/generations happyhorse-1.1-t2v

happyhorse-1.1-t2v

Alibaba /happyhorse-1.1-t2v
ID μοντέλου
  • happyhorse-1.1-t2v
  • happyhorse-t2v
  • happyhorse-t2v-latest

Εισαγωγή

Μοντέλο δημιουργίας σύντομου βίντεο με ήχο από περιγραφή κειμένου. Είναι κατάλληλο για σκηνές στις οποίες η κίνηση, η σύνθεση και το οπτικό ύφος καθορίζονται με λέξεις.

Αποδεκτές είσοδοι
Κείμενο
Αποτελέσματα
Βίντεο

Διαθέσιμα στο Ailoot · είσοδοι και μέθοδοι

Ailoot · Βίντεο POST /v1/videos/generations
Είσοδος
text
Έξοδος
video
Μορφή εξόδου
mp4
ΠεδίοΤύποςΑπαίτησηΤιμές και όριαΠροεπιλογή
ΠεδίοmodelΤύποςstringΑπαίτησηΥποχρεωτικόΤιμές και όρια
happyhorse-1.1-t2v
Προεπιλογή—
ΠεδίοpromptΤύποςstringΑπαίτησηΥποχρεωτικόΤιμές και όρια
Ελάχιστο μήκος: 1
Προεπιλογή—
ΠεδίοdurationΤύποςintegerΑπαίτησηΠροαιρετικόΤιμές και όρια
Ελάχιστο: 3
Μέγιστο: 15
Μονάδα: δευτερόλεπτα
Προεπιλογή5
ΠεδίοresolutionΤύποςstringΑπαίτησηΠροαιρετικόΤιμές και όρια
480P, 720P, 1080P
Προεπιλογή720P
ΠεδίοratioΤύποςstringΑπαίτησηΠροαιρετικόΤιμές και όρια
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Προεπιλογή16:9
Πεδίοimage_urlsΤύποςhttps_url|data_image_url[]ΑπαίτησηΠροαιρετικόΤιμές και όρια
Ελάχιστο πλήθος στοιχείων: 0
Μέγιστο πλήθος στοιχείων: 0
Μέγιστο πλήθος αποκωδικοποιημένων byte: 20.971.520
Τύποι MIME: image/jpeg, image/png, image/webp
Προεπιλογή—
Συνδυασμοί υλικών εισόδου

Κείμενο σε βίντεο · Υποχρεωτικό: prompt

Παράμετροι και κύκλος ζωής μεθόδου
ΠαράμετροςΣύμβαση
Παράμετροςcontent_typeΣύμβασηapplication/json
ΠαράμετροςrequiredΣύμβασηmodel, prompt
Παράμετροςmaterial_typesΣύμβασηtext
ΠαράμετροςoptionalΣύμβασηduration, resolution, ratio
Παράμετροςduration_integer_rangeΣύμβαση3, 15
Παράμετροςdefault_durationΣύμβαση5
ΠαράμετροςresolutionΣύμβαση480P, 720P, 1080P
Παράμετροςdefault_resolutionΣύμβαση720P
ΠαράμετροςratioΣύμβαση16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Παράμετροςratio_must_omitΣύμβασηfalse
Παράμετροςimage_urlsΣύμβαση{"max_count":0}

Κύκλος ζωής: 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

Οι δομές και τα ID των μεθόδων είναι ακριβή· η δυνατότητα του προμηθευτή είναι ξεχωριστή από την αποδοχή αιτημάτων.

Τιμολόγηση

Χρεώσεις μεθόδων Ailoot

Ailoot ΒίντεοPOST /v1/videos/generations
Έξοδος
0,18 $ ανά δευτερόλεπτο στα 1080p
Έξοδος
0,07 $ ανά δευτερόλεπτο στα 480p
Έξοδος
0,14 $ ανά δευτερόλεπτο στα 720p

Το Ailoot δεσμεύει ένα εκτιμώμενο ποσό πριν από το αίτημα. Μετά το αποτέλεσμα, εκκαθαρίζει την τελική χρέωση βάσει της μετρημένης χρήσης. Η εκκαθάριση ροής χρησιμοποιεί την τελική καταγραφή χρήσης. Πώς λειτουργούν η δέσμευση και η εκκαθάριση →

Παραδείγματα αιτημάτων

Ailoot · Βίντεο

Παράδειγμα σκηνής
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_PROMPT_FILE:?Set your actual UTF-8 scene brief}"
export AILOOT_PROMPT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-1.1-t2v", "prompt": "", "duration": 5, "resolution": "720P", "ratio": "16:9"}')
f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 brief")
p['prompt']=f.read_text(encoding="utf-8")
if not p['prompt'].strip():raise SystemExit("Brief must contain text")
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/generations \
  -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
print(json.dumps(json.loads(Path("result.json").read_text()),ensure_ascii=False,indent=2))
PY_RESULT

Λήψη και αποθήκευση αποτελεσμάτων

Ailoot · Βίντεο

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
Έλεγχος κατάστασης εργασίας
Λήψη κατάστασης με GET
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o status.json
python3 - <<'PY_STATUS'
import json
from pathlib import Path
r=json.loads(Path("status.json").read_text())
print(json.dumps(r))
if r.get("status")=="completed":
    for x in r.get("data",[]):print(x)
PY_STATUS
Αποθηκεύστε όλα τα ολοκληρωμένα αρχεία
Λήψη όλων των ολοκληρωμένων αρχείων με GET
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
    if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
    u=urljoin("https://api.ailoot.ai",x)
    z=urlsplit(u)
    if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
    urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" \
    -H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
  index=$((index + 1))
done < asset-urls.txt
Άλλες ανακτήσεις περιεχομένου
Λήψη περιεχομένου με GET
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video.mp4
Διατηρήστε όλα τα ολοκληρωμένα αποτελέσματα

Αποθηκεύστε κάθε ολοκληρωμένο βίντεο ή αρχείο που επιστρέφεται· ανακτήστε κάθε πραγματικό URL αρχείου που επιστρέφεται.

Διατηρήστε κάθε στοιχείο δεδομένων και δείκτη εξόδου που επιστρέφεται. Το content_url αφορά μόνο το πρώτο· ανακτήστε κάθε πραγματική διαδρομή περιεχομένου ή αρχείο πολυμέσων. Το GET περιεχομένου χωρίς index δεν αντιστοιχεί σε όλες τις εξόδους.

Αν χρειάζεται έλεγχος της αρχικής απάντησης

Διαβάστε την υπάρχουσα αρχική εργασία· μην επανυποβάλετε ποτέ αποστολή με άγνωστο αποτέλεσμα.

Πεδία απάντησης
ΠεδίοΤύπος
ΠεδίοidΤύποςstring
ΠεδίοobjectΤύποςstring
ΠεδίοmodelΤύποςstring
ΠεδίοstatusΤύποςstring
Πεδίοcontent_urlΤύποςsigned URL
Πεδίοdata[]Τύποςsigned URL
ΠεδίοusageΤύποςobject
Πεδίοresult_pending_checkΤύποςboolean
Σφάλματα και επόμενα βήματα
ΑπάντησηΣυνθήκηΕπόμενο βήμα
Απάντηση400 · invalid_request_errorΣυνθήκηΜη έγκυρα υποχρεωτικά πεδία, μη έγκυρη αναπαράσταση υλικού ή μη έγκυρη τιμή παραμέτρουΕπόμενο βήμαΔιορθώστε τα υποδεικνυόμενα πεδία πριν από νέο αίτημα δημιουργίας.
Απάντηση409 · video_not_readyΣυνθήκηΤο περιεχόμενο του αρχικού αποτελέσματος δεν είναι ακόμη διαθέσιμοΕπόμενο βήμαΕλέγχετε περιοδικά το αρχικό ID που επιστρέφεται και τηρείτε το Retry-After.
Απάντησηserver_errorΣυνθήκηΗ απόκριση που επιστράφηκε αναφέρει ότι η λειτουργία ή το αποτέλεσμα χρειάζεται έλεγχοΕπόμενο βήμαΔιατηρήστε το αρχικό ID της λειτουργίας/εργασίας που επιστράφηκε, τις κεφαλίδες του αιτήματος και την απόκριση· συνεχίστε με τις υποστηριζόμενες αναγνώσεις αυτής της αρχικής λειτουργίας. Μην υποβάλετε ξανά το αίτημα δημιουργίας.

Εναλλακτικά ονόματα

Εναλλακτικά ονόματα μοντέλου

Ailoot happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest

Εναλλακτικές διαδρομές μεθόδων

Χρησιμοποιήστε τις διαδρομές μεθόδων που εμφανίζονται παραπάνω.

Σχετικά ID μοντέλων

happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest

Ailoot · Βίντεο POST /v1/videos/generations happyhorse-t2v

happyhorse-t2v

Alibaba /happyhorse-t2v
ID μοντέλου
  • happyhorse-1.1-t2v
  • happyhorse-t2v
  • happyhorse-t2v-latest

Εισαγωγή

Μοντέλο δημιουργίας σύντομου βίντεο με ήχο από περιγραφή κειμένου. Είναι κατάλληλο για σκηνές στις οποίες η κίνηση, η σύνθεση και το οπτικό ύφος καθορίζονται με λέξεις.

Αποδεκτές είσοδοι
Κείμενο
Αποτελέσματα
Βίντεο

Διαθέσιμα στο Ailoot · είσοδοι και μέθοδοι

Ailoot · Βίντεο POST /v1/videos/generations
Είσοδος
text
Έξοδος
video
Μορφή εξόδου
mp4
ΠεδίοΤύποςΑπαίτησηΤιμές και όριαΠροεπιλογή
ΠεδίοmodelΤύποςstringΑπαίτησηΥποχρεωτικόΤιμές και όρια
happyhorse-t2v
Προεπιλογή—
ΠεδίοpromptΤύποςstringΑπαίτησηΥποχρεωτικόΤιμές και όρια
Ελάχιστο μήκος: 1
Προεπιλογή—
ΠεδίοdurationΤύποςintegerΑπαίτησηΠροαιρετικόΤιμές και όρια
Ελάχιστο: 3
Μέγιστο: 15
Μονάδα: δευτερόλεπτα
Προεπιλογή5
ΠεδίοresolutionΤύποςstringΑπαίτησηΠροαιρετικόΤιμές και όρια
480P, 720P, 1080P
Προεπιλογή720P
ΠεδίοratioΤύποςstringΑπαίτησηΠροαιρετικόΤιμές και όρια
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Προεπιλογή16:9
Πεδίοimage_urlsΤύποςhttps_url|data_image_url[]ΑπαίτησηΠροαιρετικόΤιμές και όρια
Ελάχιστο πλήθος στοιχείων: 0
Μέγιστο πλήθος στοιχείων: 0
Μέγιστο πλήθος αποκωδικοποιημένων byte: 20.971.520
Τύποι MIME: image/jpeg, image/png, image/webp
Προεπιλογή—
Συνδυασμοί υλικών εισόδου

Κείμενο σε βίντεο · Υποχρεωτικό: prompt

Παράμετροι και κύκλος ζωής μεθόδου
ΠαράμετροςΣύμβαση
Παράμετροςmaterial_typesΣύμβασηtext
ΠαράμετροςrequiredΣύμβασηnull
Παράμετροςoptional_controlsΣύμβασηnull

Κύκλος ζωής: 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

Οι δομές και τα ID των μεθόδων είναι ακριβή· η δυνατότητα του προμηθευτή είναι ξεχωριστή από την αποδοχή αιτημάτων.

Τιμολόγηση

Χρεώσεις μεθόδων Ailoot

Ailoot ΒίντεοPOST /v1/videos/generations
Έξοδος
0,18 $ ανά δευτερόλεπτο στα 1080p
Έξοδος
0,07 $ ανά δευτερόλεπτο στα 480p
Έξοδος
0,14 $ ανά δευτερόλεπτο στα 720p

Το Ailoot δεσμεύει ένα εκτιμώμενο ποσό πριν από το αίτημα. Μετά το αποτέλεσμα, εκκαθαρίζει την τελική χρέωση βάσει της μετρημένης χρήσης. Η εκκαθάριση ροής χρησιμοποιεί την τελική καταγραφή χρήσης. Πώς λειτουργούν η δέσμευση και η εκκαθάριση →

Παραδείγματα αιτημάτων

Ailoot · Βίντεο

Παράδειγμα σκηνής
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_PROMPT_FILE:?Set your actual UTF-8 scene brief}"
export AILOOT_PROMPT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-t2v", "prompt": "", "duration": 5, "resolution": "720P", "ratio": "16:9"}')
f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 brief")
p['prompt']=f.read_text(encoding="utf-8")
if not p['prompt'].strip():raise SystemExit("Brief must contain text")
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/generations \
  -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
print(json.dumps(json.loads(Path("result.json").read_text()),ensure_ascii=False,indent=2))
PY_RESULT

Λήψη και αποθήκευση αποτελεσμάτων

Ailoot · Βίντεο

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
Έλεγχος κατάστασης εργασίας
Λήψη κατάστασης με GET
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o status.json
python3 - <<'PY_STATUS'
import json
from pathlib import Path
r=json.loads(Path("status.json").read_text())
print(json.dumps(r))
if r.get("status")=="completed":
    for x in r.get("data",[]):print(x)
PY_STATUS
Αποθηκεύστε όλα τα ολοκληρωμένα αρχεία
Λήψη όλων των ολοκληρωμένων αρχείων με GET
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
    if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
    u=urljoin("https://api.ailoot.ai",x)
    z=urlsplit(u)
    if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
    urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" \
    -H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
  index=$((index + 1))
done < asset-urls.txt
Άλλες ανακτήσεις περιεχομένου
Λήψη περιεχομένου με GET
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video.mp4
Διατηρήστε όλα τα ολοκληρωμένα αποτελέσματα

Αποθηκεύστε κάθε ολοκληρωμένο βίντεο ή αρχείο που επιστρέφεται· ανακτήστε κάθε πραγματικό URL αρχείου που επιστρέφεται.

Διατηρήστε κάθε στοιχείο δεδομένων και δείκτη εξόδου που επιστρέφεται. Το content_url αφορά μόνο το πρώτο· ανακτήστε κάθε πραγματική διαδρομή περιεχομένου ή αρχείο πολυμέσων. Το GET περιεχομένου χωρίς index δεν αντιστοιχεί σε όλες τις εξόδους.

Αν χρειάζεται έλεγχος της αρχικής απάντησης

Διαβάστε την υπάρχουσα αρχική εργασία· μην επανυποβάλετε ποτέ αποστολή με άγνωστο αποτέλεσμα.

Πεδία απάντησης
ΠεδίοΤύπος
ΠεδίοidΤύποςstring
ΠεδίοobjectΤύποςstring
ΠεδίοmodelΤύποςstring
ΠεδίοstatusΤύποςstring
Πεδίοcontent_urlΤύποςsigned URL
Πεδίοdata[]Τύποςsigned URL
ΠεδίοusageΤύποςobject
Πεδίοresult_pending_checkΤύποςboolean
Σφάλματα και επόμενα βήματα
ΑπάντησηΣυνθήκηΕπόμενο βήμα
Απάντηση400 · invalid_request_errorΣυνθήκηΜη έγκυρα υποχρεωτικά πεδία, μη έγκυρη αναπαράσταση υλικού ή μη έγκυρη τιμή παραμέτρουΕπόμενο βήμαΔιορθώστε τα υποδεικνυόμενα πεδία πριν από νέο αίτημα δημιουργίας.
Απάντηση409 · video_not_readyΣυνθήκηΤο περιεχόμενο του αρχικού αποτελέσματος δεν είναι ακόμη διαθέσιμοΕπόμενο βήμαΕλέγχετε περιοδικά το αρχικό ID που επιστρέφεται και τηρείτε το Retry-After.
Απάντησηserver_errorΣυνθήκηΗ απόκριση που επιστράφηκε αναφέρει ότι η λειτουργία ή το αποτέλεσμα χρειάζεται έλεγχοΕπόμενο βήμαΔιατηρήστε το αρχικό ID της λειτουργίας/εργασίας που επιστράφηκε, τις κεφαλίδες του αιτήματος και την απόκριση· συνεχίστε με τις υποστηριζόμενες αναγνώσεις αυτής της αρχικής λειτουργίας. Μην υποβάλετε ξανά το αίτημα δημιουργίας.

Εναλλακτικά ονόματα

Εναλλακτικά ονόματα μοντέλου

Ailoot happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest

Εναλλακτικές διαδρομές μεθόδων

Χρησιμοποιήστε τις διαδρομές μεθόδων που εμφανίζονται παραπάνω.

Σχετικά ID μοντέλων

happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest

Ailoot · Βίντεο POST /v1/videos/generations happyhorse-t2v-latest

happyhorse-t2v-latest

Alibaba /happyhorse-t2v-latest
ID μοντέλου
  • happyhorse-1.1-t2v
  • happyhorse-t2v
  • happyhorse-t2v-latest

Εισαγωγή

Μοντέλο δημιουργίας σύντομου βίντεο με ήχο από περιγραφή κειμένου. Είναι κατάλληλο για σκηνές στις οποίες η κίνηση, η σύνθεση και το οπτικό ύφος καθορίζονται με λέξεις.

Αποδεκτές είσοδοι
Κείμενο
Αποτελέσματα
Βίντεο

Διαθέσιμα στο Ailoot · είσοδοι και μέθοδοι

Ailoot · Βίντεο POST /v1/videos/generations
Είσοδος
text
Έξοδος
video
Μορφή εξόδου
mp4
ΠεδίοΤύποςΑπαίτησηΤιμές και όριαΠροεπιλογή
ΠεδίοmodelΤύποςstringΑπαίτησηΥποχρεωτικόΤιμές και όρια
happyhorse-t2v-latest
Προεπιλογή—
ΠεδίοpromptΤύποςstringΑπαίτησηΥποχρεωτικόΤιμές και όρια
Ελάχιστο μήκος: 1
Προεπιλογή—
ΠεδίοdurationΤύποςintegerΑπαίτησηΠροαιρετικόΤιμές και όρια
Ελάχιστο: 3
Μέγιστο: 15
Μονάδα: δευτερόλεπτα
Προεπιλογή5
ΠεδίοresolutionΤύποςstringΑπαίτησηΠροαιρετικόΤιμές και όρια
480P, 720P, 1080P
Προεπιλογή720P
ΠεδίοratioΤύποςstringΑπαίτησηΠροαιρετικόΤιμές και όρια
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Προεπιλογή16:9
Πεδίοimage_urlsΤύποςhttps_url|data_image_url[]ΑπαίτησηΠροαιρετικόΤιμές και όρια
Ελάχιστο πλήθος στοιχείων: 0
Μέγιστο πλήθος στοιχείων: 0
Μέγιστο πλήθος αποκωδικοποιημένων byte: 20.971.520
Τύποι MIME: image/jpeg, image/png, image/webp
Προεπιλογή—
Συνδυασμοί υλικών εισόδου

Κείμενο σε βίντεο · Υποχρεωτικό: prompt

Παράμετροι και κύκλος ζωής μεθόδου
ΠαράμετροςΣύμβαση
Παράμετροςmaterial_typesΣύμβασηtext
ΠαράμετροςrequiredΣύμβασηnull
Παράμετροςoptional_controlsΣύμβασηnull

Κύκλος ζωής: 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

Οι δομές και τα ID των μεθόδων είναι ακριβή· η δυνατότητα του προμηθευτή είναι ξεχωριστή από την αποδοχή αιτημάτων.

Τιμολόγηση

Χρεώσεις μεθόδων Ailoot

Ailoot ΒίντεοPOST /v1/videos/generations
Έξοδος
0,18 $ ανά δευτερόλεπτο στα 1080p
Έξοδος
0,07 $ ανά δευτερόλεπτο στα 480p
Έξοδος
0,14 $ ανά δευτερόλεπτο στα 720p

Το Ailoot δεσμεύει ένα εκτιμώμενο ποσό πριν από το αίτημα. Μετά το αποτέλεσμα, εκκαθαρίζει την τελική χρέωση βάσει της μετρημένης χρήσης. Η εκκαθάριση ροής χρησιμοποιεί την τελική καταγραφή χρήσης. Πώς λειτουργούν η δέσμευση και η εκκαθάριση →

Παραδείγματα αιτημάτων

Ailoot · Βίντεο

Παράδειγμα σκηνής
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_PROMPT_FILE:?Set your actual UTF-8 scene brief}"
export AILOOT_PROMPT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-t2v-latest", "prompt": "", "duration": 5, "resolution": "720P", "ratio": "16:9"}')
f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 brief")
p['prompt']=f.read_text(encoding="utf-8")
if not p['prompt'].strip():raise SystemExit("Brief must contain text")
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/generations \
  -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
print(json.dumps(json.loads(Path("result.json").read_text()),ensure_ascii=False,indent=2))
PY_RESULT

Λήψη και αποθήκευση αποτελεσμάτων

Ailoot · Βίντεο

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
Έλεγχος κατάστασης εργασίας
Λήψη κατάστασης με GET
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o status.json
python3 - <<'PY_STATUS'
import json
from pathlib import Path
r=json.loads(Path("status.json").read_text())
print(json.dumps(r))
if r.get("status")=="completed":
    for x in r.get("data",[]):print(x)
PY_STATUS
Αποθηκεύστε όλα τα ολοκληρωμένα αρχεία
Λήψη όλων των ολοκληρωμένων αρχείων με GET
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
    if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
    u=urljoin("https://api.ailoot.ai",x)
    z=urlsplit(u)
    if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
    urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" \
    -H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
  index=$((index + 1))
done < asset-urls.txt
Άλλες ανακτήσεις περιεχομένου
Λήψη περιεχομένου με GET
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video.mp4
Διατηρήστε όλα τα ολοκληρωμένα αποτελέσματα

Αποθηκεύστε κάθε ολοκληρωμένο βίντεο ή αρχείο που επιστρέφεται· ανακτήστε κάθε πραγματικό URL αρχείου που επιστρέφεται.

Διατηρήστε κάθε στοιχείο δεδομένων και δείκτη εξόδου που επιστρέφεται. Το content_url αφορά μόνο το πρώτο· ανακτήστε κάθε πραγματική διαδρομή περιεχομένου ή αρχείο πολυμέσων. Το GET περιεχομένου χωρίς index δεν αντιστοιχεί σε όλες τις εξόδους.

Αν χρειάζεται έλεγχος της αρχικής απάντησης

Διαβάστε την υπάρχουσα αρχική εργασία· μην επανυποβάλετε ποτέ αποστολή με άγνωστο αποτέλεσμα.

Πεδία απάντησης
ΠεδίοΤύπος
ΠεδίοidΤύποςstring
ΠεδίοobjectΤύποςstring
ΠεδίοmodelΤύποςstring
ΠεδίοstatusΤύποςstring
Πεδίοcontent_urlΤύποςsigned URL
Πεδίοdata[]Τύποςsigned URL
ΠεδίοusageΤύποςobject
Πεδίοresult_pending_checkΤύποςboolean
Σφάλματα και επόμενα βήματα
ΑπάντησηΣυνθήκηΕπόμενο βήμα
Απάντηση400 · invalid_request_errorΣυνθήκηΜη έγκυρα υποχρεωτικά πεδία, μη έγκυρη αναπαράσταση υλικού ή μη έγκυρη τιμή παραμέτρουΕπόμενο βήμαΔιορθώστε τα υποδεικνυόμενα πεδία πριν από νέο αίτημα δημιουργίας.
Απάντηση409 · video_not_readyΣυνθήκηΤο περιεχόμενο του αρχικού αποτελέσματος δεν είναι ακόμη διαθέσιμοΕπόμενο βήμαΕλέγχετε περιοδικά το αρχικό ID που επιστρέφεται και τηρείτε το Retry-After.
Απάντησηserver_errorΣυνθήκηΗ απόκριση που επιστράφηκε αναφέρει ότι η λειτουργία ή το αποτέλεσμα χρειάζεται έλεγχοΕπόμενο βήμαΔιατηρήστε το αρχικό ID της λειτουργίας/εργασίας που επιστράφηκε, τις κεφαλίδες του αιτήματος και την απόκριση· συνεχίστε με τις υποστηριζόμενες αναγνώσεις αυτής της αρχικής λειτουργίας. Μην υποβάλετε ξανά το αίτημα δημιουργίας.

Εναλλακτικά ονόματα

Εναλλακτικά ονόματα μοντέλου

Ailoot happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest

Εναλλακτικές διαδρομές μεθόδων

Χρησιμοποιήστε τις διαδρομές μεθόδων που εμφανίζονται παραπάνω.

Σχετικά ID μοντέλων

happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest

FAQ · happyhorse-1.1-t2v
Ποιες είσοδοι και αποτελέσματα διατίθενται;

POST /v1/videos/generations · happyhorse-1.1-t2v: text → video

POST /v1/videos/generations · happyhorse-t2v: text → video

POST /v1/videos/generations · happyhorse-t2v-latest: text → video

Ποια πεδία χρησιμοποιεί το αίτημα;

POST /v1/videos/generations · happyhorse-1.1-t2v: model, prompt, duration, resolution, ratio, image_urls

POST /v1/videos/generations · happyhorse-t2v: model, prompt, duration, resolution, ratio, image_urls

POST /v1/videos/generations · happyhorse-t2v-latest: model, prompt, duration, resolution, ratio, image_urls

Ποια όρια ισχύουν;

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

POST /v1/videos/generations · happyhorse-t2v: duration.minimum: 3; duration.maximum: 15

POST /v1/videos/generations · happyhorse-t2v-latest: duration.minimum: 3; duration.maximum: 15

Περισσότερες λεπτομέρειες

Συνδέστε το Ailoot με Claude Code, OpenCode, Hermes ή τη δική σας εφαρμογή.

Η εταιρεία και το χαρτοφυλάκιο έργων της

Η εταιρεία και το χαρτοφυλάκιο έργων της: εκατομμύρια πελάτες· μηνιαίες πωλήσεις δισεκατομμυρίων.

Αγοράστε token με έκπτωση.

Έκπτωση συνδρομής για τακτική χρήση. Προωθητικοί κωδικοί — έως 50% στην αγορά token.

Συνδρομή
Επιλέξτε πρόγραμμα με έκπτωση για τα τακτικά αιτήματά σας.
Προωθητικός κωδικός έως 50%
Εισαγάγετε τον κωδικό στην αγορά. Η τιμή επανυπολογίζεται σύμφωνα με την ενεργή προσφορά.
Δαπάνες στο ιστορικό
Μοντέλο, token και ποσό αποθηκεύονται για κάθε αίτημα.

Επιλέξτε συνδρομή · Δείτε τιμές μοντέλων

Συνδέστε το API με το προϊόν που πουλάτε.

SaaS, εφαρμογές και bot — σύμφωνα με τη δημόσια προσφορά και τη σύμβαση άδειας χρήσης Ailoot. Για μεταπώληση ζητήστε σχετική άδεια.

Εμπορική εφαρμογή
Ενσωματώστε δημιουργία κειμένου, εικόνων, βίντεο και ήχου στις πληρωμένες λειτουργίες της υπηρεσίας σας.
Άδεια για μεταπωλητή
Στείλτε περιγραφή έργου και τρόπο πρόσβασης. Ζητήστε γραπτούς όρους χρήσης και μεταπώλησης.
Έγγραφα στον ιστότοπο
Δημόσια προσφορά, σύμβαση άδειας χρήσης και πολιτική επεξεργασίας δεδομένων είναι διαθέσιμες πριν τη σύνδεση.

Ζητήστε άδεια μεταπώλησης · Δημόσια προσφορά και σύμβαση άδειας χρήσης