Model coding buatan Tiongkok benar-benar menggila! Uji coba KAT-Coder-Pro V2.5 dari Kuaishou menutup bug nyata dalam 1 menit 20 detik, membuat Minecraft dengan 1.395 baris kode tanpa bantuan, kemampuan teknis jangka panjang setara Opus 4.8, tidak perlu lagi menjadi asisten AI.Penulis artikel, sumber: Sinar Zhiyuan
Apakah AI Coding sudah sampai pada tahap ini?
Seberapa hebat pun klaimnya, lebih baik tunjukkan lewat praktik nyata. Selanjutnya, kita akan langsung menguji KAT-Coder-Pro V2.5 dalam lebih banyak skenario nyata untuk menggali kemampuan sejatinya.
Tidak bermain-main lagi, langsung terungkap—AI yang dimasukkan ke CC ini adalah KAT-Coder-Pro V2.5 yang dirilis oleh Kuaishou, sebuah model Agentic Coding tingkat unggulan. AI lain mungkin masih bersaing dalam “membantu Anda melengkapi sebagian kode,” sementara ini bertujuan untuk menyelesaikan “seluruh proyek secara langsung.” Inilah jurang terakhir yang menghambat semua model Coding.
Pertanyaan pertama: Membuat Minecraft sendiri, langsung bisa dimainkan
Penalti tadi hanya pemanasan, sekarang kita tingkatkan intensitasnya ke V2.5, dan langsung mereplikasi Minecraft.
Prompt juga memiliki lebih dari 400 baris. Kompres sedikit, kira-kira seperti ini:
File HTML tunggal, Three.js, sudut pandang orang pertama. 14 jenis blok, masing-masing memiliki kekerasan, transparansi, dan atribut tabrakan, batu dasar tidak dapat dihancurkan. Semua tekstur harus dihasilkan secara programatis menggunakan Canvas dengan gambar 16×16 piksel—tidak boleh menggunakan gambar eksternal. Gunakan noise dengan seed tetap untuk menghasilkan sebuah pulau dengan bukit, pantai, air dangkal, dan tambang bawah tanah. Hasilkan secara prosedural hutan ek, ditambah sebuah pondok di tengah hutan yang bisa dimasuki (lantai kayu, tiang kayu bulat, jendela kaca, atap batu bulat, cerobong bata), serta buat jalan setapak batu bulat yang menghubungkan titik spawn ke pondok tersebut. Tampilkan kerangka saat menargetkan, tekan dan tahan tombol kiri untuk menampilkan progress bar, saat menggali akan menghasilkan partikel serpihan. Efek suara dihasilkan secara langsung menggunakan Web Audio.
Segera, sebuah dunia «Minecraft» yang dapat dimainkan selesai. Klik «Masuk Dunia», mouse terkunci di dalam layar. Di bawah kaki adalah rumput, di atas kepala langit biru, jalan kecil batu bulat membentang dari sisi kaki, melingkari pohon ek, menuju rumah kecil di belakang pohon—dinding papan, tiang kayu, atap batu bulat, dan satu cerobong asap bata merah, dengan jendela kaca terpasang di sekeliling dinding. Selanjutnya, berjalanlah ke area kosong di depan rumah kayu, tahan tombol kiri, «pop»—blok rumput hancur. Sekitar sepuluh kubus hijau kecil melompat keluar dari lubang, berputar-putar jatuh ke bawah. Warna serpihan itu tepat sama dengan warna blok yang baru saja digali. Kemudian, geser bilah alat untuk memilih bahan seperti pasir, kayu ek, dan batu—waktunya untuk membangun rumah dengan bebas. Yang mengejutkan, di dunia kecil ini, kami juga menyaksikan matahari terbenam yang mewarnai seluruh cakrawala.
Pertanyaan kedua: Simulasikan tata surya, menggunakan satu "jam" yang sama
Mari uji lagi satu interaksi, biarkan V2.5 membuat tata surya dengan tangan kosong. Untuk menguji kemampuannya, kami memberikan batasan yang sangat ketat:
1000+ baris prompt, poin utamanya sebagai berikut:
Satu file HTML, murni Canvas 2D, dilarang menggunakan Three.js. Delapan planet dan sebelas satelit harus menggunakan parameter orbit sejati epoch J2000—sumbu semi mayor, eksentrisitas, inklinasi, bujur simpul naik, parameter perisentrum, dan sudut anomali rata-rata. Dilarang keras menggunakan angle += speed. Planet dan satelit harus menyelesaikan persamaan Kepler menggunakan metode Newton-Raphson, dan semua menggunakan daysSinceJ2000 yang sama. Rotasi Venus dan Uranus harus bernilai negatif. Triton harus bergerak retrograde dengan inklinasi 157,3°. Cincin Saturnus dan cincin Uranus harus digambar dalam dua tahap—depan dan belakang—agar planet dapat menutupi cincin. Pada kecepatan tinggi, satelit harus beralih ke mode jejak untuk mencegah flickering. Saat dijeda, rotasi permukaan planet juga harus berhenti; saat diputar mundur, harus mundur secara terbalik. Permukaan planet semuanya digambar secara programatis: Jupiter harus memiliki Bintik Merah Besar yang bergerak melewati belahan terlihat sesuai rotasinya; benua Bumi harus menghilang saat berputar ke sisi belakang dan muncul kembali dari sisi lain. Ditambah: delapan tingkat kecepatan waktu, dua skala orbit, kamera virtual yang mengikuti, 700 bintang dengan seed tetap, sabuk asteroid, sabuk Kuiper, tata letak responsif, sembilan tombol pintas.
Menghadapi kebutuhan yang begitu kompleks, V2.5 menunjukkan pemikiran rekayasa yang seperti dalam buku teks. Ia memecah seluruh proyek secara akurat: mulai dari desain arsitektur dan strategi perhitungan orbit, hingga sistem rasio dual-track global, generasi latar belakang bintang, hingga rendering bintang utama, pelapisan cincin planet, serta koordinasi sistem satelit yang kompleks. Semua modul saling berurutan secara hierarkis, dengan logika yang saling terkait erat. Tanpa banyak bicara, langsung kita tampilkan demonstrasinya.
Buka halaman web ini, di tengahnya adalah tanggal hari ini, dan delapan planet di layar berada tepat di posisi nyata mereka saat ini. Ini bukan gambar tata surya, melainkan tata surya yang berjalan nyata! Matahari berada di tengah, dan planet-planet terhampar satu per satu. Di antara Mars dan Jupiter, terdapat sekelompok debu halus yang berputar perlahan—Sabuk Asteroid. Semua benda langit, semua satelit, dan setiap awan di permukaan planet semuanya dikendalikan oleh waktu simulasi yang sama. Saat tombol jeda ditekan, planet berhenti berevolusi, satelit berhenti berevolusi, dan Bumi berhenti berputar. Klik Saturnus, panel informasi akan meluncur ke kanan. Di jendela pratinjau kecil di atas panel, Saturnus berputar perlahan, cincinnya ikut berputar, dan hubungan saling menutupi tetap akurat. Ini sudah tidak terlihat seperti tugas sekolah, melainkan seperti produk yang telah diluncurkan.
Soal ketiga: Issue gudang asli, siklus tertutup dalam 1 menit 20 detik
Selanjutnya, kami memasukkan KAT-Coder-Pro V2.5 ke dalam sebuah bug sumber terbuka yang nyata. Hasilnya jauh lebih menegangkan daripada uji performa. Soalnya berasal dari humanize, sebuah pustaka Python sumber terbuka yang nyata. Pada 2024, pustaka ini memiliki bug nyata: naturaldelta(timedelta(hours=-5)) seharusnya mengembalikan «5 hours», tetapi justru mengatakan «a day». Lima jam negatif diubah menjadi sehari penuh. Kami mengembalikan repositori ke commit saat bug masih ada, lalu hanya memberikannya satu issue, lalu membiarkannya berjalan tanpa petunjuk apa pun. Setelah mencari 2 pola dan membaca 2 file, ia langsung memberikan diagnosis—Python menyimpan timedelta negatif dalam bentuk komplemen, sehingga timedelta(hours=-5) secara internal sebenarnya adalah days=-1, seconds=68400. Kode asli mengambil abs() secara terpisah untuk kedua komponen tersebut, sehingga -1 hari menjadi 1 hari, dan 68400 detik tetap utuh, menghasilkan «1 hari + 19 jam». Analisis akar penyebab ini sepenuhnya sesuai dengan diagnosis perbaikan resmi—penyimpanan komplemen, tanda komponen tidak konsisten, dan pengambilan abs terpisah menyebabkan kesalahan. Namun, solusi yang ia ajukan berbeda dari yang resmi: resmi mengambil nilai absolut keseluruhan timedelta, sementara ia memilih mengonversi terlebih dahulu ke total detik, lalu membaginya kembali. Sebagai catatan, seluruh rangkaian ini berjalan di Claude Code. Dan Claude Code sendiri adalah salah satu lingkungan pelatihan yang secara eksplisit disebut dalam Harness Scaling resmi—mini-swe-agent, Claude Code, Codex, OpenClaw. Berlatih berulang kali di berbagai kerangka kerja bertujuan untuk mencapai «tidak terganggu saat berganti kerangka kerja». Hasil uji nyata menunjukkan bahwa ia benar-benar mampu beradaptasi sempurna tanpa ada tanda «tidak cocok».
Soal keempat: 20 menit 12 detik, mengganti mesin di pesawat yang masih terbang
Pertanyaan terakhir bukan memperbaiki bug, melainkan memasukkan seluruh fitur baru ke dalam sistem yang masih aktif. Semua orang pernah mengalaminya: Anda mengunggah file 1 GB, hingga 92%, lalu koneksi terputus. Segarkan halaman—mulai dari 0% lagi. Solusinya disebut unggah terpisah: potong menjadi seribu bagian, jika terputus, hanya isi bagian yang belum terunggah. Terdengar sederhana: potong, unggah, gabungkan kembali. Tetapi yang sulit bukan ketiga langkah itu, melainkan kekacauan di tengahnya:
Fragmen tiba tidak berurutan. Klien mengulangi pengiriman setelah terputus, tetapi server tidak bisa membedakan apakah ini upaya ulang atau penimpaan. Setelah server di-restart, 700 fragmen di disk menjadi anak yatim tanpa pemilik. Bahkan jika semua fragmen sampai, itu tidak berarti pengiriman benar.It ran for 20 minutes and 12 seconds. The solution involved dividing the disk into three compartments: published, progress metadata, and incomplete chunks. Chunks always remain in chunks/, physically inaccessible to the published area. Metadata is first written to a temporary file, then atomically renamed. This is because the process might crash midway through writing progress, leaving behind corrupted partial data. By writing the full data first and then renaming in one step, it either succeeds completely or fails completely. After a restart, a quick scan restores the progress immediately. Duplicate chunks are verified byte by byte. A lazy approach would be: "If a chunk exists at this location, treat it as duplicate and allow it." But this system checks byte by byte: even a single discrepancy triggers an error, leaving the original data completely untouched. The final deliverable consists of eight files, approximately 1,400 lines of code, five new APIs, and 26 upload tests—all including pause/resume and refresh recovery on the browser side. npm test → 33 tests, 0 failures. And none of the five existing interfaces were broken. The key to this problem was remembering every single "what if..." scenario during those twenty minutes. In real software engineering, ninety percent of the effort goes into these "what ifs."
Kemampuan tingkat insinyur Agent mendekati Opus 4.8
Mari kita tinjau kembali KAT-Coder-Pro V2.5 dalam hasil nyata di peringkat resmi. Pada PinchBench, yang mengukur kemampuan penggunaan alat Agentic, KAT-Coder-Pro V2.5 meraih skor 94,2, mengungguli Opus 4.8. Pada SWE-Bench Pro, peringkat rekayasa perangkat lunak tingkat repositori yang dianggap sebagai yang "paling sulit", ia meraih skor 65,2, hanya kalah dari Opus 4.8 (69,2), namun secara signifikan mengungguli sejumlah model lokal. Selain itu, pada kumpulan evaluasi rekayasa nyata yang dibangun secara internal, KAT Code Bench, ia meraih skor 53,1 dan masuk ke kelompok kedua; di kumpulan evaluasi Agentic berbasis bisnis, KAT Claw Bench, ia meraih skor 85,5 dan bersaing ketat dengan model tertutup dan terbuka terbaik. Dalam konteks keseluruhan lomba model coding, ini merupakan langkah nyata menuju kelompok teratas. Setelah menyaksikan kekuatan nyata KAT-Coder-Pro V2.5, saatnya mengupas implementasi teknis di baliknya.
Analisis teknis inti
Kali ini, tim KwaiKAT melakukan peningkatan sistematis seputar "rantai tugas yang lebih panjang dan alur bisnis yang lebih kompleks". Secara khusus, KAT-Coder-Pro V2.5 mencapai terobosan menyeluruh di tiga dimensi kunci:
Kemampuan proyek jangka panjang, kemampuan agen umum, serta sistem pembelajaran penguatan agen berskala besar yang mendukung semuanya.“File tunggal berperforma tinggi” dan “benar-benar bisa bekerja di dalam proyek” adalah dua hal yang berbeda
Fakta yang harus diakui: Meminta AI untuk "melengkapi satu fungsi" dan meminta AI untuk "menyelesaikan seluruh tugas teknis" adalah dua tingkat kemampuan yang berbeda. Yang pertama, model saat ini sudah sangat mahir. Namun, rekayasa perangkat lunak yang sebenarnya selalu memiliki wajah yang berbeda. Tiga kesalahan paling umum yang sering dilakukan model dalam tugas repositori jangka panjang adalah: salah menemukan lokasi lintas berkas, tidak mematuhi standar proyek, dan menyerahkan pekerjaan tanpa lulus pengujian. Sementara itu, hambatan sejati sering kali muncul di tempat yang tidak intuitif: yang menghambat model biasanya bukan seberapa banyak kode yang telah dibacanya, melainkan seberapa banyak proyek nyata yang telah berhasil dijalankannya secara utuh. Masalahnya, lingkungan repositori yang dapat dijalankan dan diverifikasi sangat sulit dibangun secara massal—tingkat keberhasilan langsung dalam industri ini secara konsisten hanya sekitar 16,5%. Dengan kata lain, berhasil membangun satu dari enam repositori saja sudah dianggap bagus. Solusi KwaiKAT adalah AutoBuilder, yang membuat model bertindak sebagai "insinyur lingkungan" sendiri: menganalisis repositori, menghasilkan konfigurasi, dan memverifikasi apakah pengujian benar-benar dieksekusi dalam sandbox terisolasi; jika gagal, secara otomatis mengiterasi dan memperbaiki. Hasilnya langsung terlihat: tingkat keberhasilan pembangunan lingkungan melonjak dari 16,5% menjadi 57,2%, dengan akumulasi lebih dari 100.000 lingkungan repositori yang dapat dijalankan dan diverifikasi, mencakup 12 bahasa pemrograman. Jenis perubahan dalam lingkungan-lingkungan ini mencakup perbaikan bug, penambahan fitur, kompatibilitas antarmuka, integrasi lintas modul, dan perbaikan regresi—hampir meniru semua skenario yang ditemui dalam pengembangan nyata. Inilah "bengkel pelatihan" V2.5. Dalam pemrosesan data, ada strategi cerdas lainnya. Industri biasanya mengikuti prinsip "yang benar disimpan, yang salah dibuang", tetapi KwaiKAT justru mencari emas di antara kegagalan—banyak kegagalan sebenarnya hanya kurang satu langkah terakhir: arahnya tepat, lokasinya akurat, hanya saja kurang satu penilaian kunci. Tim menyaring sampel-sampel semacam ini, lalu menjalankannya kembali dengan petunjuk yang ditargetkan; sekitar 20% berhasil diubah menjadi data pelatihan berkualitas tinggi yang dapat direproduksi. Dengan demikian, model tidak hanya belajar "bagaimana melakukan dengan benar", tetapi juga yang lebih berharga: "bagaimana memperbaiki kesalahan".
Agentic Umum, dari 「mampu memanggil alat」 ke 「mampu menangani bisnis」
Menulis kode hanyalah separuh dari kemampuan Agentic. Separuh lainnya adalah menguasai alur kerja bisnis nyata. Evaluasi pemanggilan alat yang ada sebagian besar berfokus pada tugas atom—memeriksa cuaca, memesan tiket, selesai dalam sekitar lima putaran. Namun, bisnis nyata berada pada tingkatan yang berbeda, misalnya:
Baca tren terpanas selama satu minggu di berbagai platform, pilih item industri video pendek, ambil lima teratas berdasarkan popularitas per platform, lalu buat laporan ringkas dengan bab dan batasan jumlah kata, diurutkan berdasarkan tanggal terbaru, dan jangan membuat data.Pekerjaan semacam ini, sering melibatkan lebih dari sepuluh siklus interaksi, serta dibungkus dengan sejumlah batasan format dan konsistensi implisit; jika satu rantai terputus, seluruh proses akan gagal. Seperti proyek jangka panjang, kemampuan ini juga dilatih di "bengkel". Di sisi kode, AutoBuilder yang bertanggung jawab, sementara di sisi bisnis, KwaiClawEnv yang mengambil alih, dengan tiga lapisan siklus tertutup yang bekerja sama:
- Layanan dinamis memperluas kolam, mengubah sejumlah besar Skill komunitas menjadi layanan yang dapat dideploy;
- Layer Tugas menggunakan bisnis nyata sebagai benih, menghasilkan varian tugas dalam jumlah besar;
- Lapisan Eval menggunakan filter ganda "aturan ketat + penilaian model" untuk hanya menyisakan trajektori yang dapat dieksekusi, dapat diverifikasi, dan bersifat alami.
Dalam data pelatihan yang dihasilkan, rata-rata satu jejak mencakup 15 panggilan alat, dengan panjang maksimal lebih dari 100 langkah, mencakup analisis data, integrasi lintas sistem, pemrosesan dokumen massal, dan pembuatan laporan. Ini tepat merupakan tugas nyata yang dihadapi ribuan insinyur dan staf bisnis di Kuaishou setiap hari.
Pembelajaran penguatan skala besar, membuat AI belajar sendiri "cara melakukannya"
Fine-tuning pengawasan memungkinkan model meniru contoh, tetapi langsung bingung saat menghadapi kesalahan atau umpan balik tak terduga yang belum pernah dilihatnya. Yang benar-benar mengajarkan model untuk menjelajah, memperbaiki kesalahan, dan memverifikasi adalah RL berskala besar. Tim KwaiKAT fokus pada tiga hal berikut:
Pertama, scaffolding tidak terbatas (Harness Scaling).
Uji model secara bergiliran di berbagai kerangka seperti mini-swe-agent, Claude Code, Codex, dan OpenClaw. Kerangka-kerangka ini memiliki perbedaan besar dalam protokol pemanggilan, manajemen konteks, dan alur kontrol, memaksa model untuk mengembangkan kemampuan utama dalam "menyelesaikan tugas" sehingga tidak kesulitan saat beralih ke kerangka lain.
Kedua adalah alokasi kredit jangka panjang.
Dalam ratusan iterasi, langkah mana yang benar-benar menghasilkan hasil yang baik? Tim menggunakan PPO asimetris: saat model bekerja, ia hanya melihat informasi lingkungan nyata, sementara Critic yang memberi skor pelatihan dapat memanfaatkan "sudut pandang Tuhan" tambahan—akhirnya, apakah pengujian lulus atau seberapa baik kualitas patch, hadiah dan hukuman diberikan secara tepat pada langkah tertentu, menghindari "satu kesalahan, seluruhnya gagal".
Ketiga, tiga tingkat hadiah.
Mengunci hasil uji coba asli di tingkat atas, menutup jalur manipulasi skor uji coba; di tingkat menengah, menstandarisasi penggunaan alat dan pembersihan file sementara; di tingkat dasar, memberikan umpan balik positif untuk kegagalan bernilai seperti "lokalasi akurat, sebagian uji coba" untuk melindungi rasa ingin tahu model. Patut dicatat, tim awalnya mengira masalahnya terletak pada algoritma karena reward tidak naik, tetapi setelah penyelidikan, ditemukan bahwa penyebab utamanya adalah lingkungan pelatihan itu sendiri—pada tahap awal, sekitar 16% dari trajektori mengalami setidaknya satu kegagalan yang berasal dari sandbox, bukan dari model. Setelah serangkaian penyempurnaan infrastruktur inti, tingkat kesalahan umpan balik sandbox diturunkan di bawah 2%, dan frekuensi kegagalan pelatihan berkurang sekitar satu orde besaran. Justru pekerjaan dasar yang tampak sepele inilah yang mendukung pelatihan yang stabil di tahap selanjutnya.
Sebuah model yang mampu menampung lima kemampuan
Proyek jangka panjang, Agentic umum, terminal, estetika antarmuka pengguna, pengetahuan umum—KwaiKAT melatih satu ahli untuk masing-masing lima bidang ini. Tantangannya adalah menggabungkan semuanya menjadi satu model, sekaligus menghindari efek “tekan satu ujung, ujung lainnya naik”. Jawaban tim adalah MOPD (Multi-Teacher Online Policy Distillation): siswa mengerjakan soal sendiri, dan jika soal tersebut termasuk dalam bidang tertentu, ahli yang relevan akan memberikan bimbingan; kemampuan digabungkan dalam ruang fungsi, bukan dengan memadukan parameter secara kaku.
Sebuah KAT-Coder-Pro V2.5 yang mampu menampung keahlian lima ahli sekaligus, tanpa perlu beralih saat deployment—menulis kode, menjalankan proses, membuat halaman, semuanya selesai dalam satu alat.Kemampuan estetika antarmuka yang sangat dihargai pada versi sebelumnya sepenuhnya dipertahankan di versi ini, tepat memperkuat mekanisme ini: kemampuan baru diperluas secara signifikan, sementara kemampuan lama tetap utuh. Rekonstruksi tanpa kompromi ini secara langsung menciptakan catatan prestasi yang paling meyakinkan.
Paruh kedua coding, yang menentukan adalah "rekayasa"
KAT-Coder-Pro V2.5 didasarkan pada penilaian jelas: saat ini, hambatan utama dalam memperkuat model pemrograman telah berpindah dari "seberapa besar modelnya" menjadi "seberapa kuat infrastruktur pendukungnya". Oleh karena itu, pembangunan lingkungan, sintesis trajektori, stabilitas RL, dan integrasi kemampuan semuanya diperlakukan sebagai proyek sistematis tingkat tinggi. Hasilnya adalah profil kemampuan yang jelas—penggunaan alat Agentic tingkat atas, ditambah kemampuan rekayasa tingkat repositori yang paling mendekati tren global terkini. Bagi pengembang, ini berarti mereka akhirnya dapat dengan percaya diri menyerahkan satu issue lengkap atau seluruh alur kerja untuk dijalankan tanpa perlu lagi menjadi pengasuh AI. Kini, KAT-Coder-Pro V2.5 telah diluncurkan secara penuh dan siap segera diuji. Cara memulai: panggil API langsung melalui StreamLake.com (ID model: kat-coder-pro-v2.5).
