Core ML: فریم ورک کا آرکی ٹیکچر اور موڈل انضمام

مصنف: IT Sectr اشاعت: 2026-07-17 مطالعے کا وقت: 10 منٹ

Core ML Apple کا مشین لرننگ فریم ورک ہے جو آپکو پھلے سے ٹریند ML ماڈلز کو براہ راست iOS, iPadOS, macOS, watchOS اور tvOS ایپ لیکیشنز میں ضم کرنے کی اجازت دیتا ہے۔ یہ فریم ورک نیورل نیٹورکس، فیصلہ ساز درخت، لینیئر ریگریشن اور انسیمبل طریقوں کو سپورٹ کرتا ہے، ساتھ ہی TensorFlow، PyTorch، Keras اور ONNX سے Apple کے اپنے فارمیٹ میں موڈل تبدیل کا بھی سپورٹ کرتا ہے۔ Apple Machine Learning Research (2025) کے مطابق، Core ML مکمل طور پر آن ڈیوائس انفرنس کرتا ہے، ڈیٹا رازداری کو یقینی بناتا ہے اور زیادہ تر موڈلز کے لیے 10 ملی سیکنڈ سے کم تاخیر یقینی بناتا ہے۔

اہم نکات

  • Core ML سرور سائڈ پروسیسنگ کے بغیر آن ڈیوائس ML موڈل چلانے کے لیے Apple کا مالیکانہ فریم ورک ہے۔
  • TensorFlow، PyTorch، Keras، ONNX اور دیگر مقبول فارمیٹ سے موڈل تبدیل کو سپورٹ کرتا ہے۔
  • انفرنس Neural Engine، GPU یا CPU پر خودکار انتخاب بہترین کمپیوٹنگ بیک اینڈ کے ساتھ چلتا ہے۔
  • فریم ورک میں شامل ہیں: کوانٹائزیشن (Float16, Int8)، پروننگ، تیزی کے لیے لیئر فیوژن۔
  • Core ML 5 (2024) نے .mlpackage بینڈلز، ڈائنامک نیورل نیٹورکس اور آن ڈیوائس نگران شدہ سیکنینگ کا سپورٹ شامل کیا۔

Core ML کیا ہے؟

Core ML Apple کے مشین لرننگ ایکو سیسٹم کا ایک اہم جزو ہے، جسے WWDC 2017 میں متعارف کرایا گیا تھا۔ Core ML سے پہلے، iOS ڈیولپرز آن ڈیوائس ML موڈل چلانے کے لیے تیسرے فریقوں کی لائبریریز (TensorFlow Mobile, Caffe2) یا کسٹم حل استعمال کرتے تھے۔ Core ML نے تمام موڈل اقسام کے لیے — کلاسیکل ریگریشنز سے لیڧكر گہرے نیورل نیٹورکس تک — ایک واحد متحد انٹرفیس فراہم کیا اور مخصوص آلہ کے لیے نشیبی سطح کی بہترین سنبھالی۔

ترقی کی تاریخ

Core ML (2017) کا پہلا ورژن صرف مقررہ انپٹ سائز کے ساتھ ستاٹک موڈلز کو سپورٹ کرتا تھا۔ Core ML 2 (2018) نے بیچ پریڈکشن اور حقیقی وقت میں موڈل اپ ڈیٹ کا سپورٹ شامل کیا۔ Core ML 3 (2019) آن ڈیوائس ٹریننگ اور درجنوں نئے نیورل نیٹورک لیئرز کا سپورٹ لایا۔ Core ML 4 (2021) نے ملٹی آؤٹ پٹ موڈلز اور بہتر امیج پروسیسنگ کا سپورٹ متعارف کرایا۔ Core ML 5 (2024) نے ڈائنامک نیورل نیٹورکس اور نئے ML لیئرز کا استعمال کرتے ہوئے آن ڈیوائس نگران شدہ سیکننگ کا سپورٹ شامل کیا۔

آن ڈیوائس ML: فوائد

آن ڈیوائس مشین لرننگ چلانے سے تین اہم فوائد حاصل ہوتے ہیں: رازداری — ڈیٹا کبھی آلہ نہیں چھوڑتا (GDPR اور HIPAA کی ضروریات کو پورا کرتا ہے)، بہاور — انفرنس بغیر نیٹورک تاخیر کے ملی سیکنڈ میں مکمل ہوتا ہے، آف لائن دستیابی — موڈل انٹرنیٹ کنیکشن کے بغیر کام کرتا ہے۔ Apple Privacy Report (2025) کے مطابق، Apple پلیٹ فارمز پر 90% سے زائد ML انفرنسز Core ML کی وجہ سے آن ڈیوائس کی جاتی ہیں۔

