wanx2.1-i2v-turbo
Wanx 2.1 I2V Turbo menghasilkan video pendek daripada imej dan arahan bertulis. Pilih tiga, empat atau lima saat dan resolusi 480P atau 720P melalui Ailoot.
Tentang model
Huraian ini merangkumi keupayaan model. Input, output dan pilihan yang tersedia di Ailoot disenaraikan di bawah untuk kaedah yang dipilih.
Gunakan wanx2.1-i2v-turbo dengan model, image, prompt dan negative_prompt. Permintaan menawarkan tempoh tiga, empat atau lima saat dan resolusi 480P atau 720P, dengan 720P sebagai lalai. Prompt_extend, audio_url dan audio ialah kawalan yang tersedia.
Pilih satu tindakan yang kelihatan yang sesuai dengan tempoh pendek. Huraikan subjek sumber, pergerakan yang dimaksudkan, arahan kamera dan komposisi akhir. Untuk syot produk, babak ringkas yang memperlihatkan objek boleh memastikan objek mudah diperiksa; untuk watak, tentukan gerak isyarat dan titik akhirnya. Simpan imej input dan sebarang audio yang diberikan bersama taklimat untuk menilai pergerakan yang dijana.
Hantar syot sekali melalui /v1/videos dan simpan ID permintaan yang dipulangkan. Semak status operasi yang sama melalui /v1/videos/{request_id}, kemudian simpan setiap keluaran video yang telah siap serta respons lengkap. Semak keseluruhan tindakan dan komposisi akhir berdasarkan bahan serta taklimat yang diberikan.
Ailoot Ultra · Video POST /v1/videos wanx2.1-i2v-turbo
wanx2.1-i2v-turboPengenalan
Wanx 2.1 I2V Turbo menghasilkan video pendek daripada imej dan arahan bertulis. Pilih tiga, empat atau lima saat dan resolusi 480P atau 720P melalui Ailoot.
- Input yang diterima
- Teks · Imej
- Hasil
- Video
Tersedia di Ailoot · input & kaedah
Ailoot Ultra · Video POST /v1/videos
- Input
text,image- Output
video
| Medan | Jenis | Keperluan | Nilai & had | Lalai |
|---|---|---|---|---|
Medanmodel | Jenisstring | KeperluanDiperlukan | Nilai & had wanx2.1-i2v-turbo Syarat: Gunakan pemilih penghalaan Ailoot ini tepat seperti yang dinyatakan. | Lalai— |
Medanprompt | Jenisstring | KeperluanDiperlukan | Nilai & had Syarat: Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan. | Lalai— |
Medannegative_prompt | Jenisstring | KeperluanDiperlukan | Nilai & had Syarat: Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan. | Lalai— |
Medanprompt_extend | Jenisboolean | KeperluanPilihan | Nilai & had Syarat: Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan. | Lalaifalse |
Medanduration | Jenisinteger | KeperluanPilihan | Nilai & had 3, 4, 5 Syarat: Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan. | Lalai— |
Medanimage | Jenisstring | KeperluanDiperlukan | Nilai & had Syarat: Berikan URL imej anda yang sebenar dan boleh dicapai. Senarai hanya diterima jika skema parameter menetapkan tatasusunan. | Lalai— |
Medanresolution | Jenisstring | KeperluanPilihan | Nilai & had 480P, 720P Syarat: Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan. | Lalai720P |
Medanaudio_url | Jenisstring | KeperluanPilihan | Nilai & had Syarat: Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan. | Lalai— |
Medanaudio | Jenisboolean | KeperluanPilihan | Nilai & had Syarat: Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan. | Lalai— |
Parameter kaedah dan kitar hayat
| Parameter | Kontrak |
|---|---|
Parametercontent_type | Kontrakapplication/json |
Parameterrequired | Kontrakmodel, prompt, negative_prompt, image |
Parameteroptional | Kontrakprompt_extend, duration, resolution, audio_url, audio |
Parametermaterial_types | Kontraktext, image |
Parameterconditions | KontrakGunakan pemilih penghalaan Ailoot ini tepat seperti yang dinyatakan., Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan., Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan., Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan., Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan., Berikan URL imej anda yang sebenar dan boleh dicapai. Senarai hanya diterima jika skema parameter menetapkan tatasusunan., Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan., Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan., Gunakan medan yang didokumentasikan dan pilihan yang disenaraikan untuk model yang dipilih; abaikan nilai pilihan yang tidak ditetapkan. |
Alias kaedah: /v1/videos/generations
Kitar hayat: 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}
Pelan harga
Cara caj akhir dikira
Kadar yang dipaparkan menganggarkan kos sebelum penjanaan. Caj akhir dikira berdasarkan kos yang direkodkan untuk penjanaan asal. Tempoh output yang diukur dan kuantiti ramalan bukan kuantiti akhir yang boleh dibilkan.
Rujukan tarif tidak menambah pilihan permintaan. Parameter yang disokong disenaraikan untuk kaedah yang dipilih.
- Mod pantas
- Tidak dinyatakan Apabila mod pantas dipilih
- Mod flex
- Tidak dinyatakan Apabila mod flex dipilih
- Usaha penaakulan maksimum
- Tidak dinyatakan Apabila usaha penaakulan maksimum menggunakan pelarasan default
Anggaran kadar untuk perbandingan
Harga mengikut konfigurasi
Padankan setiap caj dengan syarat yang dipaparkan. Gunakan satu kadar bagi setiap set konfigurasi alternatif.
| Konfigurasi | Jadual kadar | Kuantiti ramalan | Unit pengebilan | Syarat pengebilan | Caj |
|---|---|---|---|---|---|
| KonfigurasiKadar asas token | Jadual kadarKadar asas | Kuantiti ramalan— | Unit pengebilan— | Syarat pengebilan— | Caj Input · Token input · Anggaran untuk perbandingan sahaja — / 1K token Output · Token output · Anggaran untuk perbandingan sahaja — / 1K token Input · Bacaan cache · Anggaran untuk perbandingan sahaja — / 1K token Input · Penulisan cache · Anggaran untuk perbandingan sahaja — / 1K token Input · Penulisan cache, 1 jam · Anggaran untuk perbandingan sahaja — / 1K token |
| KonfigurasiVideo output | Jadual kadar— | Kuantiti ramalan— | Unit pengebilanbagi setiap saat video | Syarat pengebilanAnggaran rujukan bagi tempoh video output. Caj akhir mengikut invois asal yang direkodkan. | Caj Output · Video keluaran · Anggaran untuk perbandingan sahaja $0.1 bagi setiap saat video Anggaran untuk rujukan sahaja; caj akhir mengikut invois asal yang direkodkan. |
| KonfigurasiAnggaran kos penjanaan | Jadual kadar— | Kuantiti ramalananggaran untuk satu penjanaan | Unit pengebilan— | Syarat pengebilan— | Caj Output · Anggaran kos penjanaan · Anggaran untuk perbandingan sahaja $0.1 anggaran sebelum penjanaan Anggaran ini bukan caj tambahan atau kadar tetap bagi penjanaan yang telah selesai. |
Ailoot merizabkan anggaran amaun sebelum permintaan. Selepas hasil diterima, caj akhir diselesaikan berdasarkan penggunaan terukur. Penyelesaian caj penstriman menggunakan rekod penggunaan akhir. Cara rizab dan penyelesaian caj berfungsi →
Contoh permintaan
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": "wanx2.1-i2v-turbo", "prompt": "A cat is walking on grass.", "negative_prompt": "", "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
Terima dan simpan hasil
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}
Simpan semua hasil yang selesai
Simpan setiap video yang selesai atau fail yang dikembalikan; dapatkan setiap URL aset yang benar-benar dikembalikan.
Simpan respons dan pengepala lengkap, pengecam asal, setiap output sebenar dan semua medan penggunaan/perakaunan. Simpan setiap aset unik milik anda dan kekalkan setiap peranan yang merujuk kepadanya.
Jika respons asal perlu disemak
Simpan id tugas atau operasi awam yang dikembalikan dan semua pengepala. Baca tugas asal sahaja; unknown atau result_pending_check tidak memberikan kebenaran untuk penciptaan lain.
Medan respons
| Medan | Jenis |
|---|---|
Medanid | Jenisstring |
Medanpolling_url | Jenisstring |
Medanprovider_task_id | Jenisstring |
Medantask_id | Jenisstring |
Medanstatus | Jenisstring |
Medanvideo_url | Jenisstring |
Ralat dan langkah seterusnya
| Respons | Syarat | Langkah seterusnya |
|---|---|---|
Respons400 · invalid_request_error | SyaratMedan wajib, pemilih model, jenis atau bentuk input tidak sah. | Langkah seterusnyaSemak butiran pengesahan yang dikembalikan sebelum menyediakan permintaan berasingan. |
Respons | SyaratPermintaan atau hasil asal tidak diketahui atau memerlukan semakan. | Langkah seterusnyaSimpan pengecam dan pengepala asal; baca hanya rekod status/pustaka yang disokong. Jangan hantar semula permintaan penciptaan. |
Alias
Alias model
Ailoot Ultra wanx2.1-i2v-turbo
Alias laluan kaedah
/v1/videos/generations
ID pemanggil berkaitan
FAQ · wanx2.1-i2v-turbo
- Apakah input dan hasil yang tersedia?
POST /v1/videos·wanx2.1-i2v-turbo:text,image→video- Apakah medan yang digunakan oleh permintaan?
POST /v1/videos·wanx2.1-i2v-turbo:model,prompt,negative_prompt,prompt_extend,duration,image,resolution,audio_url,audio