TensorFlow Lite — یہ کیا ہے، اہم خصوصیات اور استعمالات

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

TensorFlow Lite TensorFlow فریم ورک کا ایک ہلکا ورژن ہے، جو Google نے محدود کمپیوٹیشنل وسائل کے ساتھ موبائل اور ایمبیڈڈ آلات پر مشین لرننگ ماڈل چلانے کے لیے تیار کیا ہے۔ مکمل TensorFlow کے برعکس، TFLite ایک مخصوصی مفسر اور .tflite فارمیٹ استعمال کرتا ہے، جو تربیت کے بغیر تیز انفرنس کے لیے بہترین کیا گیا ہے۔ TensorFlow Lite Guide, 2025 کے مطابق، یہ فریم ورک Android، iOS اور Linux پر چلتا ہے اور 4 ارب سے زائد آلات پر استعمال ہوتا ہے۔ TensorFlow Lite کوانٹائیزیشن، NNAPI، GPU اور Core ML ڈیلی گیٹس کے ذریعے ہارڈویئر اکسیلریشن کی حمایت کرتا ہے۔

اہم نکات

  • TensorFlow Lite موبائل اور ایمبیڈڈ آلات پر آن ڈیوائس ML کے لیے ایک ہلکا فریم ورک ہے۔
  • ماڈل TensorFlow SavedModel یا Keras سے TFLite کنورٹر کے ذریعے .tflite فارمیٹ میں تبدیل کیے جاتے ہیں۔
  • حجم کم کرنے کے لیے INT8، FP16 کوانٹائیزیشن اور ڈائنامک کوانٹائیزیشن کی حمایت ہے۔
  • GPU Delegate، NNAPI اور Core ML Delegate کے ذریعے ہارڈویئر اکسیلریشن دستیاب ہے۔
  • TFLite Android، iOS اور Linux پر Java، C++، Swift اور Python میں API کے ساتھ کام کرتا ہے۔

TensorFlow Lite کیا ہے

TensorFlow Lite محدود وسائل والے آلات پر مشین لرننگ ماڈل چلانے کے لیے ایک مخصوصی رن ٹائم ہے۔ مکمل TensorFlow کے برعکس، TFLite تربیت یا بیک پروپیگیشن کی حمایت نہیں کرتا — صرف انفرنس۔ یہ لائبریری کے بائینری سائز کو کم سے کم رکھنے کی اجازت دیتا ہے: Android پر بیس مفسر کے لیے تقریبنً 300 KB۔

TFLite کا آرکیٹیکچر .tflite فارمیٹ کے ارد گرد بنایا گیا ہے، جو FlatBuffers پر مبنی ہے۔ FlatBuffers پارسنگ مرحلے کے بغیر ڈیٹا تک براہراست رسائی فراہم کرتا ہے، جو محدود میمری والے موبائل آلات کے لیے اہم ہے۔ .tflite فارمیٹ میں ماڈل میں حساب کا گراف، وزن اور میٹا ڈیٹا ایک واحد بائینری فائل میں ہوتا ہے۔

Google I/O 2024 کے مطابق، TFLite Google Photos، Gboard، YouTube اور دیگر Google ایپلیکیشنز میں 4 ارب سے زائد آلات کے مشترکہ صارفین کے ساتھ استعمال ہوتا ہے۔ یہ فریم ورک تمام اہم آرکیٹیکچرز کی حمایت کرتا ہے: CNN، RNN، LSTM، Transformer اور ڈیلی گیٹس کے ذریعے کسٹم آپریشنز۔

TensorFlow Lite کا آرکیٹیکچر

TFLite رن ٹائم چار اجزاء پر مشتمل ہے۔ TFLite Converter TensorFlow (SavedModel، Keras، ConcreteFunction) سے ماڈل لیتا ہے اور اسے اختیاری اپٹیمائیزیشن کے ساتھ .tflite فارمیٹ میں تبدیل کرتا ہے۔ TFLite Interpreter .tflite فائل کو لوڈ کرتا ہے اور ٹینسرز اور میمری کا انتظام کرتے ہوئے انفرنس کرتا ہے۔

ڈیلی گیٹس ایسے اجزاء ہیں جو آپریشن پر عمل کو مخصوصی ہارڈویئر پر منتقل کرتے ہیں۔ GPU Delegate OpenGL ES اور Metal استعمال کرتا ہے، NNAPI Delegate Android Neural Networks API استعمال کرتا ہے، Core ML Delegate Apple Core ML استعمال کرتا ہے۔ XNNPACK Delegate ARM CPU پر عمل کو بہتر کرتا ہے۔ ہر ڈیلی گیٹ آپریٹرز کے ایک مقرر سیٹ کی حمایت کرتا ہے۔

چوتھا اجزا Task Library ہے، جو معمولی کاموں کے لیے اعلی سطح کے API فراہم کرتا ہے: تصویر کی درجہ بندی، آئیٹم کا پتا لگانا، سیگمنٹیشن، NLU۔ Task Library مفسر کے اوپر کام کرتی ہے اور ٹینسر منیجمنٹ کی تفصیلات چھپاتی ہے۔

