Wan3.0 adalah model generasi video All-in-One berbasis referensi yang mendukung Text-to-Video , Image-to-Video (frame pertama/frame pertama-terakhir), dan Reference-based Video Generation . Model ini dapat menghasilkan video hingga durasi 30 detik dengan kecepatan 30 fps. Saat ini dalam status preview .
Prasyarat
Untuk memastikan panggilan API berhasil, pastikan bahwa model, URL Endpoint, dan Kunci API semuanya berada di wilayah yang sama. Panggilan lintas-wilayah akan gagal.
- Select a model: Buka Model Gallery untuk memilih model dan konfirmasi wilayah tempat model tersebut berada.
- Select a URL: Pilih URL Endpoint sesuai wilayah yang bersangkutan.
- Configure API Key: Pilih wilayah dan Obtain an API key, lalu Configure API key as an environment variable.
Kode contoh dalam topik ini berlaku untuk wilayah Singapura.
Panggilan HTTP
Karena tugas generasi video memerlukan waktu relatif lama (biasanya 1–5 menit), API menggunakan panggilan asinkron. Seluruh proses terdiri dari dua langkah inti: "Create a task → Poll for results", seperti dijelaskan di bawah ini:
Langkah 1: Buat tugas dan peroleh ID tugas
- Singapura
- Beijing
- AS (Virginia)
- Tiongkok (Hong Kong)
POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis- Setelah tugas dibuat, gunakan
task_idyang dikembalikan untuk menanyakan hasilnya.task_idberlaku selama 24 jam. Jangan membuat tugas duplikat. Sebagai gantinya, gunakan polling untuk mengambil hasilnya. - Untuk panduan pemula, lihat Call APIs with Postman or cURL.
Parameter permintaanHeader permintaan (Headers)Content-Typestring (Wajib)Tipe konten permintaan. Harus berupa application/json.Authorization string (Wajib)Mengotentikasi permintaan dengan Kunci API Model Studio. Contoh: Bearer sk-xxxx.X-DashScope-Async string (Wajib)Mengaktifkan pemrosesan asinkron. Permintaan HTTP hanya mendukung panggilan asinkron. Harus diatur ke enable.Isi permintaan (Request Body)modelstring (Wajib)Nama model. Nilai tetap: wan3.0-video.input object (Wajib)Informasi input dasar. Salah satu dari prompt atau media harus disediakan.
Properti prompt string (Wajib kondisional)Prompt teks yang digunakan untuk menggambarkan konten video yang diinginkan. Salah satu dari ini atau media harus disediakan.Mendukung bahasa Tionghoa dan Inggris. Setiap karakter Tionghoa atau huruf dihitung sebagai satu karakter, dengan batas maksimum 20.000 karakter. Konten yang melebihi batas ini akan dipotong secara otomatis.Dalam mode referensi, Anda dapat menggunakan "Gambar 1", "Video 1", dll. dalam prompt untuk merujuk ke aset media sesuai urutan dalam array media.media array (Wajib kondisional)Array aset media yang mendukung gambar, video, audio, file, dan halaman web sebagai input. Salah satu dari ini atau prompt harus disediakan.
Properti type string (Wajib)Jenis aset media. Nilai valid:
string (Wajib)URL aset media atau data yang dikodekan Base64.
Gambar input (type=first_frame / last_frame / reference_image) URL gambar atau data yang dikodekan Base64.Batasan gambar:
Video input (type=reference_video) URL video referensi.Batasan video:
Audio input (type=reference_audio) URL audio referensi.Batasan audio:
File input (type=file) URL file.Batasan file:
Tautan web input (type=link) URL halaman web publik. Hanya mendukung penguraian halaman web yang dapat diakses publik dan tidak memerlukan login (seperti berita, blog, akun publik, dll.).Format input yang didukung:
object (Opsional)Parameter pemrosesan video.
Properti resolution string (Opsional)Tingkat resolusi video yang dihasilkan. Nilai default: 1080P. Nilai valid:
string (Opsional)Rasio aspek video yang dihasilkan. Nilai valid:
integer (Opsional)Durasi video yang dihasilkan, dalam satuan detik. Nilai default: 5.
boolean (Opsional)Apakah video output berisi audio.
integer (Opsional)Seed acak. Digunakan untuk mereproduksi hasil generasi. Rentang nilai: -1 atau [0, 2147483647]. Jika diatur ke -1 atau tidak ditentukan, sistem secara otomatis menghasilkan seed acak. Meskipun menggunakan seed yang sama, hasil generasi mungkin tidak selalu identik.prompt_extend boolean (Opsional)Apakah akan mengaktifkan penulisan ulang prompt cerdas. Saat diaktifkan, model bahasa besar akan menulis ulang prompt input. Ini secara signifikan meningkatkan kualitas generasi untuk prompt yang lebih pendek, tetapi meningkatkan latensi.
boolean (Opsional)Apakah akan menambahkan Watermark.
|
Masukkan file melalui tipe file, dan model secara otomatis memahami konten file tersebut untuk menghasilkan video. |
Parameter responsoutputobjectInformasi output tugas.
Properti task_id stringID tugas. Berlaku untuk kueri selama 24 jam.task_status stringStatus tugas.
Nilai enumerasi
stringIdentifikasi permintaan unik untuk pelacakan dan troubleshooting.code stringKode kesalahan. Dikembalikan hanya untuk permintaan yang gagal. Lihat Error codes.message stringPesan kesalahan detail. Dikembalikan hanya untuk permintaan yang gagal. Lihat Error codes. |
Simpan task_id untuk menanyakan status dan hasil tugas. |
Langkah 2: Tanyakan hasil berdasarkan ID tugas
- Singapura
- Beijing
- AS (Virginia)
- Tiongkok (Hong Kong)
GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}- Rekomendasi polling: Generasi video memerlukan beberapa menit. Gunakan mekanisme polling dengan interval yang wajar, misalnya 15 detik.
- Transisi status tugas: PENDING → RUNNING → SUCCEEDED atau FAILED.
- Tautan hasil: Setelah tugas berhasil, URL video yang berlaku selama 24 jam dikembalikan. Unduh dan simpan video ke penyimpanan permanen, seperti OSS.
task_idmasa berlaku: 24 jam. Setelah periode ini, kueri akan mengembalikan status tugas sebagaiUNKNOWN.
Parameter permintaanHeader permintaan (Headers)Authorizationstring (Wajib)Mengotentikasi permintaan dengan Kunci API Model Studio. Contoh: Bearer sk-xxxx.Parameter jalur URL (Path parameters)task_idstring (Wajib)ID tugas. |
Ganti {task_id} dengan nilai task_id yang dikembalikan oleh panggilan API sebelumnya. task_id berlaku untuk kueri selama 24 jam, Ganti {WorkspaceId} dengan workspace ID Anda yang sebenarnya. |
Parameter responsoutputobjectInformasi output tugas.
Properti task_id string (Wajib)ID tugas.task_status stringStatus tugas.
Nilai enumerasi
stringWaktu saat tugas diajukan. Waktu dalam UTC+8 dan formatnya YYYY-MM-DD HH:mm:ss.SSS.scheduled_time stringWaktu saat tugas dieksekusi. Waktu dalam UTC+8 dan formatnya YYYY-MM-DD HH:mm:ss.SSS.end_time stringWaktu saat tugas selesai. Waktu dalam UTC+8 dan formatnya YYYY-MM-DD HH:mm:ss.SSS.orig_prompt stringPrompt input asli.video_url stringURL video yang dihasilkan. Dikembalikan saat tugas berhasil.code stringKode kesalahan. Dikembalikan hanya untuk permintaan yang gagal. Lihat Error codes.message stringPesan kesalahan detail. Dikembalikan hanya untuk permintaan yang gagal. Lihat Error codes.objectStatistik output. Hanya menghitung hasil yang berhasil.
Properti video_count integerJumlah video yang dihasilkan. Tetap bernilai 1.duration floatTotal durasi video, dalam satuan detik. Jika tidak ada video referensi input, nilainya sama dengan durasi video output; jika ada video referensi input, nilainya sama dengan jumlah durasi video input dan durasi video output.input_video_duration floatDurasi video input, dalam satuan detik. Mengembalikan 0,0 jika tidak ada video yang diberikan sebagai input.output_video_duration floatDurasi video output, dalam satuan detik.fps integerLaju bingkai video yang dihasilkan. Nilai default: 30.SR integerResolusi video yang dihasilkan. Contoh: 720.ratio stringRasio aspek video yang dihasilkan. Contoh: 16:9.stringIdentifikasi permintaan unik untuk pelacakan dan troubleshooting. |
URL video hanya berlaku selama 24 jam dan kemudian secara otomatis dipurge. Segera simpan video yang dihasilkan. |