Core ML آرکیٹیکچر اور کمپیوٹنگ بیک اینڈز

Core ML آرکیٹیکچر کئی تہوں کے اصول پر بنا ہے: سب سے اوپر سطح پر — ڈیولپر API (MLModel, MLFeatureProvider, MLPredictionOptions)، درمیانی سطح پر — .mlpackage فارمٹ میں موڈل، نیچلے سطح پر — کمپیوٹنگ بیک اینڈز: Apple Neural Engine (ANE)، GPU (Metal Shaders) اور CPU (BNNS، Accelerate framework)۔ Core ML موڈل اور آلہ کے ہارڈویئر کے مطابق بہترین بیک اینڈ کا خودکار انتخاب کرتا ہے۔

بیک اینڈآلہ جاتکارکردگی
Neural EngineiPhone Xs+, iPad A12+, Mac M1+زیادہ سے زیادہ (TOPS)
GPU (Metal)تمام Apple آلہ جاتزیادہ (متوازی کمپیوٹنگ)
CPU (BNNS)تمام Apple آلہ جاتبنیادی (مطابقت)

Apple Neural Engine

Neural Engine (ANE) Apple A12+ اور M1+ چپس میں ضم شدہ ایک ماہر نیورل پروسیسر ہے۔ ANE A17 Pro پر 15.8 TOPS اور M4 پر 38 TOPS تک کی کارکردگی کے ساتھ کنوولیوشنل نیورل نیٹورک (CNN) آپریشنز اور میٹرکس ضرب کے لیے بہترین کردہ ہے۔ Core ML خودکار طور پر تعین کرتا ہے کہ موڈل ANE پر چل سکتا ہے یا نہیں، اور اگر چل سکتا ہے تو اسے وہاں لوڈ کرتا ہے۔ اگر موڈل میں ANE کے ذریع غیر معاون آپریشنز ہیں، تو Core ML گرداوری کو GPU اور CPU کے درمیان تقسیم کرتا ہے۔

Metal Performance Shaders

GPU گرداوریوں کے لیے، Core ML Metal Performance Shaders Graph (MPSGraph) استعمال کرتا ہے، جو GPU پر گرداوری گراف بنانے اور چلانے کے لیے ایک فریم ورک ہے۔ MPSGraph Core ML سے نیورل نیٹورک گراف لے کر اسے مخصوص GPU آرکیٹیکچر (7 کور A17 GPU یا 40 کور M4 Ultra GPU) کے لیے بہترین کردہ Metal Shaders میں کمپائل کرتا ہے۔ MPSGraph کی خودکار بہترین میں لیئر فیوژن، ضروری آپریشنز کا خاتمہ اور بہترین ڈیٹا فارمیٹ کا انتخاب شامل ہے۔

معاون موڈل اقسام اور فارمیٹ

Core ML تین زمرہ میں تقسیم شدہ تمام اهم مشین لرننگ موڈل اقسام کو سپورٹ کرتا ہے: نیورل نیٹورکس (کنوولیوشنل CNN، ریکریو RNN/LSTM، ٹرانسفارمرز)، انسیمبل موڈلز (Random Forest، Gradient Boosting، XGBoost، فیصلہ ساز درخت) اور ریگریشن موڈلز (لینیئر ریگریشن، SVM، CRF)۔ ہر موڈل قسم کا اپنا MLModelType ذیلی پروٹیکل ہے، اور Core Lily مناسب بیک اینڈ اور تعمیل فارمیٹ کا خودکار انتخاب کرتا ہے۔

معاون نیورل نیٹورک لیئرز

Core ML نیورل نیٹورک لیئرز کی 150 سے زائد اقسام کو سپورٹ کرتا ہے: Convolution (1D/2D/3D)، BatchNormalization، Pooling (Max/Average)، Activation (ReLU، Sigmoid، Tanh، LeakyReLU، PReLU)، Recurrent (LSTM/GRU/SimpleRNN)، Transformers (MultiHeadAttention، LayerNorm)، Metal مخصوص لیئرز۔ غیر معاون لیئرز کے لیے، Core ML کسٹم لیئر میکانزم فراہم کرتا ہے — Metal Shading Language یا Swift میں لیئر نفاذ لکھنے کی صلاحیت۔

swift
let model = try MLModel(contentsOf: modelURL)
let input = try MLMultiArray(shape: [1, 224, 224, 3], dataType: .float32)
let prediction = try model.prediction(from: input)