ماڈل اپٹیمائیزیشن اور کوانٹائیزیشن

TFLite کوانٹائیزیشن کی تین سطحوں کی حمایت کرتا ہے۔ مکمل عدد INT8 کوانٹائیزیشن وزن اور اکٹیویشن کو FP32 سے 8 بٹ عددوں میں تبدیل کرتا ہے۔ ماڈل کا حجم 4 گنا کم ہو جاتا ہے اور INT8 حمایت والے آلات پر انفرنس کی رفتار 3 گنا تک بڑھ جاتی ہے۔ FP16 کوانٹائیزیشن کم از کم درستی کے نقصان کے ساتھ حجم کو آدھا کر دیتا ہے۔

ڈائنامک کوانٹائیزیشن وزن کو INT8 میں رکھتا ہے لیکن حساب FP32 میں کرتا ہے۔ یہ موڈ درستی کے لیے حاس ماڈل کے لیے موزوں ہے اور کیفیت برقرار رکھتے ہوئے 4 گنا حجم کم کرتا ہے۔ Google ML Performance Benchmarks کے مطابق، NLP ماڈل کے لیے ڈائنامک کوانٹائیزیشن تجویز کی جاتی ہے۔

TFLite کوانٹائیزیشن موڈز کا موازنہ

موڈوزن کی قسماکٹیویشن کی قسمحجم میں کمی
FP32 (کوانٹائیزیشن کے بغیر)FP32FP321x
FP16FP16FP322x
ڈائنامک INT8INT8FP324x
مکمل INT8INT8INT84x

Android اور iOS پر ہارڈویئر اکسیلریشن

Android پر، بنیادی اکسیلریشن میکانزم NNAPI Delegate ہے، جو Android Neural Networks API کے ذریعے آپریشن پر عمل کو NPU، DSP یا GPU پر منتقل کرتا ہے۔ NNAPI Android 8.1+ والے آلات پر دستیاب ہے اور INT8 اور FP16 حساب کی حمایت کرتا ہے۔ Android کے لیے GPU Delegate OpenGL ES 3.1+ اور Vulkan استعمال کرتا ہے۔

iOS پر، اکسیلریشن Core ML Delegate کے ذریعے فراہم کیا جاتا ہے، جو TFLite آپریشن کو Core ML فارمیٹ میں تبدیل کرتا ہے اور Apple Neural Engine پر عمل کرتا ہے۔ Apple ML Benchmarking کے مطابق، Core ML Delegate کا استعمال iPhone 15 Pro پر CPU کے مقابلے انفرنس کو 4 گنا تک تیز کرتا ہے۔ iOS کے لیے GPU Delegate Metal Performance Shaders استعمال کرتا ہے۔

XNNPACK Delegate ARM CPU کے لیے ایک کروس پلیٹ فارم حل ہے، جو موبائل پروسیسرز کے لیے بہتر کیا گیا ہے۔ XNNPACK FP32، FP16 اور INT8 آپریشن کی حمایت کرتا ہے اور مخصوصی ہارڈویئر کی ضرورت نہیں ہے۔ اسے تمام آلات کے لیے بیس لائن ڈیلی گیٹ کے طور پر تجویز کیا جاتا ہے۔

TFLite کے ساتھ ماڈل کی تعیناتی

تعیناتی کا عمل تین مراحل پر مشتمل ہے۔ پہلا — TFLite Converter کے ذریعے ماڈل کو .tflite میں تبدیل کرنا۔ دوسرا — .tflite فائل کو ایپلیکیشن وسائل میں شامل کرنا۔ Android کے لیے، فائل assets میں رکھی جاتی ہے؛ iOS کے لیے، Xcode کے ذریعے ایپ بنڈل میں۔ تیسرا — مفسر کو ابتدائی کرنا اور انفرنس کا انجام دینا۔

متحرک ماڈل اپ ڈیٹس کے لیے، Google Firebase ML Model Downloading یا کلاؤڈ سے کسٹم ڈاؤن لوڈ میکانزم استعمال کرنے کی تجویز کرتا ہے۔ اپ ڈیٹ کردہ .tflite فائل مقامی اسٹوریج میں محفوظ ہوتی ہے اور اگلی بار لانچ پر مفسر میں لوڈ ہوتی ہے۔

تعیناتی کے دوران، .tflite فائل کے حجم پر غور کرنا اہم ہے۔ Google Play APK کے حجم کو 200 MB تک محدود کرتا ہے۔ 50 MB سے بڑے ماڈل کے لیے، Android App Bundle استعمال کرنے یا Play Asset Delivery کے ذریعے ماڈل کو علاحدہ ڈاؤن لوڈ کرنے کی تجویز کی جاتی ہے۔

کوڈ میں TFLite کے استعمال کی مثالیں

