Alibaba: Wan 2.7
Alibaba Wan 2.7 membuat video bersuara dari teks, gambar awal dan akhir, atau referensi visual. Alur kerja gambarnya juga melanjutkan klip sumber dengan menggunakan durasi total yang diminta. Pengembang mencantumkan MP4 720p atau 1080p pada 30 fps: 2–15 detik untuk mode teks/gambar dan hingga 10 detik untuk generasi berbasis referensi.
Tentang model
Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.
Alibaba Wan 2.7 adalah keluarga generasi video dengan profil bernama teks ke video, gambar ke video, dan berpanduan referensi. Produsen mendokumentasikan adegan dengan audio tersinkron serta narasi multishot, sementara alur gambarnya menambahkan generasi dari bingkai pertama/terakhir dan kelanjutan video awal. Hasil yang berguna adalah klip pendek dengan suaranya, misalnya transisi produk, cerita ringkas, atau kelanjutan yang sesuai dengan shot yang sudah ada. Pilih mode berdasarkan materi sumber dan kendali yang dibutuhkan atas awal atau akhir.
Untuk teks ke video, jelaskan subjek, latar, aksi, kamera, gaya, dan suara. Storyboard dapat menentukan setiap shot dan rentang waktu, sementara brief shot tunggal harus menyebutkan bahwa aksi tetap berkesinambungan. Panduan prompt Wan 2.7 membiarkan model menafsirkan struktur shot dari brief tertulis, alih-alih menggunakan kendali shot_type milik 2.6. API teks saat ini menerima prompt bahasa Mandarin atau Inggris hingga 5.000 karakter, dengan prompt negatif terpisah sepanjang 500 karakter; teks berlebih dipotong. Nyatakan aksi dan batasan penting dengan jelas dalam jatah tersebut.
Gambar ke video dari bingkai pertama menganimasikan gambar pembuka yang diberikan. Generasi dari bingkai pertama/terakhir juga menentukan titik akhir dan gerakan yang menghubungkannya. Panduan gambar 2.7 mendukung sumber audio penggerak bersama kombinasi bingkai tersebut. Siapkan titik ujung dengan adegan dan subjek yang dimaksud yang sama, lalu jelaskan transisinya, alih-alih meminta model menafsirkan ulang kedua gambar sebagai referensi gaya yang tidak berhubungan. Keluaran mendekati proporsi gambar pertama; panduan memperlakukan resolusi sebagai tingkat jumlah piksel dan membulatkan dimensi terenkode sebagaimana mestinya.
Kelanjutan video dimulai dengan klip sumber dan juga dapat menggunakan gambar penutup. Durasi yang diminta adalah total video yang dikembalikan, termasuk segmen asli. Contoh panduan menggabungkan sumber dua detik dengan sepuluh detik konten baru menjadi hasil dua belas detik. Siapkan aksi terakhir sumber dan sebutkan kejadian selanjutnya agar kamera dan subjek berlanjut dalam arah yang padu. Tinjau sambungan untuk tampilan, gerakan, cahaya, dan suara, alih-alih hanya menilai akhir yang baru dihasilkan.
Profil referensi terpisah pembuat saat ini menggunakan gambar atau video untuk memandu karakter, objek, atau adegan. Panduannya mengizinkan hingga lima gambar dan video referensi secara total serta menggunakan label khusus jenis seperti Image 1 dan Video 1. Jelaskan peran setiap materi dan interaksi yang dimaksud. Untuk adegan berpanduan referensi, tampilkan karakter dari satu referensi membawa objek dari referensi lain melalui lokasi tertentu. Pembingkaian referensi berbeda dari generasi bingkai pertama: brief dapat menetapkan komposisi baru, bukan mewajibkan video dibuka pada satu gambar diam yang diberikan.
Untuk audio khusus dalam generasi teks, format yang didokumentasikan adalah WAV dan MP3, dengan durasi dua hingga tiga puluh detik dan ukuran maksimum 15 MB. Durasi video yang dipilih menentukan bagian yang digunakan: audio lebih panjang dipotong sesuai durasi itu, sementara audio yang lebih pendek daripada video membuat sisanya hening. Siapkan bagian audio tepat yang sesuai untuk shot dan sisakan ruang bagi aksi visual yang dimaksud. Tanpa berkas audio, pembuat menjelaskan generasi musik latar atau efek yang sesuai dengan adegan; periksa suara sebenarnya dan setiap ucapan yang diminta bersama gambarnya.
Matriks model saat ini mencantumkan MP4 720p atau 1080p pada 30 fps, dengan keluaran teks dan gambar berdurasi dua hingga lima belas detik. Profil referensi terpisah dibatasi dua hingga sepuluh detik. Generasi teks menawarkan pembingkaian 16:9, 9:16, 1:1, 4:3, dan 3:4. Tugas berkondisi gambar menggunakan aturan perkiraan proporsi sumbernya sendiri, sehingga siapkan potongan masukan untuk tujuan yang dimaksud. Aturan durasi atau aspek dari profil referensi tidak boleh menggantikan alur bingkai atau kelanjutan.
Alur pembuat yang didokumentasikan bersifat asinkron: pengenal tugas melacak pemrosesan, dan hasil sukses menyediakan lokasi video. Dokumentasi menyebutkan masa berlaku tautan hasil selama dua puluh empat jam, sehingga simpan klip sebenarnya beserta materi kreatif untuk tinjauan penyuntingan. Opsi penulisan ulang prompt, watermark, dan seed bergantung pada antarmuka yang dipilih. Pembuat menyatakan bahwa seed tetap dapat meningkatkan keterulangan, tetapi tidak menjamin hasil identik. Bandingkan artefak yang dikembalikan dengan brief, alih-alih menganggap pengaturan saja mempertahankan setiap detail.
Dibandingkan Wan 2.6, panduan gambar 2.7 secara khusus menambahkan kendali bingkai pertama/terakhir dan kelanjutan video melalui masukan media multimodal. Wan 3.0 memperkenalkan struktur terpadu yang berbeda dan jatah generasi lebih panjang. Profil 2.7 ini mempertahankan kendali dan batas khusus tugasnya. Tinjau seluruh adegan untuk kesinambungan subjek, acuan bingkai, identitas referensi, dialog, gerakan, dan sambungan, lalu buat koreksi berikutnya yang spesifik untuk masalah nyata yang ditemukan.
Ailoot Ultra · Video POST /v1/videos alibaba/wan-2.7
alibaba/wan-2.7Mulai
Alibaba Wan 2.7 membuat video bersuara dari teks, gambar awal dan akhir, atau referensi visual. Alur kerja gambarnya juga melanjutkan klip sumber dengan menggunakan durasi total yang diminta. Pengembang mencantumkan MP4 720p atau 1080p pada 30 fps: 2–15 detik untuk mode teks/gambar dan hingga 10 detik untuk generasi berbasis referensi.
- Masukan yang diterima
- Teks
- Hasil
- Video
Tersedia di Ailoot · masukan & metode
Ailoot Ultra · Video POST /v1/videos
- Masukan
text- Keluaran
video- Format keluaran
- mp4
- Jumlah keluaran
- Hingga 4 keluarans
| Kolom | Jenis | Persyaratan | Nilai & batasan | Bawaan |
|---|---|---|---|---|
Kolommodel | Jenisstring | PersyaratanWajib | Nilai & batasan alibaba/wan-2.7 | Bawaan— |
Kolomprompt | Jenisstring | PersyaratanWajib | Nilai & batasan Byte UTF-8 maksimum: 10.000 Wajib berisi karakter selain spasi: Ya | Bawaan— |
Kolomduration | Jenisinteger | PersyaratanWajib | Nilai & batasan 2, 3, 4, 5, 6, 7, 8, 9, 10 | Bawaan— |
Kolomresolution | Jenisstring | PersyaratanWajib | Nilai & batasan 720p | Bawaan— |
Kolomaspect_ratio | Jenisstring | PersyaratanWajib | Nilai & batasan 16:9, 9:16, 1:1, 4:3, 3:4 | Bawaan— |
Kolomgenerate_audio | Jenisboolean | PersyaratanWajib | Nilai & batasan false, true | Bawaan— |
Kombinasi bahan masukan
Teks ke video · Wajib: prompt
Parameter metode dan siklus hidup
| Parameter | Kontrak |
|---|---|
Parametercontent_type | Kontrakapplication/json |
Parameterrequired | Kontrakmodel, prompt, duration, resolution, aspect_ratio, generate_audio |
Parameteradditional_properties | Kontrakfalse |
Parameterparameters | Kontrak{"name":"model","type":"string","required":true,"enum":["alibaba/wan-2.7"]}, {"name":"prompt","type":"string","required":true,"non_whitespace":true,"max_utf8_bytes":10000}, {"name":"duration","type":"integer","required":true,"enum":[2,3,4,5,6,7,8,9,10]}, {"name":"resolution","type":"string","required":true,"enum":["720p"]}, {"name":"aspect_ratio","type":"string","required":true,"enum":["16:9","9:16","1:1","4:3","3:4"]}, {"name":"generate_audio","type":"boolean","required":true,"enum":[false,true]} |
Parametermaterial_types | Kontraktext |
Alias metode: /v1/videos/generations, /videos, /videos/generations
Siklus hidup: 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
Simpan respons secara utuh dan ID asli yang dikembalikan.
Jangan pernah kirim ulang pembuatan yang statusnya tidak diketahui.
Paket
Cara menghitung biaya akhir
Tarif yang ditampilkan memperkirakan biaya sebelum pembuatan. Biaya akhir dihitung dari biaya yang tercatat untuk proses pembuatan awal. Durasi keluaran yang terukur dan kuantitas perkiraan bukanlah kuantitas akhir yang ditagihkan.
Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.
- Mode Fast
- Tidak ditentukan Saat mode fast dipilih
- Mode Flex
- Tidak ditentukan Saat mode flex dipilih
- Upaya penalaran maksimum
- Tidak ditentukan Saat upaya penalaran maksimum menggunakan penyesuaian default
Perkiraan tarif untuk perbandingan
Harga menurut konfigurasi
Cocokkan setiap biaya dengan kondisi yang ditampilkan. Gunakan satu tarif untuk setiap kelompok konfigurasi alternatif.
| Konfigurasi | Jadwal tarif | Jumlah perkiraan | Pilihan pembuatan audio | Resolusi | Satuan penagihan | Biaya |
|---|---|---|---|---|---|---|
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Jumlah perkiraan— | Pilihan pembuatan audio— | Resolusi— | Satuan penagihan— | Biaya Masukan · Token masukan · Perkiraan hanya untuk perbandingan — / 1K token Keluaran · Token keluaran · Perkiraan hanya untuk perbandingan — / 1K token Masukan · Pembacaan cache · Perkiraan hanya untuk perbandingan — / 1K token Masukan · Penulisan cache · Perkiraan hanya untuk perbandingan — / 1K token Masukan · Penulisan cache, 1 jam · Perkiraan hanya untuk perbandingan — / 1K token |
| KonfigurasiUltra | Jadwal tarif— | Jumlah perkiraanKonfigurasi yang diminta; hanya estimasi. | Pilihan pembuatan audioTanpa audio · Dengan audio | Resolusi720p | Satuan penagihanper detik video keluaran | Biaya Keluaran · perkiraan detik video · Perkiraan hanya untuk perbandingan $0.2 per detik video keluaran Tarif yang ditampilkan memperkirakan biaya sebelum pembuatan. Tagihan akhir dihitung dari biaya yang dicatat untuk pembuatan awal. Durasi fisik video bukan kuantitas yang ditagihkan. |
| KonfigurasiPerkiraan biaya pembuatan | Jadwal tarif— | Jumlah perkiraanestimasi satu kali pembuatan | Pilihan pembuatan audio— | Resolusi— | Satuan penagihan— | Biaya Keluaran · Perkiraan biaya pembuatan · Perkiraan hanya untuk perbandingan $0.4 estimasi sebelum pembuatan Perkiraan ini bukan biaya tambahan maupun tarif tetap untuk proses pembuatan yang telah selesai. |
Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. Cara kerja cadangan dan penyelesaian tagihan →
Detail tarif referensi
Jadwal referensi tingkat model tidak mengubah pemilihan metode, estimasi harga, atau biaya. Biaya aktif menggunakan tarif metode Ailoot yang dipilih.
Referensi harga konfigurasi video
Harga menurut konfigurasi
| Konfigurasi | Kondisi penagihan | Biaya |
|---|---|---|
| KonfigurasiHarga video | Kondisi penagihanTidak ada kondisi tambahan yang dinyatakan dalam kunci harga ini. | Biaya Keluaran · Harga video $0.2 per detik video Acuan harga yang dipublikasikan untuk konfigurasi yang ditampilkan. Biaya akhir mengikuti konfigurasi aktual yang ditagihkan. |
Contoh permintaan
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/wan-2.7", "prompt": "a calm greenhouse", "duration": 6, "resolution": "720p", "aspect_ratio": "16:9", "generate_audio": true}')
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
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
Terima dan simpan hasil
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
Periksa status tugas
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
Pembacaan konten lain
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
Simpan semua hasil yang selesai
Simpan setiap video yang selesai atau berkas yang dikembalikan; ambil setiap URL aset yang benar-benar dikembalikan.
Simpan setiap URL bertanda tangan milik Ailoot dalam data[] yang selesai dan metadata status secara utuh. Simpan setiap keluaran, termasuk audio yang dibuatnya. Trek audio AAC yang valid dapat tetap ada meskipun generate_audio=false; simpan MP4 asli secara utuh termasuk audio tersebut.
Jika respons asli perlu diperiksa
Baca tugas awal yang sudah ada; jangan pernah kirim ulang pengiriman yang statusnya tidak diketahui.
Keluaran maksimum: 4.
Kolom respons
| Kolom | Jenis | Arti |
|---|---|---|
Kolomid | Jenisstring | Arti— |
Kolomobject | Jenisstring | Arti— |
Kolommodel | Jenisstring | Arti— |
Kolomstatus | Jenisstring | Arti— |
Kolomdata[] | Jenissigned content URL | Arti— |
Kolomcharge_pending_check | Jenisboolean | Arti— |
Kolomerror.code | Jenisstring | Arti— |
Kolomerror.message | Jenisstring | Arti— |
Kolomoperation_id | Jenisstring | ArtiRespons status/konten awal HTTP503 result_pending_check: ID video publik awal yang sama sebagai id. |
Kolomerror.type | Jenisstring | Artiserver_error pada HTTP503 result_pending_check. |
Kesalahan dan langkah berikutnya
| Respons | Kondisi | Langkah berikutnya |
|---|---|---|
Respons400 · invalid_request_error | KondisiPembacaan isi permintaan mentah gagal sebelum penguraian profil video | Langkah berikutnyaSimpan respons yang dikembalikan dan perbaiki isi permintaan yang tidak dapat dibaca. |
Respons422 · price_unavailable | KondisiPenguraian profil video persis gagal, atau profil lengkap yang telah diurai tidak memiliki kartu harga persis yang siap digunakan | Langkah berikutnyaSimpan respons; gunakan profil lengkap dan persis yang diizinkan beserta kartu harga yang dipublikasikan untuknya. Cabang ini dijalankan sebelum pengiriman ke penyedia. |
Respons409 · video_not_ready | KondisiKonten hasil awal belum tersedia | Langkah berikutnyaPeriksa ID awal yang dikembalikan secara berkala dan patuhi Retry-After. |
Responsserver_error | KondisiRespons yang dikembalikan menyatakan bahwa operasi atau hasil perlu diperiksa | Langkah berikutnyaSimpan ID operasi/tugas asli yang dikembalikan, header permintaan, dan respons; lanjutkan pembacaan yang didukung untuk operasi asli tersebut. Jangan kirim ulang permintaan pembuatan. |
Respons503 · result_pending_check | KondisiGET status/konten awal: tugas belum dipublikasikan, tugas awal tidak berstatus failed/cancelled/expired, dan status lokal unknown atau status tugas awal completed. | Langkah berikutnyaSimpan id dan operation_id asli (ID video publik yang sama), respons, dan header; baca hanya status/konten awal. Jangan pernah kirim permintaan pembuatan baru. |
Alias
Alias model
Ailoot Ultra alibaba/wan-2.7
Alias jalur metode
/v1/videos/generations, /videos, /videos/generations
ID pemanggil terkait
FAQ · Alibaba: Wan 2.7
- Input dan hasil apa yang tersedia?
POST /v1/videos·alibaba/wan-2.7:text→video- Kolom apa yang digunakan permintaan?
POST /v1/videos·alibaba/wan-2.7:model,prompt,duration,resolution,aspect_ratio,generate_audio