Judul: Bug Tersebut Berada pada Satu Sumbu

Bug tersembunyi dalam implementasi chunked-scan PyTorch memungkinkan model hybrid tertentu mengintip token masa depan setiap kali kernel fused cepat tidak tersedia, sehingga membahayakan checkpoint seperti Zamba2-1.2B dan Nemotron-H-8B. Cacat ini berasal dari satu reduksi yang dilakukan pada sumbu yang salah, dan muncul pada jalur eksekusi yang diandalkan oleh sebagian besar pipeline CI dan eksekusi CPU.

Mengapa bug ini penting

Model hybrid dan state-space tidak lagi hanya bergantung pada attention; mereka juga menggunakan rekurensi linear, scan, dan konvolusi. Operasi masking yang memblokir token masa depan dalam matriks attention tidak secara otomatis menjamin kausalitas untuk operasi tambahan tersebut. Ketika kernel fused cepat yang biasanya menangani scan dengan benar tidak tersedia, PyTorch beralih ke jalur chunked-scan berbasis Python murni. Jalur fallback tersebut mengandung axis-mixup, yang memungkinkan informasi dari posisi selanjutnya mengalir ke belakang selama inferensi.

Kebocoran ini bersifat senyap. Ia tidak membuat model crash atau memunculkan error yang jelas. Sebaliknya, ia membuat nilai loss dan perplexity terlihat rendah secara artifisial karena model tersebut secara efektif melakukan kecurangan—melihat token yang seharusnya ia prediksi. Oleh karena itu, evaluasi downstream apa pun yang memercayai metrik ini dibangun di atas fondasi yang rusak.

Bagaimana masalah ini terungkap

Para peneliti membandingkan dua forward pass melalui model yang sama:

  1. Urutan token acak.
  2. Urutan yang identik dengan satu token yang diubah.

Mereka mengukur perbedaan dalam hidden state lapis demi lapis. Inspeksi mask tidak menunjukkan apa pun, tetapi audit per-lapisan yang menyuntikkan kesalahan (fault injection) mendeteksi 192 dari 192 kesalahan yang disuntikkan, yang mengonfirmasi adanya kebocoran.

Penelusuran cepat pada library transformers mengungkapkan:

  • Zamba2-1.2B mengalami kebocoran saat ukuran chunk diatur ke 256.
  • Nemotron-H-8B mengalami kebocoran pada ukuran chunk 128.
  • Sebagian besar checkpoint lainnya tidak menunjukkan kebocoran dalam kondisi yang sama.

Cacat ini terletak pada jalur kode chunked-scan yang berjalan setiap kali kernel fused opsional tidak tersedia. Hal ini mencakup:

  • Semua eksekusi CPU.
  • Lingkungan GPU tanpa paket kernel fused khusus.
  • Instalasi PyTorch standar yang mengabaikan dependensi tambahan.

Karena bug ini hanya muncul saat kernel tersebut tidak ada, ia dapat muncul di lingkungan CI dan pada CPU.

Siapa yang berisiko dan apa dampaknya

Tim mana pun yang melatih, melakukan fine-tuning, atau mengevaluasi model hybrid tanpa kernel fused berisiko memublikasikan angka performa yang digelembungkan. Peningkatan yang tampak pada loss atau perplexity adalah semu; model tersebut secara efektif telah "melihat ke depan." Bagi kelompok riset, hal ini dapat menyebabkan klaim yang menyesatkan tentang hasil state-of-the-art. Untuk penerapan komersial, hal ini dapat menyebabkan kesalahan downstream dalam tugas generasi yang sebenarnya tidak pernah dipelajari dengan benar.

Argumen penentang

Beberapa pengembang berpendapat bahwa penerapan causal mask yang benar sudah cukup untuk mencegah kebocoran token masa depan. Bug ini membantah gagasan tersebut: scan, konvolusi, dan lapisan normalisasi tertentu dapat melewati mask sepenuhnya. Axis-mixup dalam chunked scan menunjukkan bahwa kausalitas harus ditegakkan di mana pun data mengalir, tidak hanya di matriks attention.

Apa yang perlu diperhatikan selanjutnya

  • Kebersihan dependensi: Instal paket kernel fused cepat pada semua node pelatihan dan inferensi, terutama di pipeline CI.
  • Skrip audit: Ikuti audit dua langkah yang direkomendasikan oleh para penemu:
    • Suntikkan kesalahan yang diketahui ke dalam checkpoint yang Anda uji sebagai kontrol positif.
    • Jalankan urutan yang lebih panjang dari ukuran chunk atau jendela model; urutan pendek tidak akan pernah mengungkap kebocoran tersebut.

Menjalankan audit pada checkpoint hybrid atau state-space apa pun dengan panjang urutan yang melebihi ukuran chunk akan mengungkapkan apakah model tersebut masih rentan.

Poin Penting: Bahkan model yang lulus setiap pengujian standar dapat melakukan kecurangan secara senyap ketika jalur eksekusi beralih ke implementasi yang bermasalah. Memverifikasi keberadaan kernel fused cepat—dan menguji secara eksplisit adanya kebocoran di luar attention mask—kini menjadi langkah penting sebelum memercayai metrik model hybrid apa pun.