Model Dunia Genie 3: Cara Menghasilkan Lingkungan Interaktif
Telaah mendalam tentang teknologi model dunia Genie 3: cara menciptakan ruang 3D yang konsisten dan dapat dikontrol dari prompt.
Semuanya bermula dari satu kendala kecil. Saya sedang mencoba membuat prototipe adegan interaktif sederhana untuk sebuah workshop—tidak ada yang mewah, hanya ruang kecil di mana sebuah karakter bergerak dan dunia merespons dengan cara yang masuk akal. Saya tidak ingin membuka game engine, menyambungkan fisika, dan menghabiskan sore hari mengejar tabrakan. Saya terus menemukan sebutan tentang Genie dan “world models,” dan saya bertanya-tanya apakah Genie 3 world models bisa menanggung sebagian beban itu.
Saya Dora. Saya tidak mengejar hal terbaru. Saya mengejar jenis kecepatan yang diam—jenis yang mengurangi beban mental. Baru-baru ini (Januari ini) saya menelusuri kembali langkah-langkah saya dengan catatan yang lebih segar. Inilah yang menonjol: bukan daftar fitur, melainkan bagaimana rasanya menggunakan world models untuk tugas-tugas kecil yang nyata, dan di mana pendekatan gaya Genie membantu atau malah menghalangi.
Apa itu world models
World model adalah simulator yang dipelajari. Alih-alih membuat kode aturan secara manual (gravitasi bekerja seperti ini, dinding bekerja seperti itu), Anda melatih model untuk memprediksi apa yang terjadi selanjutnya dalam sebuah adegan. Jika modelnya bagus, ia mempelajari bukan hanya tampilan frame, tetapi aturan mendasar yang membuat frame-frame itu masuk akal dari waktu ke waktu.
Saya menyukai kerangka awal dari karya Ha dan Schmidhuber tentang World Models: kompres dunia menjadi representasi yang ringkas, pelajari bagaimana representasi itu berubah, dan gunakan untuk merencanakan atau bertindak. Penelitian selanjutnya memperluas ide tersebut ke video. Model memperhatikan banyak rekaman dan mempelajari semacam fisika internal—setidaknya bagian yang bisa dilihatnya. Kemudian Anda merangsang model (dengan tindakan), dan ia memprediksi kondisi berikutnya.
Ini berbeda dari generator teks-ke-video. Generator biasa menggambar frame yang masuk akal. World model mencoba mempertahankan sebab dan akibat. Jika saya menekan kiri, pemain bergerak ke kiri. Jika bola mengenai lantai, ia memantul dengan cara yang konsisten dengan apa yang dipelajarinya. Hasilnya adalah interaktivitas. Model tidak sekadar menunjukkan dunia kepada Anda: ia membiarkan Anda hidup di dalam aturan yang dipelajarinya.
Dalam praktiknya, perasaan “berada di dalam” itu bergantung pada beberapa hal:
- ruang kondisi yang ringkas (agar model dapat berpikir dengannya),
- model dinamika (agar model tahu bagaimana kondisi berubah),
- dan cara menghubungkan input Anda dengan konsep tindakan model.
Sistem bergaya Genie bertujuan melakukan ketiganya. Itulah janji yang menarik saya: dapatkah Genie 3 world models membuat saya melewati pengkabelan untuk prototipe kecil dan tetap mendapatkan perilaku yang masuk akal?
Bagaimana Genie 3 membangun dunia
Saya menggunakan “Genie 3” di sini sebagai singkatan terkini yang saya lihat untuk gelombang terbaru karya Genie. Landasan yang terdokumentasi adalah makalah 2024, Genie: Generative Interactive Environments, yang menjelaskan pendekatan intinya. Versi atau nama bisa berubah-ubah di internet, tetapi mekanismenya kurang lebih tetap sama.
Inilah intinya, dalam bahasa yang sederhana, berdasarkan dokumen dan apa yang bisa saya reproduksi:
- Pertama, sistem mempelajari kosakata visual. Frame mentah berantakan dan berdimensi tinggi, jadi Genie melatih tokenizer yang mengompresi video menjadi token diskrit. Ini membuat dunia “berbicara” dalam kode ringkas yang bisa dimanipulasi model.
- Kedua, model mempelajari bagaimana dunia bergerak. Model dinamika memprediksi token berikutnya berdasarkan token saat ini dan semacam konsep tindakan. Di sinilah mulai terasa seperti fisika. Model tidak menghitung massa atau gaya: ia memprediksi pola gerak yang konsisten yang terlihat seperti fisika karena sering dilihatnya.
- Ketiga, model mempelajari tindakan dari video. Alih-alih membaca kontrol internal game, Genie menyimpulkan ruang tindakan dengan menonton orang berinteraksi dalam video (rekaman gameplay membantu). Kemudian, saat runtime, sinyal keyboard atau kontroler Anda dipetakan ke ruang tindakan yang dipelajari tersebut. Ini seperti berbicara dalam dialek yang dipahami model.
- Terakhir, model mendekode token kembali menjadi frame yang bisa Anda lihat dan interaksikan, selangkah demi selangkah.
Yang membuat ini berguna bagi saya bukan kebaruannya, melainkan tingkat upaya yang dibutuhkan. Saya mulai dengan klip pendek (sekitar 20 detik) dari karakter yang bergerak dalam platformer 2D. Setelah beberapa kali proses—tokenisasi, pemasangan kepala dinamika kecil di atas backbone yang telah dilatih sebelumnya, kalibrasi pemetaan input—saya bisa mendorong karakter dan melihat dunia merespons. Proses pertama rapuh. Tepi bergetar: karakter kadang-kadang menembus dinding seperti hantu. Tetapi siklusnya pendek: sesuaikan, jalankan, amati. Setelah satu malam bereksperimen, perilakunya menetap menjadi sesuatu yang bisa saya demo tanpa harus terus-menerus meminta maaf.
Dua momen kecil menonjol:
- Kontrol laten terasa lebih ramah. Bekerja dengan token alih-alih piksel berarti perubahan kecil memiliki efek yang dapat diprediksi. Saya tidak menghabiskan waktu mengejar artefak per-piksel.
- Pemetaan input adalah pekerjaan yang sebenarnya. Menerjemahkan penekanan tombol saya ke ruang tindakan yang disimpulkan model membutuhkan lebih banyak percobaan dan kesalahan dari yang saya perkirakan. Namun ketika berhasil, rasa kendali langsung terasa—seperti belajar sensitivitas trackpad baru.
Catatan penting: Anda tetap membutuhkan data yang sesuai dengan perilaku yang Anda inginkan. Jika klip Anda tidak menunjukkan lompatan, jangan harap lompatan yang bersih. Model bisa berhalusinasi, tetapi ia akan berhalusinasi sesuai pola yang dipelajarinya.
Konsistensi dan penanganan fisika
Ketika orang mengatakan “terasa nyata,” mereka biasanya menunjuk pada dua hal: waktu mengalir sebagaimana mestinya, dan ruang tetap terjaga. World models bergaya Genie membuat kemajuan pada keduanya, dengan beberapa keanehan.
Konsistensi temporal
Proses awal saya memiliki goyangan yang sama yang mungkin pernah Anda lihat dalam model video: objek melayang, lalu kembali tiba-tiba. Konsistensi temporal membaik ketika saya memanfaatkan kekuatan model alih-alih melawannya. Rollout yang lebih pendek dengan input tindakan yang sering memberikannya jangkar yang lebih jelas. Mencoba mendorong 10 detik generasi bebas adalah tempat di mana jahitannya terlihat.
Secara praktis, model cenderung menjaga momentum jangka pendek dengan sangat baik. Jika bola menggelinding, ia terus menggelinding. Jika karakter sedang melompat, busurnya berlanjut dengan mulus untuk beberapa lusin frame berikutnya. Busur yang lebih panjang—terutama setelah pan kamera atau oklusi—adalah tempat di mana model bisa kehilangan benang dan menemukan yang baru. Saya mulai menambahkan “ping” lembut (input no-op kecil setiap beberapa frame) untuk mengingatkannya bahwa waktu masih berjalan dengan cara yang terkontrol. Itu mengurangi beberapa flicker.
Ada juga pertanyaan tentang latensi versus stabilitas. Dekoding yang lebih cepat memang menggoda, tetapi saya memperhatikan biaya kecil: ketika saya mendorong untuk kecepatan, jitter temporal kecil muncul—hampir tidak terlihat, tetapi Anda merasakannya saat mengemudi. Mengatur decoder ke pengaturan yang sedikit lebih lambat dan stabil membuat loop kontrol terasa lebih mantap. Itu tidak menghemat menit saya, tetapi menghemat keraguan saya.
Koherensi spasial
Koherensi spasial adalah apakah benda-benda tetap di tempatnya, dan apakah dunia menghormati tata letaknya sendiri. Tabrakan adalah uji yang jelas. Dengan model bergaya Genie, tabrakan dipelajari, bukan dikodekan. Jika dinding jelas dan konsisten dalam klip pelatihan, model biasanya memperlakukannya sebagai batas. Jika dinding lunak atau ambigu, harapkan kebocoran.
Saya punya lebih banyak keberhasilan dengan adegan sederhana dan kontras tinggi. Platformer dengan siluet yang bersih menghasilkan lebih sedikit pelanggaran batas daripada adegan yang ramai dengan lapisan paralaks. Ketika model memang merusak ruang—seperti membiarkan karakter meluncur melewati sudut—saya menemukan dua solusi:
- Sesuaikan ruang tindakan. Kadang-kadang model mematuhi, tetapi kontrolnya mendorong terlalu keras. Membatasi besaran input maksimum mencegahnya “mengalahkan” dinding yang dipelajari.
- Recenter dengan keyframe. Memasukkan frame nyata setiap beberapa detik (alih-alih autoregression murni) menarik model kembali ke peta yang sebenarnya dipelajarinya. Ini tidak elegan, tetapi berhasil.
Satu catatan lagi: gerakan kamera. Jika kamera stabil dalam video sumber, model mempertahankan ruang dengan lebih baik. Jika kamera melayang, model kadang-kadang mencampurkan gerakan dunia dengan gerakan kamera, dan objek berenang. Kunci kamera jika Anda bisa.
Keunggulan dibanding metode tradisional
Dibandingkan dengan prototipe yang dibangun secara manual dalam game engine, Genie 3 world models terasa seperti pertukaran: saya menyerahkan presisi, dan saya mendapatkan kecepatan serta fleksibilitas. Untuk eksperimen kecil, itu adalah kesepakatan yang adil.
- Biaya setup yang lebih rendah. Saya tidak perlu merancang fisika atau peta tile. Saya memasukkan klip, memetakan input, dan sudah memiliki sesuatu yang interaktif di akhir hari. Waktu yang dihemat tidak besar secara keseluruhan (mungkin beberapa jam), tetapi berkurangnya beban mental memang berarti. Lebih sedikit keputusan, lebih sedikit jalan buntu.
- Transfer gaya alami. Karena visual dan dinamika dipelajari bersama, “nuansa” dari klip sumber terbawa. Jika Anda menginginkan dunia yang suram dan berbintik yang tetap merespons input Anda, ini membawa Anda ke sana tanpa perlu melakukan pass pencahayaan.
- Iterasi yang terpadu. Penyesuaian terjadi di satu tempat—data dan model. Saya tidak berpindah-pindah antara panel fisika, shader, dan state machine. Ini adalah satu loop umpan balik.
Tentu saja, ada batasnya. Jika Anda membutuhkan tabrakan yang sempurna piksel, fisika deterministik, atau horizon panjang tanpa drift, mesin tradisional masih menang. Dan jika data Anda tidak menunjukkan suatu perilaku, model tidak akan dapat menginventasinya secara andal. Untuk produksi atau apa pun yang kritis terhadap keselamatan, saya akan memasangkan world model dengan pembatas atau kembali ke kode.
Mengapa ini penting bagi saya: world models mengurangi hambatan untuk mencoba sebuah ide. Bukan untuk merilis, tetapi untuk melihat apakah ide itu layak untuk dilanjutkan. Jika Anda hidup dalam prototipe, itu adalah hadiah.





