model

Vidu: Q2 Text-to-Video

Markdown · JSON

Vidu: Q2 Text-to-Video

Vidu Q2 membuat video dari arahan adegan tertulis, dengan durasi 1–10 detik, keluaran 540p, 720p, atau 1080p, serta lima rasio aspek. Profil viduq2 ini menggunakan prompt untuk gaya dan gerakan serta mengembalikan hasil melalui tugas asinkron.

Tentang model

Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.

Vidu Q2 membuat video dari adegan tertulis melalui profil teks-ke-video yang dipilih dengan viduq2. Masukan wajibnya adalah pengenal model yang tepat dan prompt yang mendeskripsikan adegan. Gunakan untuk konsep produk singkat, tampilan pembuka, atau aksi karakter yang penampilan dan gerakannya dapat ditentukan dengan kata-kata. Metode yang dikonfigurasi ini adalah teks-ke-video; deskripsinya tidak menetapkan mode gambar rujukan atau penyuntingan video yang terpisah pada selektor.

Susun arahan berdasarkan urutan yang terlihat. Tentukan subjek, lokasi, aksi, ukuran pengambilan gambar, gerakan kamera, dan komposisi akhir. Untuk konsep produk, jelaskan objek di atas meja, cahaya yang bergerak melintasi bahannya, dan kamera yang perlahan mendekat lalu berakhir pada detail yang dapat dikenali. Untuk adegan lokasi, perkenalkan lingkungan sebelum bergerak menuju titik fokus. Sesuaikan aksi dengan panjang klip yang dipilih agar adegan memiliki ruang untuk akhir yang dituju.

Batas prompt adalah 2000 karakter. Letakkan subjek dan aksi utama terlebih dahulu, lalu tambahkan detail pencahayaan, bahan, lingkungan, dan kamera yang mengubah hasil yang diinginkan. Tentukan gaya visual dalam prompt. Panduan khusus Q2 menyatakan bahwa parameter style dan movement_amplitude yang terpisah tidak berpengaruh pada model ini, sehingga preset general atau anime serta pilihan amplitudo gerakan tidak menggantikan deskripsi adegan yang jelas.

Pengaturan durasi khusus model menerima detik bulat dari satu hingga sepuluh. Pilihan resolusi khusus Q2 adalah 540p, 720p, dan 1080p, dengan 720p sebagai bawaan yang didokumentasikan. Pilih durasi dan resolusi bersama berdasarkan aksi serta tujuan penggunaannya. Pengungkapan singkat dan gerakan yang lebih panjang memerlukan pemasaan berbeda; peningkatan durasi yang diminta perlu mendukung urutan yang terlihat, bukan sekadar memanjangkan arahan yang tidak berubah. Periksa dimensi dan panjang klip yang benar-benar dikembalikan ketika menyiapkan penempatan akhirnya.

Pilihan aspect_ratio yang didokumentasikan adalah 16:9, 9:16, 3:4, 4:3, dan 1:1, dengan 16:9 sebagai bawaan. Panduan secara eksplisit menyertakan 3:4 dan 4:3 untuk keluarga Q2. Pilih bingkai sebelum generasi dan jelaskan komposisi yang sesuai: pastikan subjek utama terbaca dalam tampilan potret, atau gunakan lebar bingkai lanskap untuk lingkungan sekitar. Pastikan tampilan penutup cukup jelas untuk halaman yang dituju, presentasi, atau pengolahan teks keterangan berikutnya.

Bidang seed mengendalikan variasi. Menghilangkannya atau memberikan 0 memilih nilai acak; nilai bukan nol memilih opsi seed tetap yang didokumentasikan untuk generasi yang dapat direproduksi. Simpan seed yang dikembalikan bersama prompt dan pengaturan ketika membandingkan versi. Operasi bersama juga mendokumentasikan kontrol audio dan off_peak khusus untuk model Q3. Opsi Q3 itu bukan kemampuan yang ditetapkan pada profil Q2 ini; rencanakan permintaan berdasarkan masukan teks dan keluaran video yang didokumentasikan.

Generasi berlangsung secara asinkron. Pengiriman mengembalikan task_id dan keadaan awal, dengan created digunakan untuk tugas yang baru dibuat. Pertahankan identitas tugas itu selama mengikuti pemrosesan. Kueri hasil yang didokumentasikan menggunakan state=success untuk hasil yang berhasil dan mengembalikan array creations. Setiap entri memiliki URL video dalam creations[].url; simpan setiap video yang dikembalikan, alih-alih menganggap tugas selalu berisi tepat satu hasil generasi.

