1 คะแนน โดย GN⁺ 2026-02-02 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • บน iPhone 16 Pro Max เกิด การแสดงค่าตัวเลขผิดพลาดเมื่อรัน MLX LLM โดยโค้ดเดียวกันทำงานได้ปกติบน iPhone 15 Pro และ MacBook Pro
  • ค่าของเทนเซอร์แตกต่างกันมากกว่าหนึ่งหลัก และพบว่าผลลัพธ์บิดเบือนได้แม้ใช้อินพุตเดียวกัน
  • คาดว่าสาเหตุของปัญหามาจาก ข้อบกพร่องของฮาร์ดแวร์ใน Neural Engine หรือสแตกการคำนวณ ML ที่อิง Metal
  • ฟีเจอร์ Apple Intelligence ก็แสดง ความไม่เสถียรคล้ายกัน เช่น ดาวน์โหลดไม่สำเร็จ ทำให้มีการตั้งข้อสังเกตว่าอาจเกี่ยวข้องกัน
  • นักพัฒนาเน้นย้ำผ่านกรณีนี้ว่า ระหว่างการดีบักควรคำนึงถึงปัญหาฮาร์ดแวร์จริงด้วย

พบข้อผิดพลาดระหว่างรัน MLX LLM

  • บน iPhone 16 Pro Max เมื่อรัน LLM ที่ใช้ MLX จะสร้าง เอาต์พุตไร้ความหมาย (gibberish)
    • โค้ดเดียวกันทำงานได้ปกติบน iPhone 15 Pro และ MacBook Pro
    • การใช้งาน CPU พุ่งขึ้นไปถึง 100% และไม่มีการสร้างโทเค็น “stop” ทำให้ค้างอยู่ในสถานะพิมพ์ผลลัพธ์ต่อเนื่องไม่สิ้นสุด
  • แม้จะใช้โมเดลและพรอมป์ต์เดียวกัน แต่ ค่าผลลัพธ์ของเทนเซอร์กลับสูงผิดปกติ
    • บน iPhone 15 Pro เป็น [53.875, 62.5625, -187.75, ...]
    • บน iPhone 16 Pro Max เป็น [191.5, 23.625, 173.75, ..., 1298, -147.25, -162.5]
    • อินพุตเหมือนกัน แต่ค่าตัวเลขเริ่มบิดเบือนอย่างรุนแรงในขั้นตอนการคำนวณระหว่างทาง

ปัญหาของฟีเจอร์ Apple Intelligence

  • พยายามใช้ Apple Intelligence API เพื่อทำ ฟีเจอร์จัดหมวดหมู่ค่าใช้จ่าย แต่ไม่สามารถดาวน์โหลดส่วนรองรับของโมเดลได้
    • แม้จะเปลี่ยนการตั้งค่าหลายครั้ง ก็ยังไม่สามารถเปิดใช้งานฟีเจอร์ได้
    • ใน Apple Community Forum ก็มี ผู้ใช้จำนวนมากที่รายงานว่าเจอปัญหาเดียวกัน (ยาวถึง 12 หน้า)
  • ด้วยเหตุนี้จึงเลิกใช้ Apple Intelligence และเปลี่ยนไปใช้แนวทางที่อิง MLX แทน

กระบวนการดีบักและการไล่หาสาเหตุ

  • ตั้ง เบรกพอยต์ในส่วน implementation ของโมเดล Gemma ของ MLX เพื่อติดตามค่าเทนเซอร์ของแต่ละเลเยอร์
    • ค่าอินพุตเหมือนกันทั้งสองอุปกรณ์ แต่บน iPhone 16 Pro Max ค่าตัวเลขเริ่มสูงผิดปกติตั้งแต่ขั้นตอนกลาง
    • บน Mac ก็ยืนยันได้ผลลัพธ์ปกติเหมือนกับ iPhone 15 Pro
  • จากจุดนี้จึงมั่นใจได้ว่าเป็น ปัญหาฮาร์ดแวร์ ไม่ใช่โค้ดหรือโมเดล

ความเป็นไปได้ของข้อบกพร่องด้านฮาร์ดแวร์

  • มีความเป็นไปได้ว่าเกิดข้อผิดพลาดในการคำนวณที่ Neural Engine ของชิป A18 หรือ เส้นทางการคำนวณ ML ที่อิง Metal ของ iPhone 16 Pro Max
    • MLX คอมไพล์การคำนวณเทนเซอร์ผ่าน Metal ดังนั้นหากสแตกนี้มีข้อบกพร่อง ก็อาจทำให้ผลลัพธ์บิดเบือนได้
  • มีการกล่าวถึงด้วยว่าอาจเป็นสาเหตุเดียวกับปัญหา Apple Intelligence แต่ยังไม่มีหลักฐานชัดเจน

