← Blog

GLM-5 untuk Orkestrasi Prompt Gambar & Video AI

Gunakan GLM-5 sebagai lapisan penalaran untuk menghasilkan, menyempurnakan, dan merangkai prompt untuk model gambar dan video di WaveSpeed.

9 min read
GLM-5 untuk Orkestrasi Prompt Gambar & Video AI

Hai, saya Dora. Saya sedang mencoba mengubah ide kasar, “mug keramik redup di atas meja linen, cahaya pagi”, menjadi klip produk pendek. Visualnya sudah jelas di kepala saya. Promptnya belum. Saya terus berpindah antara alat gambar, video, dan upscaling, menulis ulang frasa-frasa kecil yang entah bagaimana mengubah segalanya. Rasanya seperti bekerja dalam potongan-potongan.

Tersedia di WaveSpeedAI — harga per-token transparan, endpoint kompatibel OpenAI. GLM 5.1 API → · Lihat semua LLM →

Saya mencoba memasukkan GLM-5 ke tengah-tengah kekacauan itu, bukan sebagai bintang, hanya sebagai orang di depan papan tulis. Tujuan saya sederhana: memperlakukan GLM-5 sebagai orkestrator prompt untuk model gambar dan video. Frasa yang selalu saya catat adalah “GLM-5 image video prompt,” karena itulah tugasnya: mengambil deskripsi biasa, dan mengubahnya secara konsisten menjadi prompt yang dihormati oleh model downstream.

Mengapa LLM yang kuat penting untuk pipeline gambar/video

Saya tidak butuh satu model yang melakukan segalanya. Saya butuh satu model yang mengungkapkan sesuatu dengan jelas, dengan cara yang sama, setiap saat. Itulah yang membuat pipeline visual berhasil atau gagal.

Dengan gambar dan video, kata-kata kecil mengubah output secara besar, jarak kamera, panjang fokal, kata sifat material, bahkan urutan kemunculannya. Jika Anda pernah menambahkan “cahaya balik yang tersebar” di bagian akhir dan menyaksikan seluruh suasana berubah, Anda tahu perasaannya.

Dulu saya membuat setiap prompt secara manual untuk setiap alat: satu untuk FLUX, satu lagi untuk WAN, satu lagi untuk upscaler. Ini berhasil, tapi tidak skalabel, dan menguras perhatian. LLM yang kuat di tengah melakukan tiga hal untuk saya:

  • Menormalisasi bahasa: mengubah brief kasual menjadi skema yang dipahami setiap model.
  • Menambahkan batasan: membatasi gaya dan spesifikasi teknis agar variasi tidak menyimpang.
  • Menyimpan memori: membawa pilihan (kamera, palet, catatan produk) lintas alat tanpa perlu saya ketik ulang.

Ini bukan tentang menghemat menit dalam mengetik. Ini tentang menghemat penilaian-penilaian kecil yang menghabiskan sesi kerja. Ketika GLM-5 menjaga struktur tetap stabil, saya bisa melihat perubahan dengan jelas, apa yang berubah, dan mengapa.

GLM-5 sebagai orkestrator prompt

Saya tidak mencari fitur-fitur. Saya hanya bertanya: bisakah GLM-5 mengambil deskripsi polos saya, membentuknya untuk model yang tepat, dan melacak segalanya di setiap langkah? Inilah tampilannya dalam praktik.

Menghasilkan prompt FLUX dari deskripsi alami

Putaran pertama: beri GLM-5 brief singkat dalam bahasa Inggris biasa dan minta prompt siap-FLUX dengan bidang eksplisit, subjek, kamera, pencahayaan, material, latar belakang, batasan warna, negatif. Saya meminjam struktur dari catatan model FLUX dan beberapa panduan prompt publik, lalu membuatnya membosankan dengan sengaja. Membosankan berarti dapat diulang.

Kejutan kecil: GLM-5 pandai menyimpulkan detail yang hilang secara diam-diam (misalnya, menambahkan ekuivalen 50mm ketika saya lupa memilih panjang fokal). Saya memintanya memberi label pada asumsi sehingga saya bisa menerima atau menolaknya. Itu memangkas beberapa bolak-balik.

Yang tidak berjalan semulus itu: GLM-5 terkadang menggunakan kata sifat rumit yang tidak saya inginkan (“ethereal,” “stunning”). Saya menambahkan aturan, “bahasa konkret, utamakan fotografi”, dan hal-hal berlebihan itu berkurang.

Rantai: prompt GLM-5 → video WAN 2.5 → upscale

Setelah prompt gambar stabil, saya meminta GLM-5 menerjemahkannya ke prompt video untuk WAN 2.5. Pemetaannya tidak 1:1. Video membutuhkan gerakan, timing, dan batasan yang diabaikan oleh prompt gambar. Saya mengambil template sederhana dari dokumentasi WAN dan meminta GLM-5 mengisi: beat gerakan, pergerakan kamera (atau tidak ada), durasi, aksi subjek, dan catatan kontinuitas agar frame pertama bisa cocok dengan render gambar.