Dokumentasi hasil juga melaporkan durasi video yang sebenarnya, fps, serta lebar dan tinggi resolusi. Simpan nilai yang dilaporkan tersebut bersama klip jadi, alih-alih memperlakukan laju bingkai atau dimensi dalam contoh sebagai spesifikasi Q2 yang tetap. Respons pembuatan tugas mencakup nilai credits bersama konfigurasi permintaan. Simpan metadata tugas yang dilaporkan dan identitas tugas yang selesai bersama hasil agar setiap video tetap terhubung dengan pengaturan generasinya.

Tinjau seluruh urutan terhadap arahan awal: penampilan subjek, bentuk objek, arah gerak, kesinambungan kamera, dan tampilan akhir yang dituju. Untuk revisi, tentukan detail konkret yang tidak sesuai arahan dan pertahankan bagian adegan yang berhasil. Simpan prompt, selektor yang tepat, pengaturan, identitas tugas, dan video jadi bersama agar perbandingan berikutnya didasarkan pada artefak yang sebenarnya.

Ailoot Ultra · Pemrosesan video POST /v1/videos viduq2

viduq2

Vidu /viduq2

Mulai

Vidu Q2 membuat video dari arahan adegan tertulis, dengan durasi 1–10 detik, keluaran 540p, 720p, atau 1080p, serta lima rasio aspek. Profil viduq2 ini menggunakan prompt untuk gaya dan gerakan serta mengembalikan hasil melalui tugas asinkron.

Masukan yang diterima
Teks
Hasil
Video

Tersedia di Ailoot · masukan & metode

Ailoot Ultra · Pemrosesan video POST /v1/videos
Masukan
text
Keluaran
video
KolomJenisPersyaratanNilai & batasanBawaan
KolommodelJenisstringPersyaratanWajibNilai & batasan
viduq2
Bawaan—
KolompromptJenisstringPersyaratanWajibNilai & batasan
Kondisi: Jelaskan adegan yang akan dibuat. Batas yang didokumentasikan adalah 2000 karakter; Ailoot memeriksa bahwa string tidak kosong dan mempertahankan teksnya.
Bawaan—
KolomdurationJenisintegerPersyaratanOpsionalNilai & batasan
Minimum: 1
Maksimum: 10
Kondisi: Uraian khusus model viduq2 menetapkan 1–10 detik bulat. Tidak ada durasi bawaan khusus model yang didokumentasikan.
Satuan: detik
Bawaan—
KolomseedJenisstringPersyaratanOpsionalNilai & batasan
Kondisi: Hilangkan atau kirim string "0" untuk keacakan. seed bukan nol yang diberikan memilih perilaku seed tetap yang didokumentasikan; tidak ada rentang angka yang ditentukan.
Bawaan—
Kolomaspect_ratioJenisstringPersyaratanOpsionalNilai & batasan
16:9, 9:16, 3:4, 4:3, 1:1
Bawaan16:9
KolomresolutionJenisstringPersyaratanOpsionalNilai & batasan
540p, 720p, 1080p
Kondisi: Daftar khusus model viduq2 mendokumentasikan tingkat-tingkat ini untuk 1–10 detik. Enum dan tabel bersama juga menyebut 360p; keberlakuannya bertentangan dengan daftar tersebut dan tidak dinyatakan di sini.
Bawaan720p
KolomstyleJenisstringPersyaratanOpsionalNilai & batasan
general, anime
Kondisi: Permintaan bersama menerima bidang ini, tetapi dokumentasi secara tegas menyatakan bahwa bidang ini tidak berpengaruh untuk viduq2.
Bawaangeneral
Kolommovement_amplitudeJenisstringPersyaratanOpsionalNilai & batasan
auto, small, medium, large
Kondisi: Permintaan bersama menerima bidang ini, tetapi dokumentasi secara tegas menyatakan bahwa bidang ini tidak berpengaruh untuk model q2.
Bawaanauto
Kombinasi bahan masukan

Parameter metode dan siklus hidup
ParameterKontrak
Parametercontent_typeKontrakapplication/json
ParameterrequiredKontrakmodel, prompt
ParameteroptionalKontrakduration, seed, aspect_ratio, resolution, style, movement_amplitude
Parametermaterial_typesKontraktext
Parameteradditional_propertiesKontraktrue
Parametervalidation_scopeKontrakAiloot memvalidasi string model/prompt yang tidak kosong. Tipe dan batas opsional di bawah ini merupakan kontrak permintaan yang didokumentasikan; bidang permintaan lainnya dipertahankan untuk model yang dipilih.

