- Pada iPhone 16 Pro Max, saat menjalankan MLX LLM muncul output numerik yang salah, sementara kode yang sama berjalan normal di iPhone 15 Pro dan MacBook Pro
- Nilai tensor berbeda lebih dari satu digit, dan hasil terdistorsi bahkan untuk input yang sama
- Penyebab masalah diduga sebagai cacat perangkat keras pada Neural Engine atau stack komputasi ML berbasis Metal
- Fitur Apple Intelligence juga menunjukkan ketidakstabilan serupa, seperti kegagalan mengunduh, sehingga memunculkan kemungkinan adanya keterkaitan
- Pengembang menekankan bahwa saat debugging, masalah perangkat keras fisik juga harus dipertimbangkan
Ditemukan error saat menjalankan MLX LLM
- Di iPhone 16 Pro Max, saat menjalankan LLM berbasis MLX dihasilkan output tak bermakna (gibberish)
- Kode yang sama berjalan normal di iPhone 15 Pro dan MacBook Pro
- Penggunaan CPU melonjak ke 100%, dan token “stop” tidak pernah dihasilkan sehingga kondisi output tanpa akhir terus berlanjut
- Meski memakai model dan prompt yang sama, nilai output tensor menjadi tidak normal dan membesar
- Di iPhone 15 Pro:
[53.875, 62.5625, -187.75, ...]
- Di iPhone 16 Pro Max:
[191.5, 23.625, 173.75, ..., 1298, -147.25, -162.5]
- Nilai input sama, tetapi pada tahap komputasi menengah angkanya tiba-tiba terdistorsi secara drastis
Masalah pada fitur Apple Intelligence
- Saat mencoba mengimplementasikan fitur klasifikasi pengeluaran menggunakan API Apple Intelligence, dukungan model tidak bisa diunduh
- Meski pengaturan diubah berkali-kali, fitur tetap tidak aktif
- Di forum komunitas Apple juga dilaporkan banyak pengguna mengalami masalah yang sama (12 halaman)
- Karena itu, akses Apple Intelligence ditinggalkan dan pendekatan berbasis MLX dipilih
Proses debugging dan pelacakan penyebab
- Dengan menetapkan breakpoint pada implementasi model Gemma di MLX, nilai tensor di tiap layer dilacak
- Nilai input sama di kedua perangkat, tetapi di iPhone 16 Pro Max angkanya mulai membesar tidak normal sejak tahap menengah
- Di Mac juga terkonfirmasi hasil normal yang sama seperti iPhone 15 Pro
- Dari sini, pengembang menjadi yakin bahwa ini adalah masalah perangkat keras, bukan kode atau model
Kemungkinan cacat perangkat keras
- Ada kemungkinan terjadi error komputasi pada Neural Engine chip A18 di iPhone 16 Pro Max atau pada jalur komputasi ML berbasis Metal
- Karena MLX mengompilasi operasi tensor melalui Metal, cacat pada stack tersebut dapat menyebabkan distorsi hasil
- Disebutkan juga adanya kemungkinan penyebab yang sama dengan masalah Apple Intelligence, tetapi belum ada bukti yang jelas
Kesimpulan dan pelajaran
- iPhone 16 Pro Max yang bermasalah dipastikan sebagai unit dengan cacat perangkat keras
- Setelah diganti ke iPhone 17 Pro Max, semua fungsi kembali berjalan normal
- Melalui pengalaman ini, pengembang menekankan bahwa saat debugging, bukan hanya software tetapi juga masalah perangkat keras fisik harus dipertimbangkan
- Tiga pelajaran:
- Error saat menjalankan LLM tidak selalu merupakan masalah kode
- Pentingnya pengujian perbandingan di lingkungan yang sama
- Bahkan perangkat keras mahal pun belum tentu menjamin akurasi komputasi ML
1 komentar
Komentar Hacker News
Ini sama lucunya dengan pertanyaan seperti “apa hasil bulan ditambah matahari?”
Namun fenomena kali ini berbeda. API operasi numerik Apple menghasilkan output yang tidak konsisten di beberapa perangkat. Ini masalah yang perlu diperhatikan Apple
Karena jika matahari(日) dan bulan(月) digabungkan menjadi 明 (tautan wiki)
Jawaban seperti “bulan purnama” juga mungkin, tapi tampaknya tidak ada jawaban yang jelas dan deterministik
Tentu dengan backup terlebih dahulu, dan kalau bisa menggunakan paket iCloud+. Untuk masalah seperti ini, itu solusi yang paling sederhana
Jadi, tampaknya iPhone 16 Pro Max itu memang mengalami cacat perangkat keras
Misalnya ini juga disebutkan dalam dokumentasi Intel
Meski begitu, tetap mengejutkan bahwa LLM sama sekali tidak berfungsi di iPhone 16. Biasanya LLM cukup toleran terhadap kuantisasi (quantization)
Awalnya aku ingin mengabaikan masalah ini karena alasan itu,
tetapi anehnya semua perangkat Apple lain menghasilkan hasil yang sama, dan hanya LLM bawaan Apple yang gagal di perangkat ini
Ini tampaknya bukan masalah yang mendasar, melainkan kegagalan yang tak terduga. Tidak baik Apple mengirim perangkat dalam kondisi seperti ini
Saat ini aku memakai emulator HP Prime untuk matematika di ponselku
Kalkulator favorit lainnya adalah free42 atau plus42 (tautan)
Untuk alat CAS, MathStudio adalah yang terbaik (mathstud.io)
Bisa dijalankan di browser, tetapi juga ada aplikasi mobile. Rasanya seperti Wolfram Alpha yang di-host sendiri
Sampai sekarang masih intuitif dan cepat
Aku mengaturnya agar bisa langsung dijalankan lewat tombol Control Center
Keluhanku, meski layarnya sebesar ini, riwayat perhitungan sebelumnya tidak bisa di-scroll untuk dilihat
Aku sudah tidak ingin lagi melihat UI seperti tiruan kalkulator 4-fungsi tahun 1990-an
MLX juga bisa berjalan di CPU, Apple GPU (Metal), dan NVIDIA GPU (CUDA) (tautan)
Aku sudah mencoba berbagai kombinasi pengaturan, tetapi teks prediktif acak berhenti atau malfungsi
Atau mungkin ini optimasi untuk mendorong orang beralih ke input suara
Setidaknya untungnya bukan menjawab “7”
Akan menarik kalau beberapa aplikasi di App Store juga diuji