Dua catatan lapangan:

  • Jika saya membiarkan GLM-5 menambahkan gerakan kamera secara default, WAN 2.5 terkadang menganimasi adegan secara berlebihan. Mengunci gerakan ke satu sumbu atau membuatnya statis menghasilkan loop yang lebih bersih.
  • Mencocokkan temperatur warna antara gambar dan video ternyata lebih penting dari yang saya perkirakan. Saya meminta GLM-5 membawa target white balance numerik (misalnya, 5200K) antar langkah.

Untuk upscaling, saya membuatnya sederhana dan deterministik: prompt hanya untuk intensi tekstur (matte vs glossy), toleransi noise, dan bias penajaman. Panduan sederhana menghasilkan lebih sedikit artefak.

Ekspansi prompt batch untuk pengujian A/B

Di sinilah GLM-5 paling terasa seperti rekan kerja. Saya akan memintanya menghasilkan lima mikro-variasi yang masing-masing mengubah tepat satu variabel: panjang fokal, tekstur meja, waktu dalam sehari, atau rentang saturasi. Tidak ada penulisan ulang puitis. Hanya satu delta bersih per varian. Ia memberi label pada masing-masing dengan alasan dan perkiraan risiko (misalnya, “mungkin memunculkan sorotan spekuler”).

Ini tidak menghemat waktu pada awalnya, saya masih harus memilah yang baik dari yang buruk. Tapi pada batch ketiga, saya menyadari upaya mental lebih rendah. Strukturnya membuat perbandingan menjadi jujur. Saya benar-benar bisa melihat pilihan mana yang menang, bukan hanya prompt mana yang terdengar lebih bagus.

Alur kerja agentik: GLM-5 merencanakan generasi multi-langkah

Saya tidak mengaktifkan “mode agen” dan pergi begitu saja. Saya meminta GLM-5 merencanakan langkah-langkahnya, memeriksa asumsi, lalu menunggu saya. Loop sederhana: rencanakan → usulkan prompt → dapatkan edit saya → jalankan → rangkum.

Ini membantu untuk memberi GLM-5 daftar periksa kecil di depan:

  • Klarifikasi tujuan dalam satu kalimat.
  • Tanyakan hal yang tidak diketahui (kamera, palet, gerakan).
  • Buat prompt pertama untuk gambar, lalu terjemahkan ke video.
  • Pertahankan blok batasan bersama: catatan SKU produk, warna merek, rasio aspek, gerakan maksimum.
  • Setelah setiap render, catat apa yang berubah dan apa yang perlu dipertahankan.

Contoh: pemotretan produk → 5 sudut → video

Saya mencoba ini dengan pemotretan produk minimal: mug keramik, meja linen, cahaya pagi yang lembut. Tugasnya: lima still dari sudut berbeda, lalu loop 6–8 detik.

Yang saya amati (Feb 2026, tiga sesi):

  • Langkah 1, Set sudut: GLM-5 mengusulkan lima sudut kamera dengan jarak dan ketinggian eksplisit (misalnya, 1,2m tinggi, 0,6m ke belakang, 35° ke bawah). Spesifisitas itu penting. Ini menjaga komposisi tetap konsisten di seluruh varian.
  • Langkah 2, Kontrol tekstur: Untuk linen, GLM-5 menyarankan menghindari cahaya samping yang kuat untuk mencegah moiré saat upscaling. Tidak selalu benar, tapi kehati-hatian itu menyelamatkan satu pengambilan yang penuh noise.
  • Langkah 3, Handoff video: Saat beralih ke WAN 2.5, ia memperlakukan still utama sebagai “frame nol.” Ia membawa lensa, white balance, dan kompensasi eksposur. Lebih sedikit kejutan.
  • Langkah 4, Pemeriksaan kewarasan: Setiap dua render, GLM-5 merangkum drift: “kehangatan +6%, bayangan lebih dalam, refleksi muncul.” Catatan-catatan kecil ini memudahkan saya memutuskan kapan harus berhenti.

Batasan: Saya tidak membiarkan GLM-5 memilih musik atau beat tempo di luar catatan gerakan. Ketika ia mencoba menjadi “kreatif,” ia menambahkan gestur yang tidak cocok untuk produk. Pengendalian diri bekerja lebih baik di sini.

Perbandingan kualitas prompt: output GLM-5 vs GLM-4.7

Saya menjalankan deskripsi alami yang sama melalui GLM-4.7 dan GLM-5, lalu menggunakan output tanpa perubahan. Bukan uji laboratorium, hanya percobaan yang akan saya lakukan sebelum tenggat waktu.

Brief yang saya gunakan: “Mug keramik redup di atas meja linen, cahaya pagi yang lembut, palet netral, tanpa merek. Bersih, tenang, realistis.”