Alias metode: /v1/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

Buat sekali dan simpan id publik serta polling_url yang dikembalikan.

Periksa operasi awal secara berkala dan baca state; keberhasilan serta hasil creations[].url milik Ailoot menjadi batas penyelesaian.

Unduh setiap URL video milik Ailoot yang dikembalikan; jangan menyimpulkan jumlah keluaran, durasi, atau laju bingkai yang tetap dari contoh.

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.

KonfigurasiJadwal tarifJumlah perkiraanBiaya
KonfigurasiTarif dasar tokenJadwal tarifTarif dasarJumlah perkiraan—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
KonfigurasiPerkiraan biaya pembuatanJadwal tarif—Jumlah perkiraanestimasi satu kali pembuatanBiaya
Keluaran · Perkiraan biaya pembuatan · Perkiraan hanya untuk perbandingan $5.12 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 →

Contoh permintaan

Ailoot Ultra · Pemrosesan video

curl · buat videocurl · baca tugas aslicurl · unduh setiap video milik Anda
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON_REQUEST'
{"model":"viduq2","prompt":"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog. The background consists of enchanting white and golden lights, creating a minimalist still life and an impressive panoramic scene."}
JSON_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
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_POLL'
import json
from pathlib import Path
from urllib.parse import quote,urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
i=r.get("id")
if not isinstance(i,str) or not i:raise SystemExit("Keep original response/headers/id; do not resubmit creation.")
u=urljoin("https://api.ailoot.ai",r.get("polling_url") or "/v1/videos/"+quote(i,safe=""))
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or not p.path.startswith("/v1/videos/"):raise SystemExit("Use the actual Ailoot lookup path.")
Path("poll-url.txt").write_text(u)
PY_POLL
curl --fail-with-body --silent --show-error "$(cat poll-url.txt)" -H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
set -eu
python3 - <<'PY_ASSETS'
import json
from pathlib import Path
from urllib.parse import urlsplit
r=json.loads(Path("status.json").read_text())
if r.get("state")!="success":raise SystemExit("Poll the same original job until its owned result is returned.")
creations=r.get("creations")
if not isinstance(creations,list) or not creations:raise SystemExit("No completed video creations.")
urls=[]
for item in creations:
    value=item.get("url") if isinstance(item,dict) else None
    values=[value] if isinstance(value,str) else value
    if not isinstance(values,list) or not values:raise SystemExit("No completed video URL.")
    for u in values:
        if not isinstance(u,str):raise SystemExit("Invalid returned URL.")
        p=urlsplit(u)
        if p.scheme!="https" or p.netloc!="api.ailoot.ai" or not p.path.startswith("/v1/media/assets/") or not p.path.endswith("/content") or not p.query:raise SystemExit("Wait for the actual Ailoot-owned signed result.")
        urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_ASSETS
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" -o "video-${index}.bin"
  index=$((index + 1))
done < asset-urls.txt

Terima dan simpan hasil

Ailoot Ultra · Pemrosesan video

JSON mempertahankan state native dan array creations, dengan penambahan id/provider_task_id/polling_url publik. URL video yang dipilih kosong sebelum publikasi dan menjadi URL bertanda tangan milik Ailoot setelah penyelesaian.

  • 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 semua hasil yang selesai

Simpan setiap video yang selesai atau berkas yang dikembalikan; ambil setiap URL aset yang benar-benar dikembalikan.

Unduh setiap URL aktual yang dikembalikan dalam creations[].url; indeks konten mengidentifikasi satu keluaran nyata yang dikembalikan.

Jika respons asli perlu diperiksa

Deklarasi yang dipatok tidak mencantumkan status kegagalan terminal. Simpan respons/header/id asli dan periksa operasi yang sama untuk setiap status yang tidak dikenali atau kesalahan result_pending_check; jangan pernah kirim ulang pembuatan yang statusnya tidak diketahui.

