LiteRT-LM هي مكتبة متوافقة مع عدة منصات ومصمَّمة لتشغيل مسارات نماذج اللغة بكفاءة على مجموعة كبيرة من الأجهزة، بدءًا من الهواتف الجوّالة وصولاً إلى الأنظمة المضمَّنة. توفّر هذه الأداة للمطوّرين الأدوات اللازمة لإنشاء عمليات سير عمل متطورة لنماذج اللغة ونشرها، وهي تتضمّن الآن ميزة التكامل السلس مع وحدة المعالجة العصبية (NPU).
تشغيل النماذج اللغوية الكبيرة على وحدة المعالجة المركزية ووحدة معالجة الرسومات
يمكنك الاطّلاع على مستودع LiteRT-LM على GitHub للحصول على تعليمات مفصّلة حول التطوير المتوافق مع عدة أنظمة أساسية وتسريع الأجهزة باستخدام وحدة المعالجة المركزية (CPU) أو وحدة معالجة الرسومات (GPU).
تشغيل النماذج اللغوية الكبيرة على وحدة المعالجة العصبية
توفّر وحدات المعالجة العصبية (NPU) وحدات أجهزة متخصّصة تم تحسينها لتناسب عمليات التعلّم العميق. وتتوفّر هذه الميزات بشكل متزايد في الأنظمة الحديثة على شريحة واحدة (SoC)، خاصةً على الأجهزة الجوّالة. وبفضل أدائها العالي، تُعدّ هذه الوحدات خيارًا رائعًا لتنفيذ استنتاجات نماذج اللغات الكبيرة.
مورّدو وحدات المعالجة العصبية
يتيح LiteRT-LM تشغيل نماذج اللغات الكبيرة باستخدام تسريع وحدة المعالجة العصبية (NPU) مع المورّدين التاليين. اختَر التعليمات حسب المورّد الذي تريد تجربته:
البدء بسرعة
للبدء، اتّبِع أولاً تعليمات المتطلبات الأساسية لإعداد البيئة والمستودع.
للتفاعل مع جهاز Android، تأكَّد أيضًا من تثبيت Android Debug Bridge بشكل صحيح ومن توفُّر جهاز متصل يمكن الوصول إليه باستخدام adb.
للحصول على تعليمات أكثر تفصيلاً، يمكنك الاطّلاع على قسم البدء السريع في مستودع LiteRT-LM، والعثور على مزيد من المعلومات حول litert_lm_main
العرض التوضيحي لسطر الأوامر.
Google Tensor
اتّبِع الخطوات التالية لتشغيل نماذج اللغات الكبيرة على معالج Google Tensor:
الخطوة 1: تنزيل نموذج .litertlm
تم تصميم وقت تشغيل LiteRT-LM للعمل مع النماذج بتنسيق .litertlm.
يمكنك العثور على الطُرز المتوافقة وتنزيلها في الجدول التالي:
| الطراز | منظومة على رقاقة (SoC) | التكميم | حجم الاستيعاب | حجم النموذج (ميغابايت) | رابط التنزيل |
|---|---|---|---|---|---|
| Gemma3-1B | Tensor_G5 | 8 بت لكل قناة | 1280 | 1704 | تنزيل |
في ما يلي مثال على أمر يمكن أن يساعدك في الحصول على رابط Hugging Face الذي يمكنه تنزيل النموذج الصحيح لنظام التشغيل على الشريحة (SoC) في هاتفك (يُرجى العِلم أنّه عليك تسجيل الدخول والموافقة على النموذج من أجل الحصول على إذن بتنزيل الملف). يجب التأكّد من توفّر جهاز متصل يمكن الوصول إليه باستخدام adb.
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_Google_${SOC_MODEL}.litertlm"
تأكَّد من إدراج $SOC_MODEL في جدول الأجهزة المتوافقة. لن يعمل الرابط الذي تم إنشاؤه مع الطُرز غير المتوافقة. تتم إضافة دعم لوحدات معالجة عصبية جديدة بانتظام، لذا يُرجى التحقّق مجددًا لاحقًا لمعرفة ما إذا كان جهازك متوافقًا.
الخطوة 2: إنشاء وقت التشغيل / المكتبات LiteRT-LM
التطوير في نظام التشغيل Linux
لتتمكّن من إنشاء ملف ثنائي لنظام التشغيل Android، عليك تثبيت الإصدار 28b من حزمة NDK أو إصدار أحدث من أحدث إصدار ثابت.
يُرجى اتّباع الخطوات التالية:
- نزِّل أحدث حزمة ثابتة من NDK (ملف
zip) من أحدث إصدار ثابت. - استخرِج ملف
zipإلى الموقع الجغرافي المفضّل لديك (مثلاً/path/to/AndroidNDK/). - اجعل
ANDROID_NDK_HOMEيشير إلى دليل NDK. يجب أن يكون شيئًا مثل ما يلي:
export ANDROID_NDK_HOME=/path/to/AndroidNDK/
بعد إعداد ذلك، أنشئ ملف litert_lm_main الثنائي باستخدام الأمر التالي:
bazel build --config=android_arm64 //runtime/engine:litert_lm_main
بالإضافة إلى ذلك، أنشئ مكتبة واجهة برمجة التطبيقات للإرسال من أجل السماح لوقت تشغيل LiteRT-LM بالتفاعل مع وحدة المعالجة العصبية (NPU):
bazel build --config=android_arm64 \
@litert//litert/vendors/google_tensor/dispatch:dispatch_api_so
الخطوة 3: تشغيل النموذج على الجهاز
بعد إنشاء الملف الثنائي بنجاح، يمكننا الآن محاولة تشغيل النموذج على الجهاز. تأكَّد من أنّ لديك إذن الوصول للكتابة فيDEVICE_FOLDER:
لتشغيل البرنامج الثنائي على جهاز Android، علينا إرسال بعض مواد العرض/البرامج الثنائية. أولاً، اضبط DEVICE_FOLDER وتأكَّد من أنّ لديك إذن الوصول للكتابة
إليه (يمكنك عادةً وضع عناصر ضمن /data/local/tmp/):
export DEVICE_FOLDER=/data/local/tmp/
adb shell mkdir -p $DEVICE_FOLDER
export MODEL_PATH=<path to your downloaded .litertlm >
ادفع ملف .litertlm.
adb push $MODEL_PATH $DEVICE_FOLDER/model.litertlm
أرسِل واجهة برمجة التطبيقات dispatch والملف الثنائي الرئيسي الذي تم تجميعه في الخطوة 2.
adb push bazel-bin/external/litert/litert/vendors/google_tensor/*/*.so \
$DEVICE_FOLDER
adb push prebuilt/android_arm64/*.so $DEVICE_FOLDER
adb push bazel-bin/runtime/engine/litert_lm_main $DEVICE_FOLDER
يمكنك الآن تنفيذ الملف الثنائي.
adb shell LD_LIBRARY_PATH=$DEVICE_FOLDER \
$DEVICE_FOLDER/litert_lm_main \
--backend=npu \
--model_path=$DEVICE_FOLDER/model.litertlm
Qualcomm AI Engine Direct
في ما يلي خطوات تشغيل النماذج اللغوية الكبيرة على وحدة المعالجة العصبية من Qualcomm:
الخطوة 1: تنزيل نموذج .litertlm
تم تصميم وقت تشغيل LiteRT-LM للعمل مع النماذج بتنسيق .litertlm.
يمكنك العثور على الطُرز المتوافقة وتنزيلها في الجدول التالي.
| الطراز | منظومة على رقاقة (SoC) | التكميم | حجم الاستيعاب | حجم النموذج (ميغابايت) | رابط التنزيل |
|---|---|---|---|---|---|
| Gemma3-1B | SM8750 | 4 بت لكل قناة | 1280 | 658 | تنزيل |
| Gemma3-1B | SM8650 | 4 بت لكل قناة | 1280 | 658 | تنزيل |
| Gemma3-1B | SM8550 | 4 بت لكل قناة | 1280 | 657 | تنزيل |
عليك تنزيل النموذج المتوافق مع منظومة على رقاقة (SoC) الخاصة بك.
في ما يلي مثال على أمر يمكن أن يساعدك في الحصول على رابط Hugging Face الذي
يمكنه تنزيل النموذج الصحيح لمنظومة على رقاقة (SoC) في هاتفك (يُرجى العِلم أنّه عليك
تسجيل الدخول والموافقة على النموذج من أجل الحصول على إذن بتنزيل
الملف). يجب التأكّد من توفّر جهاز متصل يمكن الوصول إليه باستخدام adb.
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_MODEL في جدول الأجهزة المتوافقة. لن يعمل الرابط الذي تم إنشاؤه مع الطُرز غير المتوافقة. تتم إضافة دعم لوحدات معالجة عصبية جديدة بانتظام، لذا يُرجى التحقّق مجددًا لاحقًا لمعرفة ما إذا كان جهازك متوافقًا.
الخطوة 2: تنزيل مكتبات QAIRT واستخراجها
لتشغيل النموذج باستخدام وحدة المعالجة العصبية من Qualcomm، يجب توفير مكتبات وقت التشغيل المرتبطة على الجهاز. يمكن تنزيل حزمة تطوير البرامج (SDK) الخاصة بأداة QAIRT من خلال الرابط واستخراج الملف. اضبط المتغيّرQAIRT_ROOT (سيتم استخدامه في الخطوات اللاحقة) للإشارة إلى المجلد الذي تم فك ضغطه والذي يحتوي على رقم الإصدار، على سبيل المثال:
unzip <your_file.zip> -d ~/
QAIRT_ROOT=~/qairt/2.42.0.251225
الخطوة 3: إنشاء وقت التشغيل / المكتبات LiteRT-LM
التطوير في نظام التشغيل Linux
لتتمكّن من إنشاء ملف ثنائي لنظام التشغيل Android، عليك تثبيت الإصدار r28b من حزمة NDK أو إصدار أحدث من https://developer.android.com/ndk/downloads#stable-downloads. الخطوات المحدّدة هي:
- نزِّل ملف
zipمن https://developer.android.com/ndk/downloads#stable-downloads. - استخرِج ملف
zipإلى الموقع الجغرافي المفضّل لديك (مثلاً/path/to/AndroidNDK/). - استبدِل
ANDROID_NDK_HOMEبمسار دليل NDK. يجب أن يكون شيئًا مثل:
export ANDROID_NDK_HOME=/path/to/AndroidNDK/
ملاحظات: تأكَّد من أنّ ANDROID_NDK_HOME يشير إلى الدليل الذي يتضمّن README.md.
بعد إعداد البيئة، جرِّب إنشاء ملف litert_lm_main الثنائي:
bazel build --config=android_arm64 //runtime/engine:litert_lm_main
بالإضافة إلى ذلك، يجب إنشاء مكتبة واجهة برمجة التطبيقات dispatch لكي يتفاعل وقت تشغيل LiteRT-LM مع وحدة المعالجة العصبية:
bazel build --config=android_arm64 \
@litert//litert/vendors/qualcomm/dispatch:dispatch_api_so
التطوير في نظام التشغيل macOS
تتضمّن أدوات سطر الأوامر في Xcode أداة clang. تشغيل xcode-select --install إذا لم يسبق تثبيته
لتتمكّن من إنشاء ملف ثنائي لنظام التشغيل Android، عليك تثبيت الإصدار r28b من حزمة NDK أو إصدار أحدث من https://developer.android.com/ndk/downloads#stable-downloads. الخطوات المحدّدة هي:
- نزِّل ملف
.dmgمن https://developer.android.com/ndk/downloads#stable-downloads. - افتح الملف
.dmgوانقل الملفAndroidNDK*إلى الموقع الجغرافي المفضّل لديك (مثلاً/path/to/AndroidNDK/). - استبدِل
ANDROID_NDK_HOMEبمسار دليل NDK. يجب أن يكون شيئًا مثل:
export ANDROID_NDK_HOME=/path/to/AndroidNDK/AndroidNDK*.app/Contents/NDK/
ملاحظات: تأكَّد من أنّ ANDROID_NDK_HOME يشير إلى الدليل الذي يتضمّن README.md.
بعد إعداد البيئة، جرِّب إنشاء ملف litert_lm_main الثنائي:
bazel build --config=android_arm64 //runtime/engine:litert_lm_main
بالإضافة إلى ذلك، يجب إنشاء مكتبة واجهة برمجة التطبيقات dispatch لكي يتفاعل وقت تشغيل LiteRT-LM مع وحدة المعالجة العصبية:
bazel build --config=android_arm64 \
@litert//litert/vendors/qualcomm/dispatch:dispatch_api_so
الخطوة 4: تشغيل النموذج على الجهاز
بعد إنشاء الملف الثنائي بنجاح، يمكننا الآن محاولة تشغيل النموذج على الجهاز. تأكَّد من أنّ لديك إذن الوصول للكتابة فيDEVICE_FOLDER:
لتشغيل البرنامج الثنائي على جهاز Android، علينا إرسال بعض مواد العرض/البرامج الثنائية. أولاً، اضبط DEVICE_FOLDER وتأكَّد من أنّ لديك إذن الوصول للكتابة
إليه (يمكنك عادةً وضع عناصر ضمن /data/local/tmp/):
export DEVICE_FOLDER=/data/local/tmp/
adb shell mkdir -p $DEVICE_FOLDER
export MODEL_PATH=<path to your downloaded .litertlm >
ادفع ملف .litertlm. ملاحظة: عليك إرسال مواد العرض هذه مرة واحدة فقط.
adb push $MODEL_PATH $DEVICE_FOLDER/model.litertlm
إرسال مكتبات QAIRT. يمكنك العثور عليها في المجلد الذي تم فك ضغطه في الخطوة 2 $QAIRT_ROOT/lib/aarch64-android/. يُرجى العِلم أنّ QAIRT_ROOT يجب أن يحتوي على رقم الإصدار، مثل 2.42.0.251225.
adb push $QAIRT_ROOT/lib/aarch64-android/libQnnHtp*Stub.so $DEVICE_FOLDER
adb push $QAIRT_ROOT/lib/aarch64-android/libQnnHtp.so $DEVICE_FOLDER
adb push $QAIRT_ROOT/lib/aarch64-android/libQnnSystem.so $DEVICE_FOLDER
adb push $QAIRT_ROOT/lib/aarch64-android/libQnnHtpPrepare.so $DEVICE_FOLDER
adb push $QAIRT_ROOT/lib/hexagon-*/unsigned/libQnnHtp*Skel.so $DEVICE_FOLDER
أرسِل واجهة برمجة التطبيقات dispatch والملف الثنائي الرئيسي الذي تم تجميعه في الخطوة 3.
adb push bazel-bin/external/litert/litert/vendors/qualcomm/*/*.so \
$DEVICE_FOLDER
adb push prebuilt/android_arm64/*.so $DEVICE_FOLDER
adb push bazel-bin/runtime/engine/litert_lm_main $DEVICE_FOLDER
يمكنك الآن تنفيذ الملف الثنائي.
adb shell LD_LIBRARY_PATH=$DEVICE_FOLDER ADSP_LIBRARY_PATH=$DEVICE_FOLDER \
$DEVICE_FOLDER/litert_lm_main \
--backend=npu \
--model_path=$DEVICE_FOLDER/model.litertlm
MediaTek NeuroPilot
في ما يلي خطوات تشغيل نماذج اللغات الكبيرة على وحدة المعالجة العصبية من MediaTek:
الخطوة 1: تنزيل نموذج .litertlm
تم تصميم وقت تشغيل LiteRT-LM للعمل مع النماذج بتنسيق .litertlm.
يمكنك العثور على الطُرز المتوافقة وتنزيلها في الجدول التالي.
| الطراز | منظومة على رقاقة (SoC) | التكميم | حجم الاستيعاب | حجم النموذج (ميغابايت) | رابط التنزيل |
|---|---|---|---|---|---|
| Gemma3-1B | MT6989 | 4 بت لكل قناة | 1280 | 985 | تنزيل |
| Gemma3-1B | MT6991 | 4 بت لكل قناة | 1280 | 986 | تنزيل |
عليك تنزيل النموذج المتوافق مع منظومة على رقاقة (SoC) الخاصة بك.
في ما يلي مثال على أمر يمكن أن يساعدك في الحصول على رابط Hugging Face الذي
يمكنه تنزيل النموذج الصحيح لمنظومة على رقاقة (SoC) في هاتفك (يُرجى العِلم أنّه عليك
تسجيل الدخول والموافقة على النموذج من أجل الحصول على إذن بتنزيل
الملف). يجب التأكّد من توفّر جهاز متصل يمكن الوصول إليه باستخدام adb.
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_MODEL في جدول الأجهزة المتوافقة. لن يعمل الرابط الذي تم إنشاؤه مع الطُرز غير المتوافقة. تتم إضافة دعم لوحدات معالجة عصبية جديدة بانتظام، لذا يُرجى التحقّق مجددًا لاحقًا لمعرفة ما إذا كان جهازك متوافقًا.
الخطوة 2: إنشاء وقت التشغيل / المكتبات LiteRT-LM
التطوير في نظام التشغيل Linux
لتتمكّن من إنشاء ملف ثنائي لنظام التشغيل Android، عليك تثبيت الإصدار r28b من حزمة NDK أو إصدار أحدث من https://developer.android.com/ndk/downloads#stable-downloads. الخطوات المحدّدة هي:
- نزِّل ملف
zipمن https://developer.android.com/ndk/downloads#stable-downloads. - استخرِج ملف
zipإلى الموقع الجغرافي المفضّل لديك (مثلاً/path/to/AndroidNDK/). - استبدِل
ANDROID_NDK_HOMEبمسار دليل NDK. يجب أن يكون شيئًا مثل:
export ANDROID_NDK_HOME=/path/to/AndroidNDK/
ملاحظات: تأكَّد من أنّ ANDROID_NDK_HOME يشير إلى الدليل الذي يتضمّن README.md.
بعد إعداد البيئة، جرِّب إنشاء ملف litert_lm_main الثنائي:
bazel build --config=android_arm64 //runtime/engine:litert_lm_main
بالإضافة إلى ذلك، يجب إنشاء مكتبة واجهة برمجة التطبيقات dispatch لكي يتفاعل وقت تشغيل LiteRT-LM مع وحدة المعالجة العصبية:
bazel build --config=android_arm64 \
@litert//litert/vendors/mediatek/dispatch:dispatch_api_so
التطوير في نظام التشغيل macOS
تتضمّن أدوات سطر الأوامر في Xcode أداة clang. تشغيل xcode-select --install إذا لم يسبق تثبيته
لتتمكّن من إنشاء ملف ثنائي لنظام التشغيل Android، عليك تثبيت الإصدار r28b من حزمة NDK أو إصدار أحدث من https://developer.android.com/ndk/downloads#stable-downloads. الخطوات المحدّدة هي:
- نزِّل ملف
.dmgمن https://developer.android.com/ndk/downloads#stable-downloads. - افتح الملف
.dmgوانقل الملفAndroidNDK*إلى الموقع الجغرافي المفضّل لديك (مثلاً/path/to/AndroidNDK/). - استبدِل
ANDROID_NDK_HOMEبمسار دليل NDK. يجب أن يكون شيئًا مثل:
export ANDROID_NDK_HOME=/path/to/AndroidNDK/AndroidNDK*.app/Contents/NDK/
ملاحظات: تأكَّد من أنّ ANDROID_NDK_HOME يشير إلى الدليل الذي يتضمّن README.md.
بعد إعداد البيئة، جرِّب إنشاء ملف litert_lm_main الثنائي:
bazel build --config=android_arm64 //runtime/engine:litert_lm_main
بالإضافة إلى ذلك، يجب إنشاء مكتبة واجهة برمجة التطبيقات dispatch لكي يتفاعل وقت تشغيل LiteRT-LM مع وحدة المعالجة العصبية:
bazel build --config=android_arm64 \
@litert//litert/vendors/mediatek/dispatch:dispatch_api_so
الخطوة 3: تشغيل النموذج على الجهاز
بعد إنشاء الملف الثنائي بنجاح، يمكننا الآن محاولة تشغيل النموذج على الجهاز. تأكَّد من أنّ لديك إذن الوصول للكتابة فيDEVICE_FOLDER:
لتشغيل البرنامج الثنائي على جهاز Android، علينا إرسال بعض مواد العرض/البرامج الثنائية. أولاً، اضبط DEVICE_FOLDER وتأكَّد من أنّ لديك إذن الوصول للكتابة
إليه (يمكنك عادةً وضع عناصر ضمن /data/local/tmp/):
export DEVICE_FOLDER=/data/local/tmp/
adb shell mkdir -p $DEVICE_FOLDER
export MODEL_PATH=<path to your downloaded .litertlm >
ادفع ملف .litertlm. ملاحظة: عليك إرسال مواد العرض هذه مرة واحدة فقط.
adb push $MODEL_PATH $DEVICE_FOLDER/model.litertlm
أرسِل واجهة برمجة التطبيقات dispatch والملف الثنائي الرئيسي الذي تم تجميعه في الخطوة 2.
adb push bazel-bin/external/litert/litert/vendors/mediatek/*/*.so \
$DEVICE_FOLDER
adb push prebuilt/android_arm64/*.so $DEVICE_FOLDER
adb push bazel-bin/runtime/engine/litert_lm_main $DEVICE_FOLDER
يمكنك الآن تنفيذ الملف الثنائي.
adb shell LD_LIBRARY_PATH=$DEVICE_FOLDER \
$DEVICE_FOLDER/litert_lm_main \
--backend=npu \
--model_path=$DEVICE_FOLDER/model.litertlm
Intel OpenVino
التشغيل باستخدام الملف التنفيذي C++
في ما يلي خطوات تشغيل النماذج اللغوية الكبيرة على وحدة المعالجة العصبية من Intel:
الخطوة 1: تنزيل نموذج .litertlm
تم تصميم وقت تشغيل LiteRT-LM للعمل مع النماذج بتنسيق .litertlm.
يمكنك العثور على الطُرز المتوافقة وتنزيلها في الجدول التالي.
| الطراز | منظومة على رقاقة (SoC) | التكميم | حجم الاستيعاب | حجم النموذج (ميغابايت) | رابط التنزيل |
|---|---|---|---|---|---|
| Gemma3-2B | PantherLake | ... | 4096 | ... | ... |
الخطوة 2: إنشاء وقت تشغيل LiteRT-LM ومكتبة LiteRT Intel Dispatch
التطوير على Windows
بعد إعداد البيئة، جرِّب إنشاء ملف litert_lm_main الثنائي:
bazel --output_base=C:\bzl_lrtlm build --define=DISABLE_HUGGINGFACE_TOKENIZER=1 --config=windows //runtime/engine:litert_lm_main
بالإضافة إلى ذلك، يجب إنشاء مكتبة واجهة برمجة التطبيقات dispatch لكي يتفاعل وقت تشغيل LiteRT-LM مع وحدة المعالجة العصبية:
bazel --output_base=C:\bzl_lrtlm build --config=windows @litert//litert/vendors/intel_openvino/dispatch:LiteRtDispatch
الخطوة 3: تشغيل النموذج على الجهاز
بعد إنشاء الملف الثنائي بنجاح، يمكننا الآن محاولة تشغيل النموذج على الجهاز. نجمّع جميع الملفات الثنائية وملفات DLL والنموذج في execution_dir:cp bazel-bin/external/litert/vendors/intel_openvino/dispatch/LiteRtDispatch.dll execution_dir
cp bazel-bin/runtime/engine/litert_lm_main.exe execution_dir
cp prebuilt\windows_x86_64\libGemmaModelConstraintProvider.dll execution_dir
# Run OpenVino's setup script to ensure the OpenVino DLLs can be found.
& C:\bzl_lrtlm\external\intel_openvino\openvino\setupvars.ps1
# Test run
cd execution_dir
.\litert_lm_main.exe --backend=npu --model_path="execution_dir\model.litertlm" --input_prompt="What is the capital of France?" --litert_dispatch_lib_dir=$PWD --use_hw_masking_for_npu=false
التشغيل باستخدام واجهة سطر الأوامر في Python
bazelisk --output_base=C:\bzl build @litert//litert/vendors/intel_openvino/dispatch:LiteRtDispatch --config=windows
bazelisk --output_base=C:\bzl build --config=windows //python/litert_lm:wheel
bazelisk --output_base=C:\bzl build --config=windows //python/litert_lm_cli:wheel
بعد ذلك، انسخ الملفين litert_lm-0.xx.0-py3-none-any.whl وlitert_lm_api-0.xx.0-py3-none-win_amd64.whl إلى المنصة المستهدفة التي ستنشر عليها النماذج، ثم اتّبِع الخطوات التالية:
python -m venv .venv
.\.venv\Scripts\activate
# Install the LiteRT-LM API and CLI (reference)
pip install litert_lm-0.12.0-py3-none-any.whl litert_lm_api-0.12.0-py3-none-win_amd64.whl
# Install openvino (>= 2026.2.0). (reference)
pip install --pre --extra-index-url https://storage.openvinotoolkit.org/simple/wheels/nightly openvino
# Run the NPU model with CLI
litert-lm run path\to\npu_model.litertlm --backend=npu
عرض النموذج وطلب الاستدلال عن بُعد يمكنك أيضًا عرض النموذج على خادم HTTP: ```shell
استيراد النموذج وعرضه باستخدام واجهة سطر الأوامر على مضيف الخادم
litert-lm import path\to\npu_model.litertlm gemma4-LNL
litert-lm serve --port 8080 ```
على مضيف العميل، اطلب الاستنتاج باستخدام موجه الأوامر ```shell
ملاحظة: لا يتيح الخادم حاليًا السلسلة الخلفية npu, في طلب البحث بعد.
ولكن من المفترض أن تتوفّر هذه الميزة لاحقًا.
curl http://localhost:8080/v1beta/models/gemma4-LNL,npu:generateContent ^ -H "Content-Type: application/json" ^ -d "{"contents": [{"parts": [{"text": "Hello"}]}]}" ``` يجب التأكّد من تثبيت curl على الجهاز المضيف للعميل. إذا لم يكن مثبّتًا، يمكنك تثبيته في PowerShell باستخدام الأمر التالي: winget install cURL.cURL