Yang saya lihat:

  • Disiplin struktur: GLM-5 lebih sering mengikuti skema. GLM-4.7 menyimpang ke frasa gaya (“dreamy,” “elegant”) yang mendorong FLUX ke tampilan lifestyle. GLM-5 tetap pada kamera, cahaya, material.
  • Jangkar numerik: GLM-5 menawarkan default numerik sederhana (35mm, f/4, 5200K) dan memberi label sebagai asumsi. GLM-4.7 cenderung melewatkan angka kecuali diminta.
  • Prompt negatif: GLM-5 menyertakan negatif praktis (“bokeh balls, sorotan glossy, kompresi telefoto”) yang mengurangi artefak dalam gambar uji saya. Negatif GLM-4.7 bersifat generik.
  • Terjemahan ke video: GLM-5 menambahkan skrip gerakan sederhana dan timing; GLM-4.7 sebagian besar hanya mengulang prompt gambar dengan kata “video pendek.” WAN 2.5 lebih menghormati timing GLM-5.

Poin tandingan kecil: GLM-4.7 terkadang menghasilkan prompt yang terdengar lebih bagus dan menurut mata saya cocok untuk mood board. Jika Anda dalam mode konseptualisasi, nada itu bisa berguna. Tapi untuk handoff produksi, saya lebih suka pengendalian diri GLM-5.

Ini memberi saya pola bahasa yang bisa diulang GLM-5 secara konsisten.

Contoh kode — pipeline lengkap dengan WaveSpeed SDK

Berikut adalah contoh yang disederhanakan untuk menunjukkan bentuk alur kerja yang saya gunakan. Ganti kunci dan endpoint dengan milik Anda sendiri. Saya menjalankan variasi ini pada 9 Feb 2026. Ini tidak elegan. Tapi dapat diandalkan.

# pip install wavespeed sdk hypothetical

from wavespeed import GLM5, Flux, WAN25, Upscaler


glm = GLM5(api_key=GLM5_KEY)

flux = Flux(api_key=FLUX_KEY)

wan = WAN25(api_key=WAN_KEY)

up = Upscaler(api_key=UPSCALE_KEY)


brief = {

"subject": "muted ceramic mug on a linen table",

"mood": "soft morning light, neutral palette",

"constraints": {"aspect_ratio": "4:5", "brand_colors": ["#E8E4DA", "#8D8A83"]}

}

# 1) Minta GLM-5 menormalisasi brief untuk FLUX

flux_prompt = glm.generate(

system="Return a FLUX-friendly prompt with fields: subject, camera, lighting, materials, background, color, negatives. "

"Photography-first, numeric where helpful, minimal adjectives. Label assumptions.",

user=brief,

format={

"type": "object",

"properties": {

"subject": {"type": "string"},

"camera": {"type": "object"},

"lighting": {"type": "object"},

"materials": {"type": "object"},

"background": {"type": "string"},

"color": {"type": "object"},

"negatives": {"type": "array", "items": {"type": "string"}},

"assumptions": {"type": "array"}

},

"required": ["subject", "camera", "lighting", "negatives"]

}

)

# 2) Render gambar

img = flux.generate_image(prompt=flux_prompt, seed=4217, steps=30, guidance=3.5)

# 3) Terjemahkan ke prompt video WAN 2.5

wan_prompt = glm.generate(

system="Translate the FLUX prompt into a WAN 2.5 prompt. Include: duration 6-8s, motion beats, camera movement (static or gentle pan), "

"continuity with the image (lens, white balance), and a list of negatives.",

user={"flux_prompt": flux_prompt, "reference_frame": img.preview_url}

)


vid = wan.generate_video(prompt=wan_prompt, seed=4217, fps=24, duration=7)

# 4) Upscale dengan penajaman terkontrol + noise

final = up.enhance(

input=vid.keyframe(0),

noise_reduction="low",

sharpening="moderate",

texture_bias="matte"

)

# 5) Log ringkasan drift

drift = glm.generate(

system="Summarize differences between target brief and outputs. 3 bullets: warmth, contrast, motion.",

user={"brief": brief, "image": img.metrics, "video": vid.metrics}

)

print(drift)

Saya menyimpan prompt LLM dekat dengan kode agar saya di masa depan bisa melihat mengapa pilihan-pilihan itu dibuat. Jika Anda lebih suka template YAML, itu juga bisa. Yang penting adalah GLM-5 mengembalikan bidang terstruktur yang bisa Anda teruskan langsung ke fungsi render tanpa perlu diedit.

Beberapa batasan kecil yang membantu:

  • Seed semuanya sampai Anda menyukai tampilan dasarnya. Kemudian lepaskan seed hanya di tempat Anda menginginkan variasi.
  • Bawa white balance sebagai angka, bukan suasana.
  • Minta GLM-5 membuat daftar asumsi dan biarkan Anda menerima/menolaknya sebelum rendering.

Jika stack Anda tidak menggunakan WaveSpeed, idenya tetap berlaku. LLM duduk di antara catatan Anda dan endpoint model, menerjemahkan dan mencatat skor.