เฟรมเวิร์ก Apple Core AI
(developer.apple.com)- Core AI คือเฟรมเวิร์กใหม่สำหรับรัน ปรับแต่ง และนำโมเดล AI ไปใช้งานภายในแอปบน Apple silicon
- ใช้ CPU, GPU และ Neural Engine และสามารถผนวกการอนุมานของ
.aimodelเข้ากับแอปได้ผ่าน Swift API - มีทูลเชนสำหรับแปลงโมเดล PyTorch เป็นโมเดล Core AI รวมถึงการบีบอัด ดีบัก และพรีคอมไพล์
- โมเดลขนาดใหญ่ต้องทำ specialization ก่อนรัน จึงสำคัญต่อการออกแบบขั้นตอนดาวน์โหลด แคช และการใช้งานครั้งแรก
- ยังแนะนำโฟลว์การปรับแต่ง on-device vision, language และ state caching ด้วยตัวอย่าง SAM 3, Qwen และ Transformer
บทบาทของ Core AI
- Core AI คือชุดเทคโนโลยีใหม่สำหรับ การรัน AI บนอุปกรณ์ ครอบคลุมทั่วทั้งแพลตฟอร์มของ Apple
- รองรับ iOS 27.0+ Beta, iPadOS 27.0+ Beta, macOS 27.0+ Beta, tvOS 27.0+ Beta, visionOS 27.0+ Beta, watchOS 27.0+ Beta
- ให้โครงสร้างสำหรับรัน AI inference ประสิทธิภาพสูงในแอป โดยไม่ต้องส่งข้อมูลผู้ใช้ออกนอกอุปกรณ์
- Core AI ไม่ใช่แค่ API สำหรับรันโมเดล แต่ครอบคลุมตั้งแต่การเตรียมโมเดลจนถึงการผนวกเข้ากับแอป
- มีทั้งการปรับแต่งโมเดล การแปลงจาก PyTorch การสร้าง
.aimodelการดีบัก การโปรไฟล์ใน Xcode และการพรีคอมไพล์ - โมเดลที่ไม่ใช่โครงข่ายประสาท เช่น decision tree หรือโมเดล tabular feature engineering ยังเป็นขอบเขตของ Core ML
- มีทั้งการปรับแต่งโมเดล การแปลงจาก PyTorch การสร้าง
โฟลว์การพัฒนา: จาก PyTorch สู่แอป Swift
- Core AI เชื่อม เวิร์กโฟลว์ของ PyTorch เดิมเข้ากับขั้นตอนการนำขึ้นใช้งานบน Apple silicon
- ใช้
torch.exportแปลงโมเดล PyTorch เป็น exported program - ใช้
TorchConverterของ Core AI PyTorch Extensions เพื่อสร้าง.aimodel - ใช้ Core AI Optimization สำหรับการบีบอัดและปรับแต่งให้เหมาะกับ Apple silicon
- ใช้
- ในแอป Swift สามารถใช้ API ใหม่ของ Core AI Framework เพื่อโหลดโมเดลและรัน inference
AIModelใช้โหลดไฟล์.aimodelและตรวจสอบฟังก์ชัน inferenceInferenceFunctionคือกราฟการคำนวณเดี่ยวที่พร้อมรันNDArrayคือชนิดข้อมูลสำหรับเก็บข้อมูลอินพุตและเอาต์พุตแบบหลายมิติ- โครงสร้างคือป้อนอินพุต
NDArrayผ่านการเรียกrunแล้วรับผลการอนุมานกลับมา
- ใน Xcode สามารถตรวจดูไฟล์
.aimodelได้โดยตรง- ตรวจสอบขนาดโมเดล การกระจายตัวของโอเปอเรชัน เมทาดาทา และฟังก์ชันซิกเนเจอร์ได้
- มิติของ dynamic shape จะแสดงเป็น
?
การปรับประสิทธิภาพ: state, cache, memory layout
- ในโครงสร้างอย่างโมเดล Transformer ที่ลำดับอินพุตยาวขึ้นเรื่อย ๆ เวลา inference อาจเพิ่มขึ้นตามเวลา
- ในตัวอย่าง Snake เมื่อให้ Snake ทั้งสองตัวรันด้วยโมเดล AI เกมจะช้าลงเรื่อย ๆ เมื่อเวลาผ่านไป
- สามารถเห็นได้ใน Core AI Instruments ว่าช่วง inference ใช้เวลานานขึ้นต่อเนื่อง
- Core AI รองรับการใช้ state เพื่อสร้างโครงสร้างอย่าง key/value cache
- state เป็นทั้งอินพุตของโมเดล และถูกอ่านพร้อมอัปเดตแบบ in-place ระหว่าง inference
- เก็บ key/value ของขั้นก่อนหน้าไว้ในแคชโดยไม่ต้องคำนวณซ้ำ
- ทำให้ไม่ต้องป้อนประวัติเกมทั้งหมดกลับเข้าไปทุกครั้ง
- ฝั่ง Swift สามารถส่งคอลเลกชัน mutable view ผ่านอาร์กิวเมนต์
statesของInferenceFunction.run- โมเดลที่อัปเดตแล้วสามารถรักษาความเร็วให้คงที่ได้แม้เวลาผ่านไป
- ใน Instruments ก็เห็นว่าความหน่วงของ inference เพิ่มช้าลงมาก
- Core AI ยังมีฟีเจอร์ควบคุมหน่วยความจำเพื่อลดโอเวอร์เฮดใน inference loop
- ตรวจสอบ memory layout ที่เหมาะสมที่สุดของ
NDArrayและจัดสรรตามโครงสร้างนั้นได้ - สามารถจัดสรรค่าเอาต์พุตล่วงหน้าเพื่อหลีกเลี่ยงการสร้างเอาต์พุตใหม่ระหว่าง inference
- ใช้ asynchronous values เพื่อ pipeline ฟังก์ชัน inference หลายตัวได้
- ตรวจสอบ memory layout ที่เหมาะสมที่สุดของ
การนำโมเดลไปใช้งาน: ดาวน์โหลด, specialization, พรีคอมไพล์
- โมเดล Core AI เป็น representation ต้นทางที่รันได้บนอุปกรณ์ Apple ทุกเครื่อง แต่ก่อนรันจริงต้องทำ specialization ตามอุปกรณ์
- ตอนโหลดโมเดล ระบบจะตรวจสอบก่อนว่ามีผลลัพธ์จาก specialization อยู่ในแคชแล้วหรือไม่
- ถ้าไม่มี จะสร้าง execution artifact ที่เหมาะกับอุปกรณ์และเวอร์ชัน OS นั้น
- โมเดลขนาดใหญ่อาจใช้เวลานานในการทำ specialization จึงสำคัญที่ไม่ควรแทรกไว้กลางการโต้ตอบของผู้ใช้
- ในตัวอย่าง SAM 3 ตอนรันครั้งแรกจะมีทั้งการโหลดโมเดลและ specialization ขนาดใหญ่ ทำให้ spinner แสดงอยู่นาน
- เสนอให้ดาวน์โหลดโมเดลผ่าน Background Assets เฉพาะเมื่อผู้ใช้เลือกลองใช้จากหน้าที่แนะนำฟีเจอร์
- สามารถใช้คำสั่ง
coreai-buildเพื่อคอมไพล์บางส่วนล่วงหน้าบนเครื่องพัฒนาได้- สร้าง compiled model สำหรับสถาปัตยกรรมอุปกรณ์ที่ระบุ
- แม้ยังต้องทำ specialization บนอุปกรณ์ผู้ใช้ แต่ปริมาณงานที่เหลือจะลดลง ทำให้เวลาเตรียมพร้อมสั้นลง
- สามารถควบคุม model cache แบบโปรแกรมได้ด้วย
AIModelCache- ลบรายการที่ไม่จำเป็น
- ควบคุมนโยบายการเก็บรายการ
- แชร์แคชระหว่างหลายแอปใน app group เดียวกัน
การปรับแต่งโมเดลและการดีบัก
- Core AI Optimization มีความสามารถด้านการบีบอัดและ quantization ของโมเดล
- รองรับการบีบอัดน้ำหนักแบบ INT4, INT8, FP4, FP8
- มี API สำหรับ quantization ที่ใช้ calibration data หรือ quantization aware training
- ในตัวอย่าง SAM 3 แอสเซ็ต baseline แบบ 32 บิตมีขนาดเกิน 3GB และหลังบีบอัดเป็น 4 บิตเหลือราว 430MB
- เมื่อบีบอัดอย่างหนักกับทุกเลเยอร์ กลับตรวจไม่พบดอกไม้ที่ถูกบังอยู่หนึ่งดอก
- ดูจากเอาต์พุตอย่างเดียวจะระบุได้ยากว่าเลเยอร์ไหนเป็นปัญหา
- Core AI Debugger ใช้เปรียบเทียบค่าภายในของโมเดลที่แปลงแล้วกับโมเดล PyTorch ต้นฉบับ
- แสดงโครงสร้างโมเดลเป็นกราฟ
- ตรวจดูค่า tensor ระหว่างทางได้
- ไล่ย้อนกลับไปถึงบรรทัดที่เจาะจงในซอร์สโค้ด Python ได้
- ไฮไลต์โอเปอเรชันที่มีความต่างสูงตามเกณฑ์ PSNR
- ในการเปรียบเทียบ SAM 3 จุด sync point ที่มี PSNR ต่ำส่วนใหญ่เกิดใน detector decoder
- detector block มีเพียง 4% ของพารามิเตอร์ทั้งหมด จึงได้ประโยชน์จากการบีบอัดไม่มาก
- เมื่อยกเว้น detector ออกจากเป้าหมายการทำ quantization ก็สามารถตรวจพบดอกไม้ทั้งหมดได้อีกครั้งและได้คุณภาพกลับสู่ baseline
Core AI Models และ API ระดับสูง
- รีโพซิทอรี Core AI Models มีโมเดลยอดนิยมและ export recipe ที่นำไปแปลงและปรับแต่งให้เหมาะกับแอปได้
- สามารถหาโมเดลตระกูล SAM 3 และ Qwen แล้วแปลงเป็นโมเดล Core AI ได้
- Swift package มี abstraction สำหรับขั้นตอน pre-processing และ post-processing ของแต่ละโมเดล
- โมเดล segmentation อย่าง SAM 3 สามารถใช้งานผ่าน
CoreAIImageSegmenter- แยกวัตถุด้วย text prompt
- ดึง mask ผ่าน Swift API ได้โดยไม่ต้องจัดการ raw tensor shape โดยตรง
- โมเดลภาษาอย่าง Qwen สามารถโหลดผ่าน
CoreAILanguageModel- มี abstraction สำหรับ asset loading, engine creation และ tokenizer setup
- ใช้งานเชื่อมกับ
LanguageModelSessionของFoundationModelsได้ - รองรับทั้งการตอบกลับแบบสตรีมและ structured output บนพื้นฐาน
@Generable
จุดที่นักพัฒนาควรจับตา
- Core AI มีขอบเขตกว้างกว่า “API สำหรับรันโมเดลในแอป” โดยเป็น ระบบการนำ AI บนอุปกรณ์ไปใช้งานจริง
- ครอบคลุมโฟลว์แปลงโมเดล PyTorch เป็น
.aimodelสำหรับ Apple silicon - มี API สำหรับรันโมเดลในแอป Swift อย่างปลอดภัยและมีประสิทธิภาพ
- รองรับการวิเคราะห์ประสิทธิภาพและความแม่นยำผ่าน Xcode, Instruments และ Debugger
- ครอบคลุมโฟลว์แปลงโมเดล PyTorch เป็น
- ในการออกแบบแอป ขั้นตอน การเตรียมพร้อม ส่งผลต่อประสบการณ์ผู้ใช้มากกว่าตัวโมเดลเอง
- ต้องตัดสินใจว่าจะ bundle โมเดลมากับแอปหรือรับผ่าน Background Assets
- ต้องออกแบบว่าจะนำเสนอการดาวน์โหลดและ specialization ในการรันครั้งแรกอย่างไร
- นโยบายแคชและกลยุทธ์พรีคอมไพล์เชื่อมโยงโดยตรงกับการใช้งานโมเดลขนาดใหญ่
- Core AI นำเสนอโฟลว์การพัฒนาสำหรับใช้งานโมเดล vision, language และโมเดลตระกูล Transformer แบบ on-device บนแพลตฟอร์ม Apple
- ใช้ตัวอย่าง SAM 3 อธิบายโฟลว์การบีบอัด แยกส่วน และดีบักของโมเดล segmentation
- ใช้ตัวอย่าง Qwen อธิบายการเชื่อมโมเดลภาษาคัสตอมเข้ากับ Foundation Models API
- ใช้ตัวอย่าง Snake Transformer อธิบายการปรับแต่ง key/value cache ด้วย state
ลิงก์อ้างอิง
- Apple Core AI Documentation: https://developer.apple.com/documentation/coreai/
- WWDC26: พบกับ Core AI: https://www.youtube.com/watch?v=XJFfCVW1UZ0
- WWDC26: ผนวกโมเดล AI บนอุปกรณ์เข้ากับแอปด้วย Core AI: https://www.youtube.com/watch?v=gl5lD2gEhb0
- WWDC26: เจาะลึกการสร้างและปรับแต่งโมเดล Core AI: https://www.youtube.com/watch?v=MdlyLT_y3i0
1 ความคิดเห็น
ความเห็นจาก Hacker News
ค่อนข้างคาดหวังกับอัปเดต Foundation Models แบบ on-device ที่กำลังจะมา: https://developer.apple.com/documentation/updates/foundation...
ตอนนี้ยังมีข้อมูลไม่มากนัก
แต่ก็อาจมีอคติได้ เพราะกำลังดูแล https://github.com/Arthur-Ficial/apfel อยู่
fmแล้วหรือยัง มีการพูดถึงใน Platforms State of the Unionพอรันแล้วจะได้ผลลัพธ์แบบนี้: https://gist.github.com/robgough/7893602895e7580117475076198...
ปกติแล้วจะชอบฝั่งที่ซอฟต์แวร์แยกเป็นชิ้นๆ มากกว่า แต่ในกรณีของ Apple ก็มีฟีเจอร์ที่ให้มากับระบบหลายอย่างที่ชอบ
สิ่งที่ดึงดูดเป็นพิเศษคือซอฟต์แวร์จะรู้ว่า “แพลตฟอร์มนี้มีโมเดลนี้อยู่” และนำไปใช้กับงาน generative AI เล็กๆ ไปจนถึงงานที่ใหญ่ขึ้นเรื่อยๆ ได้
ก็กำลังเจาะลึกเครื่องมือเขียนโค้ดแบบ local agent มากขึ้นเช่นกัน โดยเริ่มจาก
little-coder --model ollama/gemma4:12b-it-qatยังทำหนังสือเล่มเล็กแจกฟรีไว้เล่มหนึ่งเพื่อช่วยประหยัดเวลาตั้งค่าไปได้ไม่กี่นาที: https://leanpub.com/read/local-coding-agents
ค่อนข้างไม่พอใจกับกระแสโหมการเติบโตของ AI ที่ยึด hyperscaler เป็นศูนย์กลาง โดยเฉพาะต้นทุนด้านสิ่งแวดล้อมและต้นทุนทางสังคมของดาต้าเซ็นเตอร์ ดังนั้นจึงสนับสนุนทุกความพยายามที่ผลักดัน AI แบบ local และ private
ตอนนี้ที่มีการรองรับ MCP แล้ว ก็อยากฟังเพิ่มเกี่ยวกับ กลยุทธ์ containerization/seatbelt ด้วย
ยังไม่เห็นข่าวว่ามีการใช้ Darwin อย่างไรภายในระบบคอนเทนเนอร์ของ Apple
Apfel เป็นโปรเจกต์ที่ยอดเยี่ยม และเป็นเหตุผลเดียวที่ทำให้อยากอัปเกรดเป็น Tahoe
วิดีโอ WWDC 2026 Core AI
Meet Core AI - https://developer.apple.com/videos/play/wwdc2026/324/
Dive into Core AI model authoring and optimization - https://developer.apple.com/videos/play/wwdc2026/325/
Integrate on-device AI models into your app using Core AI - https://developer.apple.com/videos/play/wwdc2026/326/
นี่ดูเหมือนเป็นวิธีใหม่ในการแปลงโมเดล PyTorch ไปเป็นฟอร์แมตที่รันได้ทั้งบน CPU, GPU และ Apple Neural Engine (ANE) [0]
เลยสงสัยว่ามันจะมาแทนที่ API เดิมอย่าง Core ML ไปทั้งหมดหรือไม่ [1]
[0]: https://apple.github.io/coreai-optimization/
[1]: https://developer.apple.com/documentation/coreml/
unsloth เป็นตัวอย่างที่ดีของการทำงานลักษณะนี้แบบ “batteries included”
Apple ควรอธิบายให้ดีกว่านี้ว่าแต่ละอย่างมีข้อดีข้อเสียอะไร และมีความเท่าเทียมกันด้านความสามารถแค่ไหน
มีการบอกว่าจะให้แอปที่มียอดดาวน์โหลดต่ำกว่า 2 ล้านครั้งเข้าถึงโมเดลระดับเซิร์ฟเวอร์ได้ฟรี พร้อมการรับประกัน ความเป็นส่วนตัว แบบเดียวกัน
หวังว่าเมื่อเวลาผ่านไปจะขยายไปยังทุกแอปได้ แม้จะมีข้อจำกัดด้านฮาร์ดแวร์/ต้นทุน แต่ดูเหมือนนักพัฒนารายใหญ่ก็น่าจะจ่ายค่าใช้งานได้
https://developer.apple.com/private-cloud-compute/
อนาคตของ AI ชัดเจนว่าเป็นแบบ รันในเครื่อง และช่วงหลังก็ถูกอธิบายว่าเป็น “โทเค็นไม่จำกัด”
M1 MacBook Pro ก็ทำแบบนั้นได้ และ RTX 3090 ก็ทำได้เช่นกัน
ไม่จำเป็นต้องจ่ายหลายร้อยดอลลาร์ทุกเดือน และคนอื่น ๆ ก็เช่นกัน
แต่พอผ่านไป 40 ปี เรากลับย้อนมาสู่ โครงสร้างพื้นฐานแบบรวมศูนย์ ที่ใกล้เคียงกับสมาร์ทเทอร์มินัลยุคใหม่
อนาคตของ AI ก็น่าจะไหลไปในทิศทางนั้นในท้ายที่สุด อาจแกว่งไปมาระหว่างโลคัลกับรวมศูนย์
เพียงแต่ถ้าผู้คนสามารถหาเงินได้จากการขายสิ่งที่รันในเครื่องได้ การรวมศูนย์ก็ดูเหมือนจะสร้างอำนาจที่มากกว่าและเงินที่มากกว่า
ผู้ใช้ทั่วไปต้องการโมเดลแบบอเนกประสงค์ ดังนั้นแอปแชต AI จะยังคงอยู่ต่อไป
โปรแกรมส่วนใหญ่จะได้ประโยชน์จาก AI แบบเฉพาะทางที่รันในเครื่องได้ และ จำนวนโปรแกรมมีมากกว่าจำนวนผู้ใช้อย่างมาก
ดูเหมือนว่า Apple กำลังทำงานฝั่ง activation values อยู่ด้วย เท่าที่ทราบคือ w4a8, w4a16
ถ้าทำได้จริง และนั่นก็เป็นสมมติฐานใหญ่ เมื่อพิจารณาจากการเข้าถึงตลาดของ Apple มันอาจกำหนดแนวทางของการฝึกและให้บริการโมเดลที่มีพารามิเตอร์ต่ำกว่า 1 แสนล้านได้อย่างมาก
การใช้งานหลักจะเป็นแบบ on-device และส่วนใหญ่น่าจะเป็นบน macOS มากกว่า iOS
ยังไม่เห็นที่ไหนพูดถึงเรื่องนี้มากนัก แต่ การอนุมานแบบกระจายระหว่าง Mac น่าสนใจดี มีทั้ง JACCL บน Thunderbolt 5,
mlx_lm.serverที่เข้ากันได้กับ OpenAI และการรันแบบเอเจนต์บน MacApple แยก MLX (การนำเข้าน้ำหนักโดยตรง) ออกจาก Foundation Models / Core AI
นี่คือเหตุผลที่บริษัท AI ต่างรีบเข้าตลาดหุ้น
ภายในปลายปีหน้า AI ส่วนใหญ่จะ รันบนอุปกรณ์โดยตรง
พวกเขาไม่มีคูเมืองป้องกันธุรกิจ แตะขีดจำกัดของการสเกลแล้ว และสิ่งที่ดูเหมือนเวทมนตร์ส่วนใหญ่ก็สามารถกลั่นเป็นโมเดลที่เล็กกว่าได้ ซึ่งพวกเขาเองก็รู้เรื่องนั้น
การที่ Qwen หยุดปล่อยโมเดลระดับ 120B นั้นมีนัยสำคัญมาก
ภายใน 10 ปีข้างหน้า หรืออาจภายใน 3 ปี จะมีใครสักคนปล่อยโมเดลระดับ 256B ที่เทียบชั้น Opus 4.5 และรันในเครื่องได้
ตอนนี้วิศวกรของเรากำลังจ่ายค่าโทเค็น Opus ราว 800 ดอลลาร์ต่อเดือน และด้วยอัตรานั้น ระยะเวลาคืนทุนของ local LLM อยู่ที่ประมาณ 10 เดือน
น่าเสียดายที่โมเดลที่ใหญ่กว่าก็ยังดูเหมือนเป็นโมเดลที่ดีกว่าอยู่ดี
ตอนนี้นี่คือ คำขอ AI อันดับหนึ่ง ของฉันเลย ได้โปรด Apple
สงสัยว่าบน Linux มีอะไรแบบนี้หรือเปล่า
เช่น ถ้าเป็นนักพัฒนาแอปพลิเคชัน จะสามารถสมมติได้ไหมว่าเมื่อเคอร์เนลเป็นเวอร์ชันที่สูงกว่าระดับหนึ่ง จะมีอะไรอย่าง GNU Core AI อยู่
ตอนนี้ Apple เองก็ดูเหมือนจะอยู่ในสภาพนั้นแล้วระหว่าง Core ML, MLX และ Core AI
ยังไม่เห็นสัญญาณว่าปัญหาการแตกกระจายของเฟรมเวิร์กจะหายไปในเร็ววัน
NVIDIA อยากให้ทุกคนทำทั้งการฝึกและการอนุมานด้วย CUDA และพยายามปฏิเสธว่า NPU มีประโยชน์
ผู้ผลิต NPU แต่ละรายต่างก็มีสถาปัตยกรรมของตัวเอง และมีเฟรมเวิร์กแยกต่างหากที่ปรับตามข้อจำกัดที่สืบทอดมาจากฮาร์ดแวร์ซึ่งออกแบบมาตั้งแต่ก่อนยุค LLM ส่วนใหญ่ก็มีอีกเฟรมเวิร์กหนึ่งที่มุ่งเป้าไปที่ GPU ด้วย
ผู้ผลิตระบบปฏิบัติการเองก็มักมีเฟรมเวิร์กอีกหนึ่งหรือสองตัวที่อยากให้ใช้แทนเฟรมเวิร์กเฉพาะฮาร์ดแวร์
สงสัยว่านี่หมายความว่าสามารถรันอะไรก็ได้ที่ต้องการบน ANE หรือไม่
ครั้งล่าสุดที่ลอง ดูเหมือนจะใช้ได้เฉพาะกับ ฟีเจอร์ของ Apple ฝั่ง first-party อย่าง Face ID
สิ่งที่ใช้ ANE ไม่ได้เลยคือ MLX