概要
- iPhone 16 Pro Max でMLX LLMを実行すると 数値出力が異常 になる問題
- iPhone 15 Pro やMacBook Proでは 同じコードが正常動作
- ハードウェア(Neural Engine)故障 の可能性が高いと推測
- デバッグ過程 で問題の切り分けと発見
- iPhone 17 Pro Max では問題が再発せず、16 Pro Max固有の不具合と結論
iPhone 16 Pro Maxで発生したMLX LLMの異常動作
- MLX LLM をiPhone 16 Pro Maxで実行すると、 テンソル出力が桁違いに異常
- iPhone 15 Pro や MacBook Pro では、同じコード・モデル・プロンプトで 正常な数値出力
- Neural Engine やML関連システムの ハードウェア欠陥 を疑う状況
- Apple Care で交換されたiPhone 16 Pro Maxで発生したため、 初期不良品の可能性
- Apple Intelligence API も一部正常に動作せず、同様のハードウェア依存の不具合を示唆
開発・デバッグの経緯
- MiniMax M2.1 サブスクに合わせて、 支出管理アプリ を自作
- 支払いごとに自動登録
- Apple Watchコンプリケーションへの予算進捗表示
- 支出カテゴリ分類機能の実装
- MLX LLM で分類機能を試すも、16 Pro Maxのみ 出力が文字化け(gibberish)
- 温度0.0、同一プロンプト、同一モデル で各デバイス比較
- iPhone 15 Pro・MacBook Proは同一数値
- 16 Pro Maxのみ 桁違いの異常値 を出力
- MLXのレイヤーごとのテンソル値 をログ出力して比較
- 入力値は同一、途中から16 Pro Maxのみ値が大きく逸脱
原因特定と考察
- iPhone 16 Pro MaxのA18チップ のNeural Engineで発生
- MLXはMetal経由でNeural Engineを活用 しているため、 ハードウェア計算結果が破損
- 他のユーザーもApple Intelligence APIで類似の問題報告 (12ページ分のスレッド)
- Macや15 Proでは問題再現せず、ソフトウェアやコードの問題ではないと判断
教訓と対応
- デバッグ時は物理層(ハードウェア故障)も疑う重要性
- 自己責任やコードの問題と決めつけず、ハードウェアの可能性も検討
- iPhone 16 Pro MaxはAppleに下取り、 iPhone 17 Pro Maxでは問題解消
- ハードウェア不具合が原因 と確定、今後の開発・デバッグの参考事例
まとめ
- 最新機種でもハードウェア不良は起こりうる 事例
- ML・LLMの異常出力時はハードウェア故障も視野に
- Apple IntelligenceやMLX利用時のトラブルシュート手順の参考
- 交換後のiPhone 17 Pro Maxで正常動作を確認 し、問題端末の特定と解決