Android پر Java API کے ساتھ ماڈل لوڈ کرنے اور چلانے کی مثال۔ assets سے .tflite لوڈ کرنے کے لیے Interpreter.create() اور انفرنس کے لیے run() استعمال کریں۔ انپوٹ اور آؤٹپوٹ ڈیٹا کائی جہتی ارے یا ByteBuffer کے طور پر پاس کیا جاتا ہے:

java
import org.tensorflow.lite.Interpreter;
import java.nio.MappedByteBuffer;
import java.io.FileInputStream;
import java.nio.channels.FileChannel;

MappedByteBuffer model = new FileInputStream(
    getAssets().openFd("model.tflite")
).getChannel().map(
    FileChannel.MapMode.READ_ONLY, 0, fc.size()
);

Interpreter interpreter = new Interpreter.create(model);
float[][] input = new float[1][224 * 224 * 3];
float[][] output = new float[1][1000];
interpreter.run(input, output);
interpreter.close();

ہارڈویئر اکسیلریشن کے لیے Android پر GPU Delegate کے استعمال کی مثال۔ انحصار com.android.support:tensorflow-lite-gpu شامل کریں اور مفسر بناتے وقت ڈیلی گیٹ متعین کریں:

java
import org.tensorflow.lite.Interpreter;
import org.tensorflow.lite.gpu.GpuDelegate;

GpuDelegate gpuDelegate = new GpuDelegate.create();
Interpreter.Options options = new Interpreter.Options().addDelegate(gpuDelegate);
Interpreter interpreter = new Interpreter.create(model, options);

// Run inference on the input data
interpreter.run(input, output);

// Release delegate resources after inference
gpuDelegate.close();
interpreter.close();

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

TensorFlow اور TensorFlow Lite میں کیا فرق ہے؟

TensorFlow تربیت اور انفرنس کے لیے ایک مکمل فریم ورک ہے۔ TensorFlow Lite صرف موبائل آلات پر انفرنس کے لیے ہے۔ TFLite .tflite فارمیٹ استعمال کرتا ہے اور بیک پروپیگیشن کی حمایت نہیں کرتا۔

TFLite میں کون سے اکسیلریشن ڈیلی گیٹس دستیاب ہیں؟

حمایت یافتہ ڈیلی گیٹس میں GPU Delegate (OpenGL/Metal)، NNAPI Delegate (Android)، Core ML Delegate (iOS) اور XNNPACK Delegate (ARM CPU) شامل ہیں۔ ہر ڈیلی گیٹ ایک مقرر قسم کے ہارڈویئر کے لیے بہتر کیا گیا ہے۔

.tflite ماڈل کا حجم کیسے کم کیا جائے؟

کوانٹائیزیشن استعمال کریں: FP16 حجم کو 2 گنا، INT8 4 گنا کم کرتا ہے۔ تبدیل سے پہلے ڈائنامک کوانٹائیزیشن، وزن پروننگ اور ماڈل ڈیسٹیلیشن بھی دستیاب ہے۔

کیا TFLite آن ڈیوائس تربیت کی حمایت کرتا ہے؟

ہاں، TFLite Model Maker اور آن ڈیوائس ٹریننگ API (تجرباتی) کے ذریعے۔ صارف کے آلے پر براہراست فائن ٹیوننگ اور ماڈل ذاتی بنانے کی حمایت ہے۔

TFLite کس قسم کے ماڈل کی حمایت کرتا ہے؟

TFLite CNN، RNN، LSTM، Transformer، موبائل آرکیٹیکچرز (MobileNet، EfficientNet، YOLO، BERT) اور کسٹم آپریشن کی حمایت کرتا ہے۔ حد ہدف ڈیلی گیٹ میں دستیاب آپریٹرز ہے۔

خلاصہ

  • TensorFlow Lite Google کا موبائل اور ایمبیڈڈ آلات پر آن ڈیوائس ML کے لیے ایک ہلکا فریم ورک ہے۔
  • ماڈل TFLite Converter کے ذریعے TensorFlow SavedModel یا Keras سے .tflite فارمیٹ میں تبدیل کیے جاتے ہیں۔
  • INT8 اور FP16 کوانٹائیزیشن ماڈل کا حجم 4 گنا تک کم کرتا ہے اور انفرنس کو 3 گنا تک تیز کرتا ہے۔
  • GPU، NNAPI، Core ML اور XNNPACK ڈیلی گیٹس کے ذریعے ہارڈویئر اکسیلریشن دستیاب ہے۔
  • رن ٹائم Android پر تقریبنً 300 KB گھرتا ہے اور 4 ارب سے زائد آلات پر چلتا ہے۔
  • Task Library درجہ بندی، پتا لگانا، سیگمنٹیشن اور NLU کے لیے تیار حل فراہم کرتی ہے۔
  • متحرک اپ ڈیٹس کے لیے، Firebase ML یا Play Asset Delivery استعمال کریں۔

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

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

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

مزید پڑھیں