LiteRT-LM का इस्तेमाल करके एलएलएम चलाना

LiteRT-LM एक क्रॉस-प्लैटफ़ॉर्म लाइब्रेरी है. इसे अलग-अलग तरह के डिवाइसों पर, भाषा मॉडल पाइपलाइन को आसानी से चलाने के लिए डिज़ाइन किया गया है. जैसे, मोबाइल फ़ोन से लेकर एम्बेड किए गए सिस्टम तक. यह डेवलपर को, भाषा मॉडल के बेहतर वर्कफ़्लो बनाने और उन्हें डिप्लॉय करने के लिए टूल उपलब्ध कराता है. अब इसमें एनपीयू को आसानी से इंटिग्रेट किया जा सकता है.

सीपीयू और जीपीयू पर एलएलएम चलाना

क्रॉस-प्लैटफ़ॉर्म डेवलपमेंट और सीपीयू/जीपीयू हार्डवेयर ऐक्सलरेशन के बारे में ज़्यादा जानने के लिए, LiteRT-LM GitHub repo देखें.

एनपीयू पर एलएलएम चलाना

न्यूरल प्रोसेसिंग यूनिट (एनपीयू), डीप लर्निंग के कामों के लिए ऑप्टिमाइज़ किए गए खास हार्डवेयर ब्लॉक उपलब्ध कराती हैं. ये चिप पर मौजूद आधुनिक सिस्टम (एसओसी) में ज़्यादा से ज़्यादा उपलब्ध होते हैं. खास तौर पर, मोबाइल डिवाइसों पर. इनकी बेहतर परफ़ॉर्मेंस की वजह से, ये एलएलएम इन्फ़्रेंस चलाने के लिए सबसे सही हैं.

एनपीयू वेंडर

LiteRT-LM, एनपीयू ऐक्सेलरेटर का इस्तेमाल करके एलएलएम चलाने की सुविधा देता है. इसके लिए, इन वेंडर के एनपीयू ऐक्सेलरेटर का इस्तेमाल किया जा सकता है. आपको जिस वेंडर का इस्तेमाल करना है उसके हिसाब से निर्देश चुनें:

क्विक स्टार्ट

  1. एनवायरमेंट और रिपॉज़िटरी सेट अप करने के लिए, ज़रूरी शर्तें पढ़ें.
  2. पक्का करें कि adb इंस्टॉल हो और कोई डिवाइस कनेक्ट हो.
  3. आसानी से सीखें और litert_lm_main कमांड लाइन डेमो देखें.

Qualcomm AI Engine Direct

पहला चरण: .litertlm मॉडल डाउनलोड करें

अपने एसओसी से मेल खाने वाला .litertlm डाउनलोड करें. यहां कुछ उदाहरण दिए गए हैं. अपने डिवाइस के एसओसी के बारे में ये सवाल पूछे जा सकते हैं:

SOC_MODEL=$(adb shell getprop ro.soc.model | tr '[:upper:]' '[:lower:]')
echo "https://huggingface.co/litert-community/Gemma3-1B-IT/blob/main/Gemma3-1B-IT_q4_ekv1280_${SOC_MODEL}.litertlm"
मॉडल SoC क्वांटाइज़ेशन कॉन्टेक्स्ट विंडो का साइज़ मॉडल का साइज़ (एमबी) डाउनलोड करें
Gemma3-1B SM8750 हर चैनल के लिए 4 बिट 1280 658 download
Gemma3-1B SM8650 हर चैनल के लिए 4 बिट 1280 658 download
Gemma3-1B SM8550 हर चैनल के लिए 4 बिट 1280 657 download

दूसरा चरण: QAIRT लाइब्रेरी डाउनलोड और एक्सट्रैक्ट करना

QAIRT SDK डाउनलोड करें, उसे एक्सट्रैक्ट करें, और QAIRT_ROOT सेट करें:

unzip <your_file.zip> -d ~/
QAIRT_ROOT=~/qairt/2.34.0.250424

तीसरा चरण: LiteRT-LM रनटाइम / लाइब्रेरी बनाना

Android NDK r28b+ इंस्टॉल करें और बनाएं:

bazel build --config=android_arm64 //runtime/engine:litert_lm_main
bazel build --config=android_arm64 \
    @litert//litert/vendors/qualcomm/dispatch:dispatch_api_so

चौथा चरण: डिवाइस पर मॉडल चलाना

अपने डिवाइस का पाथ सेट करें और ऐसेट पुश करें:

export DEVICE_FOLDER=/data/local/tmp/
adb shell mkdir -p $DEVICE_FOLDER
export MODEL_PATH=<path-to-model.litertlm>
adb push $MODEL_PATH $DEVICE_FOLDER/model.litertlm
adb push $QAIRT_ROOT/lib/aarch64-android/* $DEVICE_FOLDER/
adb push bazel-bin/runtime/engine/litert_lm_main $DEVICE_FOLDER/
adb shell chmod +x $DEVICE_FOLDER/litert_lm_main

रन:

adb shell "cd $DEVICE_FOLDER && \
  QAIRT_ROOT=$DEVICE_FOLDER \
  ./litert_lm_main --model=model.litertlm \
  --prompt='Explain the history of LiteRT in 3 bullet points' \
  --device=qualcomm_npu --rounds=1"

MediaTek NeuroPilot

चरणों के बारे में खास जानकारी

MediaTek का फ़्लो, Qualcomm के फ़्लो जैसा ही होता है: अपने SoC के लिए .litertlm का इस्तेमाल करें, NeuroPilot रनटाइम लाइब्रेरी शामिल करें, litert_lm_main बनाएं, ऐसेट पुश करें, और --device=mediatek_npu के साथ चलाएं.