บทสรุปและบทเรียน

  • ยืนยันแล้วว่า iPhone 16 Pro Max เครื่องที่มีปัญหาเป็น เครื่องที่มีข้อบกพร่องด้านฮาร์ดแวร์
    • หลังจากเปลี่ยนเป็น iPhone 17 Pro Max แล้ว ทุกฟีเจอร์กลับมาทำงานได้ปกติ
  • นักพัฒนาเน้นย้ำจากประสบการณ์นี้ว่า ระหว่างการดีบักไม่ควรมองแค่ซอฟต์แวร์ แต่ต้องคำนึงถึงปัญหาฮาร์ดแวร์จริงด้วย
  • บทเรียน 3 ข้อ:
    • ข้อผิดพลาดในการรัน LLM ไม่ได้แปลว่าเป็นปัญหาของโค้ดเสมอไป
    • ความสำคัญของการทดสอบเปรียบเทียบในสภาพแวดล้อมเดียวกัน
    • ต่อให้เป็นฮาร์ดแวร์ราคาแพง ก็อาจ ไม่ได้รับประกันความแม่นยำของการคำนวณ ML

1 ความคิดเห็น

 
GN⁺ 2026-02-02
ความเห็นจาก Hacker News
  • ต่อให้มองข้ามเรื่องระเบียบวิธีไปก่อน การให้ LLM มาบวกเลขไม่ใช่ความคิดที่ดีนัก
    มันก็ตลกพอ ๆ กับการถามว่า “พระจันทร์บวกพระอาทิตย์ได้อะไร?”
    แต่ปรากฏการณ์ครั้งนี้เป็นอีกเรื่องหนึ่ง เพราะ API การคำนวณเชิงตัวเลข ของ Apple ให้ผลลัพธ์ไม่ตรงกันบนอุปกรณ์บางเครื่อง นี่เป็นปัญหาที่ Apple ควรใส่ใจ
    • พูดนอกเรื่องนิดหน่อย แต่ในหัวฉันนึกถึงคำว่า “สว่าง” ขึ้นมาทันที
      เพราะเอาพระอาทิตย์(日) กับพระจันทร์(月) มารวมกันจะได้ 明 (ลิงก์วิกิ)
      คำตอบอย่าง “พระจันทร์เต็มดวง” ก็อาจเป็นไปได้เหมือนกัน แต่คงไม่มีคำตอบที่ชัดเจนตายตัว
    • “พระจันทร์บวกพระอาทิตย์?” นั่นก็ต้องเป็น สุริยุปราคา (eclipse) สิ
  • น่าจะลองทดสอบกับ iPhone 16 Pro Max เครื่องอื่นด้วย จะได้รู้ว่าเป็นปัญหาเฉพาะเครื่องนั้นหรือไม่ เสียดายที่ไม่ได้ทำ
    • ใช่เลย ปกติตามที่ Apple Support แนะนำก็ควร ล้างระบบแล้วติดตั้ง OS ใหม่
      แน่นอนว่าต้องสำรองข้อมูลก่อน และถ้าเป็นไปได้ก็ควรทำผ่านแพ็กเกจ iCloud+ นั่นเป็นวิธีแก้ที่ง่ายที่สุดสำหรับปัญหาแบบนี้
    • ตามอัปเดตล่าสุดด้านล่างของหน้า บน iPhone 17 Pro Max ทุกอย่างทำงานได้ตามปกติ
      หมายความว่า iPhone 16 Pro Max เครื่องนั้นน่าจะมี ความบกพร่องด้านฮาร์ดแวร์
  • การปรับแต่งประสิทธิภาพการคำนวณเชิงตัวเลขระดับล่าง มักทำให้เกิดพฤติกรรมที่จำลองซ้ำได้ยาก
    ตัวอย่างเช่นมีการพูดถึงเรื่องนี้ในเอกสารของ Intel
    ถึงอย่างนั้นก็ยังน่าแปลกที่ LLM บน iPhone 16 ถึงกับใช้งานไม่ได้เลย เพราะปกติ LLM มัก ทนต่อการ quantization ได้พอสมควร
    • เรื่องที่ว่า “การสะสมค่าทศนิยมลอยตัวไม่เป็นไปตามสมบัติสลับที่” นั้นเป็นความรู้พื้นฐานอยู่แล้ว
      ตอนแรกฉันก็เกือบจะมองข้ามปัญหานี้ด้วยเหตุผลนั้น
      แต่ความแปลกคืออุปกรณ์ Apple อื่น ๆ ทั้งหมดให้ผลลัพธ์เดียวกัน และมีเพียง LLM ของ Apple บนเครื่องนี้เท่านั้นที่ล้มเหลว
      นี่ดูไม่ใช่ปัญหาเชิงพื้นฐาน แต่เป็น ความล้มเหลวที่ไม่คาดคิด มากกว่า Apple ไม่ควรปล่อยเครื่องที่อยู่ในสภาพแบบนี้ออกมา
  • พูดตามตรง ตอนกดเข้าอ่านบทความนี้ ฉันนึกว่าจะเป็นเรื่อง เครื่องคิดเลขกราฟแบบเก่า ดีกว่าสมาร์ตโฟนเสียอีก
    ตอนนี้เวลาทำคณิตบนมือถือ ฉันใช้ HP Prime emulator
    • ฉันชอบ PCalc มันรันได้บนทุกแพลตฟอร์มของ Apple มาตั้งแต่ยุค Mac Classic (ลิงก์)
      เครื่องคิดเลขอีกตัวที่ฉันชอบคือ free42 กับ plus42 (ลิงก์)
      สำหรับเครื่องมือ CAS นั้น MathStudio ดีที่สุด (mathstud.io)
      มันรันในเบราว์เซอร์ได้ และก็มีแอปมือถือด้วย ให้ความรู้สึกเหมือน Wolfram Alpha แบบโฮสต์เอง
    • ส่วนตัวฉันใช้ iHP48 เป็นเวอร์ชันที่ติดตั้ง metakernal ลงบน HP 48GX ที่เคยใช้สมัยเรียนมหาวิทยาลัย
      มันยังคง ใช้งานง่ายและเร็ว
    • ฉันดีใจที่รู้ว่าสามารถลบแอปเครื่องคิดเลขเริ่มต้นของ iPhone แล้วเปลี่ยนเป็น NumWorks ได้
      ฉันตั้งให้เปิดได้ทันทีจากปุ่มใน Control Center
      แต่ที่ไม่ชอบคือ ถึงหน้าจอจะใหญ่ขนาดนี้ก็ยัง เลื่อนดูประวัติการคำนวณก่อนหน้าไม่ได้
      ฉันไม่อยากเห็น UI ที่เหมือนเครื่องคิดเลข 4 ฟังก์ชันจากยุค 1990 อีกแล้ว
    • บน Android ฉันใช้ TI 83+ emulator มันมีประโยชน์เวลาพกเครื่องคิดเลขจริงไม่ได้
    • ถ้าต้องคำนวณจริงจัง สุดท้ายฉันก็หยิบ เครื่องคิดเลข TI-84 ของจริง ขึ้นมาใช้อยู่ดี เพราะคุ้นมือ
  • บทความน่าสนใจดี แต่ตรรกะช่วงท้ายที่บอกว่า “MLX ใช้ Neural Engine” นั้นไม่ถูกต้อง
    MLX รันได้บน CPU, Apple GPU(Metal) และ NVIDIA GPU(CUDA) ด้วย (ลิงก์)
  • ถ้ามีการโพสต์ โค้ดที่ใช้ทำให้บั๊กเกิดซ้ำได้ ก็น่าจะช่วยทั้ง Apple และคนอื่น ๆ ได้มาก
  • แบบนี้เองหรือเปล่าที่ทำให้ ระบบคาดเดาคำของ iPhone ฉันพัง ๆ
    • ที่แท้ไม่ใช่แค่ฉันคนเดียว ช่วงราว 6 เดือนที่ผ่านมา การพิมพ์แย่มากจริง ๆ
      ฉันลองเปลี่ยนการตั้งค่ามาทุกแบบแล้ว แต่ระบบคาดเดาคำก็ยัง หยุดทำงานหรือทำงานผิดปกติแบบสุ่ม
    • มันแย่จนบางทีฉันสงสัยว่าเขาตั้งใจทำแบบนี้หรือเปล่า
      หรืออาจเป็น การปรับแต่งเพื่อชักจูงให้คนหันไปใช้การป้อนด้วยเสียง
  • เป็นบทความที่ดี เพียงแต่อยากให้มี test case ขั้นต่ำที่แสดงให้ชัดว่า ผลลัพธ์การคำนวณทางคณิตศาสตร์ผิดจริง
  • พอถามว่า “2+2 ได้เท่าไหร่?” iPhone กลับตอบอะไรประหลาด ๆ แบบ “Applied.....*_dAK[...]”
    อย่างน้อยก็ดีที่มันไม่ได้ตอบว่า “7”
    • ฉันเดาว่าน่าจะเป็นฝีมือของ Trurl กับ Klapaucius ที่มารับหน้าที่ถามตอบ
  • แอปอื่นที่ใช้ Neural Engine ก็อาจมีอาการแปลกคล้ายกันด้วย
    ถ้าได้ลองทดสอบแอปบางตัวใน App Store ด้วย ก็น่าจะได้ผลที่น่าสนใจ