Komunitas membongkar MTP yang disembunyikan di Gemma 4, Google belakangan memberi dukungan lewat jalur memutar
(reddit.com)Google sempat menghapus fitur tersebut dari rilis publik Gemma 4 yang dilatih dengan MTP, lalu mulai memberi dukungan belakangan dalam bentuk model asisten eksternal setelah hal itu terungkap lewat reverse engineering oleh komunitas.
Saat para pengembang open source menganalisis file .litertlm (berbasis TFLite), format yang didistribusikan Google untuk perangkat mobile/edge, mereka menemukan fakta yang mengejutkan. Arsitektur MTP (Multi-Token Prediction, prediksi multi-token) yang tidak ada pada bobot model standar yang dipublikasikan di HuggingFace ternyata hanya disertakan dalam file hasil kompilasi untuk edge.
Ketika hal ini dipermasalahkan secara terbuka, pihak Google mengakui fakta tersebut dan menjawab sebagai berikut:
> "Head prediksi terkait MTP sengaja dikecualikan dari model publik demi kompatibilitas dengan API HuggingFace Transformers. Di runtime LiteRT, fitur itu dipertahankan untuk meningkatkan performa on-device."
Apa itu MTP
LLM biasa menghasilkan token satu per satu secara berurutan. MTP adalah teknik untuk memprediksi beberapa token sekaligus dalam satu forward pass, dan bila digabungkan dengan speculative decoding, teknik ini dapat sangat meningkatkan kecepatan inferensi tanpa perubahan kualitas output. Secara teori, ini adalah optimasi lossless.
Upaya reverse engineering oleh komunitas
Penemu awal berhasil mengekstrak beberapa file .tflite dari file .litertlm, lalu mempublikasikan file hasil ekstraksi beserta prosedur reproduksinya di HuggingFace sambil meminta bantuan dari orang-orang yang mampu bekerja dengan C++. Setelah itu, para kontributor komunitas mulai melakukan reverse engineering secara serius.
Kendala teknis: Struktur kernel TFLite sangat brutal. Vektor attention berukuran 1024 diquantize ke INT8 → dikalikan dengan bobot INT8 → hasilnya direquantize → lalu didequantize kembali.
Hasil: Setelah beberapa hari kerja intensif, mereka berhasil merekonstruksi hal-hal berikut:
- Struktur GQA (Grouped-Query Attention) dan pemetaan KV cache eksternal
- Perilaku sliding local window
- Jalur kuantisasi
pre_project/q_proj/MLP/o_proj/post_project - Perilaku RoPE parsial
- mencapai parity TFLite end-to-end dengan kecocokan top-1 20/20
Lisensinya Apache 2.0 sehingga tidak ada masalah hukum.
Kinerja nyata: seberapa cepat
Hasil pengukuran komunitas (berdasarkan Strix Halo):
| Tugas | Sebelumnya | Setelah MTP diterapkan |
|---|---|---|
| Pembuatan kode | 8 tps | 25 tps (sekitar 3x) |
| Penulisan umum | 7~8 tps | 11~14 tps |
Dibandingkan speculative decoding pada keluarga LLaMA/Qwen3 yang biasanya berada di kisaran 1.5~1.7x, dengan maksimum sekitar 2x, angka 3x pada coding tergolong tidak biasa. Analisisnya, karena karakteristik pembuatan kode memiliki banyak boilerplate berulang, tingkat penerimaan draft token menjadi lebih tinggi.
Reaksi dan kecurigaan dari komunitas
Kritik besar mengalir ke dua arah.
① Kritik karena tidak didokumentasikan (Undocumented): Google melatih model dengan MTP lalu sengaja menghapusnya dari rilis publik tanpa menyebutkannya sama sekali.
② Kecurigaan motif komersial: muncul klaim bahwa "jika model open source 31B yang berjalan secara lokal menjadi terlalu cepat, itu akan mengancam daya saing API komersial mereka sendiri (seperti Flash Lite), sehingga sengaja di-nerf". Model 122B yang sempat bocor lalu dihapus juga disebut dalam konteks yang sama.
Pilihan struktural Google
| Kanal distribusi | MTP disertakan atau tidak |
|---|---|
| Bobot publik HuggingFace | ❌ sengaja dihapus |
| LiteRT (edge/mobile) | ✅ tertanam |
gemma4_assistant (baru 5/5) |
✅ didukung lewat model asisten eksternal |
Tanggapan resmi Google yang terlambat (5–6 Mei)
Ketika tekanan dari komunitas makin kuat, pada 5 Mei Google merilis model asisten gemma4_assistant secara terpisah di HuggingFace dan mengumumkan drafter Gemma 4 MTP lewat blog resminya. Bentuknya adalah dukungan jalur memutar dengan memisahkan ke model eksternal fitur yang sebenarnya seharusnya ada di dalam model utama.
- Kecepatan: peningkatan kecepatan inferensi hingga 3x tanpa penurunan kualitas
- Model asisten: drafter ringan dengan ukuran sekitar 500M parameter
- Cara pakai: cukup berikan lewat argumen
assistant_model=pada fungsigenerate(). Tidak perlu implementasi MTP kustom - Lingkungan yang didukung: HuggingFace Transformers, vLLM, MLX(Apple Silicon), LiteRT-LM
> 💡 Ringkasan satu baris: Google sempat menghapus fitur MTP dari rilis publik Gemma 4 yang dilatih dengannya, lalu baru memberi dukungan lewat model asisten eksternal setelah komunitas membongkarnya lewat reverse engineering.
2 komentar
Ternyata ada model 122B, gila.
https://huggingface.co/google/gemma-4-31B-it-assistant
https://github.com/huggingface/transformers/…
https://github.com/Blaizzy/mlx-vlm/pull/1112
https://huggingface.co/collections/mlx-community/gemma-4-assistant-mtp