Transformers documentation
LiteRT
LiteRT
LiteRT (المعروف سابقًا باسم TensorFlow Lite) هو بيئة التشغيل الخاصة بشركة Google للاستدلال على الجهاز. صيغة النموذج هي .tflite وتُشحن نماذج اللغة كملف واحد بصيغة .litertlm لبيئة التشغيل LiteRT-LM.
تصدير نموذج Transformers باستخدام litert-torch. يقوم بتحويل رسم torch.export إلى LiteRT مباشرة، وليس عبر ONNX أو SavedModel الخاص بـ TensorFlow.
pip install litert-torch
export_hf يحمّل نموذج لغة من Hub، ويكمّم الأوزان إلى int8 افتراضيًا، ويكتب model.litertlm.
litert-torch export_hf \
--model="HuggingFaceTB/SmolLM2-135M-Instruct" \
--output_dir="./smollm2_litertlm"litert_torch.convert يتتبع نموذجًا باستخدام مدخلات نموذجية ويصدّر ملف .tflite. كما أن الكائن المُعاد يشغّل النموذج، مما يتيح التحقق من عملية التصدير في مكانها.
import litert_torch
from transformers import AutoModelForMaskedLM, AutoTokenizer
model_id = "google-bert/bert-base-uncased"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForMaskedLM.from_pretrained(model_id).eval()
inputs = tokenizer("Paris is the [MASK] of France.", return_tensors="pt", padding="max_length", max_length=128)
litert_model = litert_torch.convert(model, sample_kwargs=dict(inputs))
litert_model.export("bert.tflite")
outputs = litert_model(**{name: tensor.numpy() for name, tensor in inputs.items()})
mask_index = inputs["input_ids"][0].tolist().index(tokenizer.mask_token_id)
print(tokenizer.decode(outputs["logits"][0, mask_index].argmax())) # capitalتكامل Transformers
- تحمّل from_pretrained() أوزان النموذج بتنسيق safetensors.
- تشغّل litert-torch torch.export وتخفض الرسم البياني إلى مشغّلات LiteRT. يضيف
export_hfذاكرة KV، وتوقيعات prefill وdecode، والتكميم int8. - يحمّل AutoTokenizer مُجزّئ النص. ثم يقوم
export_hfبتغليفه مع قالب المحادثة داخل ملف.litertlm. - عند التشغيل، يعمل
.tfliteعلى LiteRT ويعمل.litertlmعلى LiteRT-LM، من Kotlin أو Swift أو C++ أو Python (ai-edge-litertوlitert-lm-api). وتتوقف عجلاتtflite-runtimeالأقدم عند Python 3.11.
وثّق إصدار Transformers v4 الأمر
optimum-cli export tflite، الذي كان يقوم بالتحويل عبر TensorFlow. وقد تمّ إزالته مع دعم TensorFlow في الإصدار v5 (#40760)، وهو ليس جزءًا من Optimum 2.x.
الموارد
- توثيقات LiteRT وLiteRT-LM
- أدلة تحويل نماذج PyTorch ونماذج GenAI