موڈل فائل فارمیٹ

2021 سے پہلے، Core ML .mlmodel فارمیٹ استعمال کرتا تھا — ایک بائنری فائل جس میں تمام موڈل وزن اور میٹا ڈیٹا ہوتا تھا۔ Xcode 13 اور Core ML 4 سے شروع کرتے ہوئے، Apple نے نئا .mlpackage فارمیٹ متعارف کرایا — ایک ڈائریکٹری پر مبنی پیکیج ساخت جس میں موڈل، میٹا ڈیٹا، انپٹ/آؤٹ پٹ تفصیل اور JSON میں پیش اور بعد از پروسیسنگ فائلیں شامل ہیں۔ mlpackage git ورژننگ کو سپورٹ کرتا ہے، جو ٹیم ڈیولپمنٹ کو آسان بناتا ہے۔ .mlmodel سے .mlpackage میں تبدیل Xcode Model Compiler یوٹیلٹی یا coremltools Python سکرپٹ سے کی جاتی ہے۔

موڈلز کو Core ML میں تبدیل کرنا

تبدیل تیسرے فریقوں کے فریم ورکس سے Core ML میں Python میں coremltools لائبریری کا استعمال کرکے کی جاتی ہے۔ coremltools TensorFlow 1.x/2.x (SavedModel، PB، HDF5)، PyTorch (TorchScript، traced/scripted موڈلز)، Keras (H5)، ONNX اور Create ML سے بنائے گئے موڈلز کی درآمد کو سپورٹ کرتا ہے۔ معیاری تبدیل پائپ لائن میں تین مراحل ہیں: موڈل کو اس کے اصل فارمیٹ میں لوڈ کرنا، MIL (Model Intermediate Language) — Core ML کی اندرونی نمائندگی — میں تبدیل کرنا، اور .mlpackage میں برآمد کرنا۔

python
import coremltools as ct

model = ct.converters.pytorch.convert(
    source = "model.pt",
    inputs = [ct.TensorType(shape=(1, 3, 224, 224))]
)
model.author = "IT Sectr"
model.short_description = "Image classifier"
model.save("MyModel.mlpackage")

تبدیل کے بعد موڈل تصدیق

تبدیل کے بعد، آپ کو ایک ہی ڈیٹا پر اصل موڈل اور تبدیل شدہ Core ML موڈل کی پیش گوئیاں کا موازنہ کرکے موڈل درستی کی تصدیق کرنی چاہئے۔ قابل قبول انحراف Float32 کے لیے 1e-3 (0.1%) اور Float16/Int8 کے لیے 1e-2 (1%) سے زیادہ نہیں ہے۔ coremltools خودکار موازنے کے لیے ct.utils.compare_models() یوٹیلٹی فراہم کرتا ہے۔ اگر انحراف معیار سے تجاوز کرتا ہے، تو غیر معاون آپریشنز میں مسائلہ ہو سکتا ہے — انہیں کسٹم لیئرز سے بدلنے یا موڈل کو آسان کرنے کی ضرورت ہے۔

Core ML کارکردگی بہترین

بہترین Core ML موڈل کے سائز کو کم کرنے اور اہم درستی کے نقصان کے بغیر انفرنس کی بہاور بڑھانے کا عمل ہے۔ Apple کئی بہترین آلات فراہم کرتا ہے جو coremltools اور Xcode میں ضم ہیں: کوانٹائزیشن (وزن درستی کو کم کرنا)، پروننگ (غیر اہم نیورنز کو ہٹانا)، ضروری لیئرز کو ہٹانا اور گرداوری گراف کو کم کرنے کے لیے لیئر فیوژن۔

Float16 اور Int8 میں کوانٹائزیشن

کوانٹائزیشن Float32 کے مقابلے میں موڈل کا حجم تقریبنا 2 گونا (Float16) یا 4 گونا (Int8) کم کرتا ہے۔ Core ML تین کوانٹائزیشن موڈ کو سپورٹ کرتا ہے: کیلیبریشن ڈیٹا سیٹ کے ساتھ پسٹ ٹریننگ کوانٹائزیشن (PTQ)، coremltools کے ذریع تبدیل کے دوران، اور کوانٹائزیشن آگاہ ٹریننگ (QAT)۔ زیادہ تر کمپیوٹر ویژن موڈلز کے لیے، PTQ سے Float16 میں انفرنس کی بہاور دوگونی ہونے پر 0.5% سے کم درستی کا نقصان ہوتا ہے۔

