تكامل Apple Core AI#
لا يدعم Ultralytics format=coreai أو التصدير المباشر إلى تنسيق .aimodel الخاص بأبل. استخدم تكامل Core ML المدعوم للنشر على أبل.
Core AI هو إطار عمل جديد من أبل لتشغيل الشبكات العصبية مباشرة على شريحة أبل. يقدم تنسيق نموذج .aimodel، وواجهة برمجة تطبيقات استدلال Swift حديثة، وأدوات تحويل تعتمد على PyTorch، والترجمة المسبقة، وتخصيص النماذج، وأدوات تصحيح الأخطاء وتحليل الأداء المخصصة.
تصف Apple تقنية Core AI بأنها التطور التالي لتنفيذ الذكاء الاصطناعي على الجهاز، وهي إطار عمل الاستدلال الذي يقف خلف Apple Intelligence على الجهاز. صُممت هذه التقنية لمعماريات الشبكات العصبية الحالية، بدءاً من نماذج الرؤية المدمجة وصولاً إلى النماذج التوليدية الكبيرة، ويمكنها جدولة العمل عبر وحدة المعالجة المركزية (CPU)، ووحدة معالجة الرسومات (GPU)، ومحرك Apple العصبي (ANE).
تُعد Core AI مسار نشر جديداً وليست مجرد اسم جديد لـ Core ML. تستخدم أطر العمل تنسيقات نماذج مختلفة، وأدوات تحويل، وواجهات برمجة تطبيقات وقت التشغيل، وأنماط تكامل تطبيقات مختلفة.
مقارنة بين Core AI و Core ML#
| القدرة | Core AI | Core ML |
|---|---|---|
| أصل النموذج | .aimodel | .mlpackage أو .mlmodel |
| تصدير Ultralytics | غير متاح | متاح مع format=coreml |
| واجهة برمجة تطبيقات وقت التشغيل من Apple | AIModel، وInferenceFunction، وNDArray | MLModel، غالباً من خلال VNCoreMLModel وVNCoreMLRequest |
| سير عمل التحويل | torch.export في PyTorch من خلال coreai-torch | تحويل TorchScript من خلال coremltools |
| التركيز الأساسي | الشبكات العصبية الحديثة والذكاء الاصطناعي التوليدي | نشر التعلم الآلي واسع النطاق، بما في ذلك النماذج العصبية وغير العصبية |
| تكامل الصور | تُجهز التطبيقات الموترات (tensors) أو تستخدم واصفات ومخازن صور Core AI | تكامل مباشر مع إطار عمل Vision لتغيير حجم الصور، وتحديد الاتجاه، والطلبات |
| الأجهزة | CPU و GPU ومحرك Apple العصبي | CPU و GPU ومحرك Apple العصبي |
| تجهيز النموذج | التخصيص عند التثبيت أو الاستخدام الأول، مع تجميع اختياري مسبق | Xcode أو تجميع النموذج على الجهاز |
| عمليات مخصصة | خفض عمليات Core AI المخصصة ونوى Metal | طبقات Core ML المخصصة وعمليات MIL المدعومة |
| توفر النشر | جيل أنظمة تشغيل Apple الجديد؛ حالياً في مرحلة تجريبية | دعم واسع عبر أنظمة تشغيل Apple الحالية |
| حزم SDK الخاصة بـ Ultralytics لنظامي iOS و Flutter | غير مدعوم بعد | مدعوم بالكامل |
تظل Core ML الخيار الأنسب عندما يحتاج التطبيق إلى تغطية واسعة للأجهزة، أو تكامل مع إطار عمل Vision، أو استخدام أنواع نماذج مثل أشجار القرار وخطوط أنابيب البيانات الجدولية. تواصل Apple دعم Core ML وتوجه المطورين الذين يستخدمون أنواع نماذج غير عصبية لاستخدامه.
كيف يعمل تنسيق Core AI#
يبدأ سير عمل تأليف Core AI من نموذج PyTorch:
PyTorch model
↓ torch.export
ExportedProgram
↓ coreai-torch
Core AI program
↓ optimize and save
.aimodel
↓ specialize or compile ahead of time
Apple silicon executableتقوم حزمة coreai-torch من أبل بتحويل torch.export.ExportedProgram عن طريق خفض عمليات PyTorch ATen إلى عمليات Core AI. يمكن تنفيذ العمليات غير المدعومة باستخدام خفض مخصص أو نواة Metal مخصصة.
أصل .aimodel الناتج هو أصل نموذج غير مخصص. عندما يقوم التطبيق بإعداد النموذج، يقوم Core AI بتخصيصه للجهاز المستهدف. يمكن للتاتبيق السماح بحدوث ذلك عند الاستخدام الأول، أو طلب التخصيص مبكراً، أو شحن نموذج مترجم مسبقاً لتقليل وقت التحميل الأولي.
في Swift، تقوم التطبيقات بتحميل الأصل باستخدام إطار عمل Core AI، وتحديد وظيفة استدلال، وتوفير مدخلات NDArray محددة النوع، وتلقي مخرجات مسماة. يختلف هذا عن تغليف نموذج Core ML في طلب Vision، لذا يتطلب تبني Core AI وقت تشغيل للتطبيق مصمماً لأصول .aimodel.
للاطلاع على تفاصيل التنفيذ، راجع وثائق أبل الخاصة بـ AIModel، وتخصيص النموذج والتخزين المؤقت، والترجمة المسبقة.
استخدام Ultralytics المستقبلي#
توضح الأمثلة التالية التكامل المقصود وهي غير متوفرة في إصدار Ultralytics الحالي. استخدم format=coreml للحصول على تصصدير مدعوم لأبل اليوم.
بعد طرح التكامل المخطط له، من المتوقع أن تقوم واجهة برمجة تطبيقات Python بتصدير نموذج YOLO26 إلى .aimodel بقيمة تنسيق مخصصة:
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
model.export(format="coreai") # Planned: creates yolo26n.aimodelأمر CLI المكافئ المخطط له هو:
yolo export model=yolo26n.pt format=coreai # Planned: not yet availableسيتم توثيق الوسائط النهائية، ومهام YOLO المدعومة، وخيارات الدقة، وسلوك الأشكال الديناميكية في وضع التصدير بعد تنفيذ المُصدِّر والتحقق من صحته.
على نظام iOS 27 أو macOS 27، سيقوم التطبيق بعد ذلك بتحميل وتشغيل الأصل المصدر من خلال واجهة برمجة تطبيقات Swift لـ Core AI من Apple. أسماء الوظائف والموترات أدناه توضيحية؛ سيتم نشر عقد مخرجات Ultralytics المدعوم مع المصدر:
import CoreAI
let modelURL = Bundle.main.url(forResource: "yolo26n", withExtension: "aimodel")!
let model = try await AIModel(contentsOf: modelURL)
guard let function = try model.loadFunction(named: "main") else {
throw AppError.missingInferenceFunction
}
let outputs = try await function.run(inputs: ["image": imageTensor])على عكس سير عمل Core ML وVision الحالي، سيحتاج مسار Core AI المستقبلي إلى تحديد المعالجة المسبقة للصورة، وإنشاء NDArray، وبيانات النموذج الوصفية، وفك تشفير المخرجات في حزمة تطوير برمجيات iOS من Ultralytics. توفر أبل تفاصيل واجهة برمجة التطبيقات الحالية في وثائق إطار عمل Core AI وأمثلة النماذج العاملة في مستودع نماذج Core AI.
مزايا Core AI#
يوفر Core AI العديد من المزايا الواعدة لنشر Ultralytics في المستقبل:
- مسار تصصدير PyTorch الحديث: يبدأ التحويل من
torch.export، مع الحفاظ على رسم بياني PyTorch أكثر تعبيرية من سير عمل التتبع الذي يستخدمه العديد من المُصدِّرين الحاليين. - تحكم دقيق في وقت التشغيل: يمكن للتطبيقات إدارة التخصيص، ومخابئ النماذج المجمعة، ووظائف الاستدلال، والذاكرة، وتخصيص الحوسبة.
- دعم متقدم للنماذج: صُممت التنفيذات ذات الحالة (Stateful)، والأشكال الديناميكية، والوظائف المتعددة في أصل واحد، ونوى Metal المخصصة لرؤية الكمبيوتر الحديثة والمعماريات التوليدية.
- أدوات مطورين متخصصة: يمكن لـ Core AI Debugger فحص الرسوم البيانية وقيم الموترات وتتبعها وصولاً إلى كود Python الأصلي. يوفر Xcode و Instruments تحليل أداء وقت التشغيل.
- فرص النقل الصفري (Zero-copy): يكشف Core AI عن عناصر تحكم في التخزين والمخازن المؤقتة تهدف إلى تقليل عمليات النسخ بين مهام الكاميرا والرسومات والاستدلال.
- تحسين شرائح Apple: يسمح التخصيص للجهاز لـ Apple بتحسين النموذج لكل من CPU و GPU والمحرك العصبي المتاح على الجهاز المعين.
- ضغط مرن: تدعم أدوات تحسين Core AI من Apple التكميم (quantization)، وتوزيع الألوان (palettization)، والتقليم (pruning)، بما في ذلك تنسيقات الأوزان منخفضة البت.
قد تكون هذه القدرات مفيدة بشكل خاص لنماذج YOLO المستقبلية ذات التنفيذ الديناميكي، أو المكونات متعددة الوسائط الأكبر، أو العمليات المخصصة التي لا تتوافق بشكل نظيف مع عمليات Core ML الحالية.
العيوب والقيود الحالية#
لا يعتبر Core AI حالياً بديلاً لمسار إنتاج Core ML:
- تتطلب أنظمة تشغيل جديدة: يستهدف الإطار العام جيل iOS 27 و macOS 27، بينما يدعم Core ML قاعدة تثبيت أكبر بكثير.
- برمجيات تجريبية: لا يزال إطار عمل Core AI من Apple وأجزاء من سلسلة أدوات Python الخاصة به أولية وقد تتغير قبل إصداراتها المستقرة.
- بيئة تصدير أضيق: تتطلب
coreai-torchحالياً Python 3.11 أو أحدث وإصدارات PyTorch حديثة، وهي أضيق بكثير من نطاق Python وPyTorch المدعوم من Ultralytics. - لا يوجد أمر Ultralytics حالي: لم يتم تنفيذ
yolo export format=coreaiأو اختبارها أو تغطيتها بواسطة ضمانات التوافق الخاصة بـ Ultralytics. - لا يوجد وقت تشغيل لتطبيقات Ultralytics حتى الآن: تقوم تطبيق YOLO iOS الرسمي ومكون Flutter الإضافي حالياً بتحميل عناصر Core ML من خلال
MLModelوVision. - يلزم ترحيل التطبيق: لا يمكن استبدال
.aimodelبـ.mlpackage؛ فعمليات تحميل النموذج، والمعالجة المسبقة، وطلبات الاستدلال، ومعالجة البيانات الوصفية، وفك تشفير المخرجات تحتاج إلى تنفيذ Core AI. - أدلة إنتاج محدودة: تحتاج الأداء، واستهلاك الطاقة، ووقت التخصيص عند التشغيل الأول، والدقة، والضغط إلى التحقق عبر مصفوفة مهام YOLO والأجهزة المدعومة.
- لا يوجد خط أنابيب NMS قديم ثابت: يمكن لـ Core ML تغليف مرحلة NMS لنماذج كشف YOLO القديمة. من المتوقع أن يركز تكامل Core AI الأول على نماذج YOLO26 التي لا تعتمد على NMS.
أي تنسيق Apple يجب أن تستخدم؟#
استخدم Core ML اليوم عندما تحتاج إلى:
- أمر تصدير مدعوم من Ultralytics
- النشر عبر أنظمة تشغيل Apple الحالية والقديمة
- التكامل مع Ultralytics iOS SDK أو Flutter SDK
- معالجة الصور عبر إطار عمل Vision
- نشر YOLO بدقة FP16 و INT8 مختبرة
- NMS مدمج لنماذج الكشف القديمة المتوافقة
قيّم Core AI في المستقبل عندما يمكنك طلب iOS 27 أو macOS 27 وتحتاج إلى:
- أحدث وقت تشغيل للشبكة العصبية على جهاز Apple
- إدارة صريحة للتخصيص والتخزين المؤقت
- تنفيذ نماذج ديناميكي أو ذو حالة متقدم
- عمليات Core AI مخصصة أو نوى Metal
- تصحيح أخطاء رسم بياني Core AI مفصل وتحليل أداء وقت التشغيل
من المتوقع أن تتعايش Core ML و Core AI أثناء انتقال التطبيقات. لا يؤدي دعم Core AI إلى إزالة الحاجة إلى Core ML فوراً لأن أهداف النشر وعقود التطبيقات الخاصة بهما تختلف.
خارطة طريق Ultralytics#
يقيم Ultralytics هدف تصصدير مخصص لـ coreai. اتبع خارطة الطريق المرتبطة وملاحظات الإصدار للخطط والتوفر؛ يظل Core ML هدف نشر أبل المدعوم.
قبل أن يصبح Core AI تنسيق تصدير مدعوماً، يحتاج التكامل إلى:
- التصدير والتحقق العددي عبر مهام الكشف، وتجزئة المثيلات، والتجزئة الدلالية، والتصنيف، وتحديد الوضع، وصناديق التحديد الموجهة.
- اختبار دقة FP16 والمكممة مقابل خطوط أساس PyTorch و Core ML.
- معايير زمن الوصول على الجهاز، والذاكرة، والطاقة، ووقت التخصيص.
- تحميل نموذج Core AI والمعالجة المسبقة في Ultralytics iOS SDK.
- تكامل Flutter واستراتيجية توافق للأجهزة التي تعمل بإصدار أقدم من iOS 27.
- إصدارات مستقرة لإطار عمل Apple وأدوات التحويل.
اتبع خارطة طريق Ultralytics وملاحظات الإصدار لمعرفة مدى التوفر. حتى يتم طرح الدعم، تعتبر الأوامر أو تصحيحات الطرف الثالث التي تنتج ملفات .aimodel تجريبية وخارج مصفوفة تصصدير Ultralytics المدعومة.
موارد إضافية#
- نظرة عامة على Apple Core AI
- وثائق إطار عمل Core AI
- ملحقات Core AI PyTorch
- تحسين Core AI
- مستودع نماذج Apple Core AI
- تكامل Ultralytics Core ML
الأسئلة الشائعة#
لا. يقوم Ultralytics بتصدير نماذج أبل كملفات Core ML
.mlpackageمن خلالmodel.export(format="coreml", imgsz=640)(imgsz=224للتصنيف)؛ ولا يعد.aimodelهدف تصصدير.ليس فوراً. Core AI هو مسار Apple الأحدث للشبكات العصبية الحديثة، بينما يظل Core ML مدعوماً ويوفر تغطية أوسع لنظام التشغيل، وتكامل Vision، ودعماً للنماذج غير العصبية.
لا. فهي تحتوي على تمثيلات مختلفة للنماذج ويتم تحميلها بواسطة أطر عمل مختلفة. يجب أن يبدأ التحويل من النموذج المصدري من خلال سلسلة أدوات Apple المناسبة.
من المتوقع أن يتعايش التكامل الأولي مع Core ML. يعتمد أي قرار استبدال مستقبلي على اعتماد نظام التشغيل، واستقرار الأدوات، والأداء، ودعم iOS و Flutter اللاحق.