Kolom respons
KolomJenisArti
KolomidJenisstringArtiPengenal tugas atau operasi publik Ailoot yang dikembalikan.
Kolomprovider_task_idJenisstringArtiPengenal tugas awal, terpisah dari id publik.
Kolompolling_urlJenisstringArtiJalur pencarian Ailoot yang dikembalikan untuk tugas awal.
Kolomtask_idJenisstring when suppliedArtiPengenal asli yang ada dalam respons pembuatan.
KolomstateJenisstring when suppliedArtiStatus tugas native: created untuk status tertunda yang dipatok dan success untuk penyelesaian.
Kolomerr_codeJenisstring when suppliedArtiDiagnostik tugas; spesifikasi yang disimpan tidak mendeklarasikan daftar kode kesalahan yang dienumerasi.
Kolomcreations[].urlJenisstring|string[]ArtiSetiap URL video selesai yang dipilih diganti dengan URL bertanda tangan milik Ailoot.
Kolomcreations[].video.durationJenisnumber when suppliedArtiDurasi video yang dikembalikan; periksa hasil aktual yang telah selesai.
Kolomcreations[].video.fpsJenisinteger when suppliedArtiLaju bingkai yang dikembalikan; tidak dijanjikan laju bingkai yang tetap.
Kolomcreations[].video.resolution.widthJenisinteger when suppliedArtiLebar keluaran yang dikembalikan dalam piksel.
Kolomcreations[].video.resolution.heightJenisinteger when suppliedArtiTinggi keluaran yang dikembalikan dalam piksel.
Kesalahan dan langkah berikutnya
ResponsKondisiLangkah berikutnya
Respons400 · invalid_request_errorKondisiJSON/model tidak valid, string wajib tidak ada atau kosong, atau indeks content tidak valid.Langkah berikutnya
Respons401 · authentication_errorKondisiKunci API Ailoot tidak valid.Langkah berikutnya
Respons403 · permission_errorKondisiGrup kunci API tidak diizinkan mengakses rute media ini.Langkah berikutnya
Respons404 · not_found_errorKondisiTugas awal atau keluaran yang diminta tidak ada atau tidak dimiliki oleh pengguna/kunci API/grup yang sama.Langkah berikutnya
Respons502 · result_pending_checkKondisiPengiriman awal atau statusnya tidak lengkap atau tidak dapat direkonsiliasi; simpan ID asli dan jangan kirim ulang.Langkah berikutnya
Respons503 · result_pending_checkKondisiPengikatan awal, rute, atau media milik Ailoot masih diperiksa; lanjutkan pemeriksaan operasi awal tersebut.Langkah berikutnya
Respons503 · server_errorKondisiLayanan media atau penyimpanan tugas awal tidak tersedia.Langkah berikutnya

Alias

Alias model

Ailoot Ultra viduq2

Alias jalur metode

/v1/videos/generations

ID pemanggil terkait

viduq2

FAQ · Vidu: Q2 Text-to-Video
Input dan hasil apa yang tersedia?

POST /v1/videos · viduq2: text → video

Kolom apa yang digunakan permintaan?

POST /v1/videos · viduq2: model, prompt, duration, seed, aspect_ratio, resolution, style, movement_amplitude

Batasan apa yang berlaku?

POST /v1/videos · viduq2: duration.minimum: 1; duration.maximum: 10

Rincian selengkapnya

Hubungkan Ailoot ke Claude Code, OpenCode, Hermes, atau aplikasi Anda.

Perusahaan dan portofolio proyeknya

Perusahaan dan portofolio proyeknya: jutaan pelanggan; penjualan miliaran setiap bulan.

Beli token dengan diskon.

Diskon langganan untuk pekerjaan rutin. Kode promo — hingga 50% untuk pembelian token.

Langganan
Pilih paket dengan diskon untuk permintaan rutin Anda.
Kode promo hingga 50%
Masukkan kode saat membeli. Harga dihitung ulang sesuai promosi aktif.
Biaya dalam riwayat
Model, token, dan jumlah tagihan disimpan untuk setiap permintaan.

Pilih langganan · Lihat harga model

Hubungkan API ke produk yang Anda jual.

SaaS, aplikasi, dan bot — sesuai penawaran dan perjanjian lisensi Ailoot. Untuk penjualan kembali, mintalah lisensi reseller.

Aplikasi komersial
Integrasikan pembuatan teks, gambar, video, dan suara dalam fitur berbayar layanan Anda.
Lisensi reseller
Kirim deskripsi proyek dan skema akses. Mintalah ketentuan penggunaan dan penjualan kembali secara tertulis.
Dokumen di situs
Penawaran, perjanjian lisensi, dan kebijakan pemrosesan data tersedia sebelum koneksi.

Minta lisensi reseller · Penawaran dan perjanjian lisensi