Xcode میں موڈل پروفائلنگ

Xcode Core ML Model Profiler آلا فراہم کرتا ہے، جو آپکو سمیولیٹر میں یا حقیقی آلہ پر مختلف آلوں پر موڈل کی کارکردگی ناپنے کی اجازت دیتا ہے۔ پروفائلر ہر لیئر کے لیے تعمیل کا وقت، بیک اینڈ لوڈ (ANE/GPU/CPU)، چوٹی میمری کا استعمال اور موڈل کی رکاوٹیں دیڤائی کرتا ہے۔ Apple Performance Optimization Guide کے مطابق، 80% سے زائد موڈلز میں کم سے کم ایک لیئر ہوتا ہے جو باقی کۀ بہ نسبت شدید آہستہ چالتا ہے (لیئر غیر معمولیت)، جسے بدلنے یا فیوژن سے بہتر کیا جا سکتا ہے۔

Core ML انضمام کی عملی مثال

آئیے Swift استعمال کرتے ہوئے ایک iOS ایپ میں ایک ٹریند Core ML موڈل کے انضمام پر نظر ڈالیں۔ Xcode پروجیکٹ میں .mlpackage فائل شامل کرنے کے بعد (گھسیٹ کرکے یا Swift Package Manager کے ذریع)، Xcode خودکار طور پر ٹائپ شدہ انپٹ اور آؤٹ پٹ کے ساتھ ایک Swift موڈل کلاس تیار کرتا ہے۔ ڈیولپر کو دستی انپٹ ڈیٹا پارس کرنے کی ضرورت نہیں ہے — تیار کردہ کلاس موڈل میٹا ڈیٹا کے مطابق UIImage، MLMultiArray، String یا دیگر اقسام کو قبول کرتا ہے۔

swift
import CoreML
import Vision

guard let model = try? VNCoreMLModel(
    for: MyImageClassifier().model
) else { return }

let request = VNCoreMLRequest(model: model) { request, error in
    guard let results = request.results
        as? [VNClassificationObservation]
    else { return }

    if let topResult = results.first {
        print("Class: \(topResult.identifier)")
        print("Confidence: \(topResult.confidence)")
    }
}

let handler = VNImageRequestHandler(
    cgImage: image.cgImage!,
    options: [:]
)
try handler.perform([request])

غلطی کا انتظام اور فال بیک

Core ML کو ضم کرتے وقت، آپ کو غلطی کا انتظام لاگو کرنا چاہئے: آلہ کی ادھر داری (بہت پرانا iOS ورژن)، ناکافی میمری یا موڈل فائل کے نقصان کی وجہ سے موڈل لوڈ نہیں ہو سکتا۔ فال بیک لاجک لاگو کرنے کی سفارش کی جاتی ہے: اگر موڈل کوانٹائزد Int8 فارمیٹ میں لوڈ نہیں ہوتا، تو Float16 ورژن لوڈ کریں، اور اگر وہ بھی ناکام ہوتا ہے — Float32۔ Apple Crash Analytics کے مطابق، 5% سے زائد ML ایپ کریشز غلط موڈل لوڈنگ کی وجہ سے ہوتے ہیں۔

Core ML بنام Create ML: فرق

Core ML اور Create ML Apple ML ایکو سیسٹم کے دو تکمیلی اوزار ہیں۔ Core ML آن ڈیوائس موڈل پرعمل (انفرنس) کا انتظام کرتا ہے، جبکہ Create ML موڈل ٹریننگ کا انتظام کرتا ہے۔ Create ML میں بنائے گئے موڈل بعد میں ایپ میں ضم کرنے کے لیے خاص طور پر Core ML فارمیٹ (.mlpackage) میں برآمد کیے جاتے ہیں۔ ویب ڈیولپمنٹ کی اصطلاح میں، Core ML براؤزر (تعمیل) ہے اور Create ML کوڈ لکھنے کے لیے IDE (ٹریننگ) ہے۔

پیرامیٹرCore MLCreate ML
مقصدموڈل تعمیل (انفرنس)موڈل ٹریننگ
پلیٹ فارمiOS, iPadOS, macOS, watchOS, tvOSmacOS (صرف)
فارمیٹ.mlpackage (استعمال کرتا ہے).mlpackage (بناتا ہے)
کوڈSwift / Objective-C APIXcode UI یا Swift API
صارفایپ ڈیولپرڈیولپر / ڈیٹا سائنس ڈسٹ

اکثر پوچے جانے والے سوالات

Core ML کیا ہے؟

