Pika 1.5
Το Pika 1.5 δημιουργεί βίντεο βασισμένο σε εφέ από προτροπή και προαιρετικό υλικό εικόνας. Επιλέξτε ρητά pikaffect και ακολουθήστε την αρχική λειτουργία Ailoot έως το βίντεό της.
Σχετικά με το μοντέλο
Αυτή η περιγραφή καλύπτει τις δυνατότητες του μοντέλου. Οι είσοδοι, έξοδοι και επιλογές που διατίθενται στο Ailoot παρατίθενται παρακάτω για την επιλεγμένη μέθοδο.
Χρησιμοποιήστε pika-15 με model, prompt και pikaffect στο /v1/videos. Επιλέξτε τεκμηριωμένο εφέ όπως Inflate, Levitate, Melt, Squish ή Ta-da. Το αίτημα παρέχει επίσης image ως συμβολοσειρά ή πίνακα έως δέκα συμβολοσειρών και πεδίο negative_prompt.
Περιγράψτε το θέμα που πρέπει να υποστεί τον επιλεγμένο μετασχηματισμό και την επιθυμητή τελική εμφάνιση. Μια εικόνα μπορεί να παρέχει το ορατό αρχικό υλικό· το prompt πρέπει να προσδιορίζει την κίνηση και το κάδρο προς διατήρηση γύρω από το εφέ. Κρατήστε κυριολεκτική την τιμή εφέ και επιλέξτε πηγαίο υλικό που διευκολύνει την εξέταση του μετασχηματισμού στο τελικό κλιπ.
Υποβάλετε το πλάνο μία φορά μέσω του /v1/videos, κρατήστε το αναγνωριστικό αιτήματος που επιστρέφεται και ελέγχετε περιοδικά εκείνη την αρχική λειτουργία μέσω του /v1/videos/{request_id}. Αποθηκεύστε κάθε ολοκληρωμένο βίντεο και ολόκληρη την απόκριση πριν ελέγξετε την κίνηση, το κάδρο και την τελική κατάσταση ως προς τις οδηγίες.
Ailoot Ultra · Video POST /v1/videos pika-15
pika-15Εισαγωγή
Το Pika 1.5 δημιουργεί βίντεο βασισμένο σε εφέ από προτροπή και προαιρετικό υλικό εικόνας. Επιλέξτε ρητά pikaffect και ακολουθήστε την αρχική λειτουργία Ailoot έως το βίντεό της.
- Αποδεκτές είσοδοι
- Κείμενο · Εικόνες
- Αποτελέσματα
- Βίντεο
Διαθέσιμα στο Ailoot · είσοδοι και μέθοδοι
Ailoot Ultra · Video POST /v1/videos
- Είσοδος
text,image- Έξοδος
video
| Πεδίο | Τύπος | Απαίτηση | Τιμές και όρια | Προεπιλογή |
|---|---|---|---|---|
Πεδίοmodel | Τύποςstring | ΑπαίτησηΥποχρεωτικό | Τιμές και όρια pika-15 Συνθήκες: Χρησιμοποιήστε ακριβώς αυτόν τον επιλογέα δρομολόγησης του Ailoot. | Προεπιλογή— |
Πεδίοimage | Τύποςstring or array<string> | ΑπαίτησηΠροαιρετικό | Τιμές και όρια Συνθήκες: Δώστε το πραγματικό προσβάσιμο URL της εικόνας σας. Μια λίστα γίνεται δεκτή μόνο όταν το σχήμα της παραμέτρου ορίζει πίνακα. | Προεπιλογή— |
Πεδίοprompt | Τύποςstring | ΑπαίτησηΥποχρεωτικό | Τιμές και όρια Συνθήκες: Χρησιμοποιήστε το τεκμηριωμένο πεδίο και τις αναφερόμενες επιλογές του επιλεγμένου μοντέλου· παραλείψτε μια προαιρετική τιμή που δεν έχει καθοριστεί. | Προεπιλογή— |
Πεδίοnegative_prompt | Τύποςstring | ΑπαίτησηΠροαιρετικό | Τιμές και όρια Συνθήκες: Χρησιμοποιήστε το τεκμηριωμένο πεδίο και τις αναφερόμενες επιλογές του επιλεγμένου μοντέλου· παραλείψτε μια προαιρετική τιμή που δεν έχει καθοριστεί. | Προεπιλογή— |
Πεδίοpikaffect | Τύποςstring | ΑπαίτησηΥποχρεωτικό | Τιμές και όρια Cake-ify, Crumble, Crush, Decapitate, Deflate, Dissolve, Explode, Eye-pop, Inflate, Levitate, Melt, Peel, Poke, Squish, Ta-da, Tear, Love Bomb Συνθήκες: Χρησιμοποιήστε το τεκμηριωμένο πεδίο και τις αναφερόμενες επιλογές του επιλεγμένου μοντέλου· παραλείψτε μια προαιρετική τιμή που δεν έχει καθοριστεί. | Προεπιλογή— |
Παράμετροι και κύκλος ζωής μεθόδου
| Παράμετρος | Σύμβαση |
|---|---|
Παράμετροςcontent_type | Σύμβασηapplication/json |
Παράμετροςrequired | Σύμβασηmodel, prompt, pikaffect |
Παράμετροςoptional | Σύμβασηimage, negative_prompt |
Παράμετροςmaterial_types | Σύμβασηtext, image |
Παράμετροςconditions | ΣύμβασηΧρησιμοποιήστε ακριβώς αυτόν τον επιλογέα δρομολόγησης του Ailoot., Δώστε το πραγματικό προσβάσιμο URL της εικόνας σας. Μια λίστα γίνεται δεκτή μόνο όταν το σχήμα της παραμέτρου ορίζει πίνακα., Χρησιμοποιήστε το τεκμηριωμένο πεδίο και τις αναφερόμενες επιλογές του επιλεγμένου μοντέλου· παραλείψτε μια προαιρετική τιμή που δεν έχει καθοριστεί., Χρησιμοποιήστε το τεκμηριωμένο πεδίο και τις αναφερόμενες επιλογές του επιλεγμένου μοντέλου· παραλείψτε μια προαιρετική τιμή που δεν έχει καθοριστεί., Χρησιμοποιήστε το τεκμηριωμένο πεδίο και τις αναφερόμενες επιλογές του επιλεγμένου μοντέλου· παραλείψτε μια προαιρετική τιμή που δεν έχει καθοριστεί. |
Εναλλακτικά ονόματα μεθόδου: /v1/videos/generations
Κύκλος ζωής: submit_once_poll_original
GET /v1/videos/{request_id}
GET /v1/videos/generations/{request_id}
GET /v1/videos/{request_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Τιμολόγηση
Πώς υπολογίζεται η τελική χρέωση
Οι εμφανιζόμενες τιμές χρησιμοποιούνται για την εκτίμηση του κόστους πριν από την παραγωγή. Η τελική χρέωση υπολογίζεται από το κόστος που καταγράφηκε για την αρχική παραγωγή. Η μετρημένη διάρκεια της εξόδου και οι προβλεπόμενες ποσότητες δεν αποτελούν την τελική χρεώσιμη ποσότητα.
Οι τιμολογιακές αναφορές δεν προσθέτουν επιλογές αιτήματος. Οι υποστηριζόμενες παράμετροι αναφέρονται στην επιλεγμένη μέθοδο.
- Γρήγορη λειτουργία
- Δεν έχει οριστεί Όταν επιλέγεται η γρήγορη λειτουργία
- Λειτουργία flex
- Δεν έχει οριστεί Όταν επιλέγεται η λειτουργία flex
- Μέγιστη προσπάθεια συλλογισμού
- Δεν έχει οριστεί Όταν η μέγιστη προσπάθεια συλλογισμού χρησιμοποιεί την προσαρμογή default
Εκτιμώμενες χρεώσεις για σύγκριση
Τιμές ανά διαμόρφωση
Αντιστοιχίστε κάθε χρέωση στις συνθήκες που εμφανίζονται. Χρησιμοποιήστε μία χρέωση ανά σύνολο εναλλακτικών διαμορφώσεων.
| Διαμόρφωση | Πίνακας χρεώσεων | Προβλεπόμενη ποσότητα | Ποσότητα τιμολόγησης | Χρέωση |
|---|---|---|---|---|
| ΔιαμόρφωσηΒασικές χρεώσεις token | Πίνακας χρεώσεωνΒασική χρέωση | Προβλεπόμενη ποσότητα— | Ποσότητα τιμολόγησης— | Χρέωση Είσοδος · Token εισόδου · Εκτίμηση μόνο για σύγκριση — / 1K token Έξοδος · Token εξόδου · Εκτίμηση μόνο για σύγκριση — / 1K token Είσοδος · Ανάγνωση από την κρυφή μνήμη · Εκτίμηση μόνο για σύγκριση — / 1K token Είσοδος · Εγγραφή στην κρυφή μνήμη · Εκτίμηση μόνο για σύγκριση — / 1K token Είσοδος · Εγγραφή στην κρυφή μνήμη, 1 ώρα · Εκτίμηση μόνο για σύγκριση — / 1K token |
| ΔιαμόρφωσηΑνά αίτημα | Πίνακας χρεώσεων— | Προβλεπόμενη ποσότητα— | Ποσότητα τιμολόγησηςένα αίτημα | Χρέωση Είσοδος · Εκτίμηση μόνο για σύγκριση $1.4 ανά αίτημα |
| ΔιαμόρφωσηΕκτιμώμενο κόστος δημιουργίας | Πίνακας χρεώσεων— | Προβλεπόμενη ποσότηταεκτίμηση για μία δημιουργία | Ποσότητα τιμολόγησης— | Χρέωση Έξοδος · Εκτιμώμενο κόστος δημιουργίας · Εκτίμηση μόνο για σύγκριση $1.4 εκτίμηση πριν από τη δημιουργία Αυτή η εκτίμηση δεν αποτελεί πρόσθετη χρέωση ούτε σταθερή τιμή για την ολοκληρωμένη παραγωγή. |
Το Ailoot δεσμεύει ένα εκτιμώμενο ποσό πριν από το αίτημα. Μετά το αποτέλεσμα, εκκαθαρίζει την τελική χρέωση βάσει της μετρημένης χρήσης. Η εκκαθάριση ροής χρησιμοποιεί την τελική καταγραφή χρήσης. Πώς λειτουργούν η δέσμευση και η εκκαθάριση →
Παραδείγματα αιτημάτων
Ailoot Ultra · Video
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
: "${AILOOT_IMAGE_URL:?Set an actual customer material or documented value}"
export AILOOT_IMAGE_URL
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "pika-15", "prompt": "A cat is walking on grass.", "pikaffect": "Cake-ify", "image": "YOUR_ACCESSIBLE_IMAGE_URL"}')
p['image']=os.environ['AILOOT_IMAGE_URL']
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
# Submit once. Retain the complete result, original identifiers and every response header.
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_STATUS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
u=urljoin("https://api.ailoot.ai",r["polling_url"])
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or p.username or p.password:
raise SystemExit("Unexpected returned polling URL; preserve the response")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-D","status-headers.txt","-o","status.json"],check=True)
# Read this same original polling_url again while pending.
# Preserve unknown/result_pending_check; do not repeat creation.
PY_STATUS
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())
roles={}
def visit(v,path=""):
if isinstance(v,dict):
for k,x in v.items(): visit(x,path+"/"+k)
elif isinstance(v,list):
for i,x in enumerate(v): visit(x,path+"/"+str(i))
elif isinstance(v,str):
u=urljoin("https://api.ailoot.ai",v); p=urlsplit(u)
if p.scheme=="https" and p.netloc=="api.ailoot.ai" and not p.username and not p.password and p.path.startswith("/v1/media/assets/") and p.path.endswith("/content"):
roles.setdefault(u,[]).append(path)
visit(r)
if not roles: raise SystemExit("No completed owned assets; retain the original status")
manifest=[]
for i,(u,paths) in enumerate(roles.items()):
target=Path(f"asset-{i}.bin")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-o",str(target)],check=True)
raw=target.read_bytes()
if not raw: raise SystemExit("Empty asset; retain original status and metadata")
ext="glb" if raw[:4]==b"glTF" else "png" if raw[:8]==b"\x89PNG\r\n\x1a\n" else "jpg" if raw[:3]==b"\xff\xd8\xff" else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "mp4" if raw[4:8]==b"ftyp" else "bin"
name=f"asset-{i}.{ext}"
if target.name!=name: target.rename(name)
manifest.append({"file":name,"response_paths":paths,"bytes":len(raw)})
Path("asset-manifest.json").write_text(json.dumps(manifest,indent=2))
print("Saved",len(manifest),"unique owned assets; every response role retained")
PY_ASSETS
Λήψη και αποθήκευση αποτελεσμάτων
Ailoot Ultra · Video
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Διατηρήστε όλα τα ολοκληρωμένα αποτελέσματα
Αποθηκεύστε κάθε ολοκληρωμένο βίντεο ή αρχείο που επιστρέφεται· ανακτήστε κάθε πραγματικό URL αρχείου που επιστρέφεται.
Διατηρήστε ολόκληρη την απόκριση και τις κεφαλίδες, τα αρχικά αναγνωριστικά, κάθε πραγματική έξοδο και όλα τα πεδία χρήσης και λογιστικής καταγραφής. Αποθηκεύστε κάθε μοναδικό αρχείο πολυμέσων που σας ανήκει και διατηρήστε κάθε ρόλο που παραπέμπει σε αυτό.
Αν χρειάζεται έλεγχος της αρχικής απάντησης
Διατηρήστε το δημόσιο id εργασίας ή λειτουργίας που επιστρέφεται και όλες τις κεφαλίδες. Διαβάστε μόνο την αρχική εργασία· τα unknown ή result_pending_check δεν επιτρέπουν άλλη δημιουργία.
Πεδία απάντησης
| Πεδίο | Τύπος |
|---|---|
Πεδίοid | Τύποςstring |
Πεδίοpolling_url | Τύποςstring |
Πεδίοprovider_task_id | Τύποςstring |
Πεδίοtask_id | Τύποςstring |
Πεδίοstatus | Τύποςstring |
Πεδίοvideo_url | Τύποςstring |
Σφάλματα και επόμενα βήματα
| Απάντηση | Συνθήκη | Επόμενο βήμα |
|---|---|---|
Απάντηση400 · invalid_request_error | ΣυνθήκηΈνα υποχρεωτικό πεδίο, ο επιλογέας μοντέλου, ο τύπος ή η μορφή αναπαράστασης της εισόδου δεν είναι έγκυρα. | Επόμενο βήμαΕξετάστε τις λεπτομέρειες επικύρωσης που επιστράφηκαν πριν ετοιμάσετε ξεχωριστό αίτημα. |
Απάντηση | ΣυνθήκηΤο αρχικό αίτημα ή αποτέλεσμα είναι άγνωστο ή απαιτεί έλεγχο. | Επόμενο βήμαΔιατηρήστε τα αρχικά αναγνωριστικά και τις κεφαλίδες· διαβάστε μόνο τις υποστηριζόμενες εγγραφές κατάστασης ή βιβλιοθήκης. Μην υποβάλετε ξανά αίτημα δημιουργίας. |
Εναλλακτικά ονόματα
Εναλλακτικά ονόματα μοντέλου
Ailoot Ultra pika-15
Εναλλακτικές διαδρομές μεθόδων
/v1/videos/generations
Σχετικά ID μοντέλων
FAQ · Pika 1.5
- Ποιες είσοδοι και αποτελέσματα διατίθενται;
POST /v1/videos·pika-15:text,image→video- Ποια πεδία χρησιμοποιεί το αίτημα;
POST /v1/videos·pika-15:model,image,prompt,negative_prompt,pikaffect