Core ML iOS, iPadOS, macOS, watchOS اور tvOS آلوں پر پھلے سے ٹریند ML موڈل چلانے کے لیے Apple کا مشین لرننگ فریم ورک ہے۔ یہ نیورل نیٹورکس، فیصلہ ساز درخت اور ریگریشن کو سپورٹ کرتا ہے، خودکار طور پر بہترین کمپیوٹنگ بیک اینڈ (Neural Engine, GPU یا CPU) کا انتخاب کرتا ہے۔

Core ML TensorFlow سے کیسے مختلف ہے؟

TensorFlow سروروں اور موبائل آلوں پر موڈلز کو ٹرین اور چلانے کے لیے ایک آلمگیر فریم ورک ہے۔ Core ML ہارڈویئر مخصوص بہترین (ANE، GPU، Metal) کے ذریع صرف Apple آلوں پر موڈلز کو چلانے (ٹریننگ نہیں) کے لیے ایک ماہر انجن ہے۔ TensorFlow Mobile iOS پر مزید تعاون یافت نہیں ہے — Apple اپنے پلیٹ فارمز پر تمام ML کاموں کے لیے Core ML کی سفارش کرتا ہے۔

PyTorch موڈل کو Core ML میں کیسے تبدیل کیا جائے؟

تبدیل Python میں coremltools لائبریری کا استعمال کرکے کی جاتی ہے: PyTorch موڈل کو TorchScript (torch.jit.trace) میں برآمد کریں، پھر .mlpackage بنانے کے لیے ct.converters.pytorch.convert() کا استعمال کریں۔ coremltools خودکار طور پر PyTorch لیئرز کو معاون Core ML لیئرز سے میپ کرتا ہے اور ANE کے لیے گراف کو بہتر کرتا ہے۔

کیا Core ML تمام iPhone پر کام کرتا ہے؟

Core ML iOS 11 اور اس کے بعد کے تمام iPhone پر کام کرتا ہے۔ تاہم، کارکردگی ہارڈویئر پر منحصر ہے: iPhone 5s/6 — صرف CPU (سست انفرنس)، iPhone 8/X — GPU (Metal)، iPhone Xs اور اس کے بعد — Neural Engine (A17 Pro پر 15.8 TOPS تک زیادہ سے زیادہ کارکردگی)۔ بہترین کارکردگی کے لیے، کم سے کم iOS ورژن 12+ مقرر کرنے کی سفارش کی جاتی ہے۔

Core ML موڈل کس فارمیٹ کا استعمال کرتے ہیں؟

جدید فارمیٹ .mlpackage ہے (ایک ڈائریکٹری جس میں موڈل، میٹا ڈیٹا اور انپٹ/آؤٹ پٹ تفصیلات ہوتی ہیں)۔ پرانا فارمیٹ .mlmodel (ایک واحد بائنری فائل) ہے۔ Xcode بائلڈ کے دوران .mlmodel کو خودکار طور پر .mlpackage میں تبدیل کرتا ہے، لیکن نئے پروجیکٹز کے لیے سیدھے .mlpackage استعمال کرنے کی سفارش کی جاتی ہے۔

خلاصہ

  • Core ML تمام ایکو سیسٹم پلیٹ فارمز پر کام کرنے والا آن ڈیوائس مشین لرننگ کے لیے Apple کا معیاری فریم ورک ہے۔
  • Python میں coremltools لائبریری کے ذریع TensorFlow، PyTorch، Keras اور ONNX سے تبدیل کو سپورٹ کرتا ہے۔
  • انفرنس Neural Engine (iPhone Xs+)، GPU (Metal) یا CPU پر خودکار بیک اینڈ کے انتخاب کے ساتھ چلتی ہے۔
  • Float16 اور Int8 میں کوانٹائزیشن حد ادنی درستی کے نقصان کے ساتھ موڈل کا حجم 2-4 گونا کم کرتا ہے۔
  • Create ML Core ML کے لیے موڈل بناتا ہے، جبکہ Core ML صرف انہیں چلاتا ہے — یہ مختلف اوزار ہیں۔
  • .mlpackage فارمیٹ نے پرانے .mlmodel کی جگہ لی، JSON میں ورژننگ اور میٹا ڈیٹا فراہم کیا۔
  • Xcode میں Core ML Profiler رکاوٹیوں کی شناخت اور لیئر بدلکر انہیں بہتر کرنے میں مدد کرتا ہے۔

ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے

IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔

پروجیکٹ پر بحث کریں

مزید پڑھیں