Konvertoni modelet PyTorch GenAI për nxjerrjen e përfundimeve në pajisje

API-ja gjeneruese LiteRT Torch është një bibliotekë me performancë të lartë e projektuar për krijimin dhe konvertimin e modeleve PyTorch të bazuara në transformatorë në formatin LiteRT/LiteRT-LM. Kjo u mundëson zhvilluesve të vendosin pa probleme modele gjeneruese të IA-së, konkretisht Modele të Mëdha Gjuhësore (LLM), për gjenerimin e tekstit dhe imazheve në pajisje me lehtësi.

API-ja Torch Generative mbështet konvertimin e modeleve për CPU, GPU dhe NPU. Duke çiftëzuar API-në Torch Generative me LiteRT-LM , ju mund të ndërtoni aplikacione që i përgjigjen nevojave të përdoruesit dhe janë të fokusuara në privatësi, të cilat ekzekutojnë modele gjeneruese tërësisht në pajisje.

Konverto nga Biblioteka e Transformatorit të Face Hugging

Zgjatimi LiteRT Torch Hugging Face Export ofron një rrugë të efektshme për të kthyer modelet gjeneruese të IA direkt nga Biblioteka Hugging Face Transformers në formatin LiteRT-LM . Krahasuar me API-të gjeneruese të LiteRT Torch që ju ofrojnë blloqe ndërtimi pytorch për të ndërtuar dhe optimizuar modele të personalizuara, ky mjet trajton kompleksitetet e shkarkimit të peshave, përkthimit të arkitekturave të modelit PyTorch dhe aplikimit të teknikave të optimizimit si optimizimet e grafikëve dhe kuantizimi në një rrjedhë të vetme pune. Ai nxjerr një skedar .litertlm, i cili është i optimizuar për inferencë në pajisje në CPU, GPU dhe NPU duke përdorur kohën e ekzekutimit LiteRT-LM .

Parakushte

Para se të përdorni zgjerimin e eksportit, sigurohuni që keni konfigurimin e mëposhtëm:

  • Instaloni paketën Python të LiteRT Torch . Shtojca Hugging Face Export është integruar direkt në paketën litert-torch .
  • (Opsionale) Për kompilimin e NPU-së, instaloni shtesat LiteRT NPU SDK duke përdorur pip install ai-edge-litert[npu-sdk] . Për më shumë detaje, mund të ndiqni LiteRT NPU AOT Compilation Colab .
  • Mjedisi i Hugging Face konfigurohet nëse keni ndërmend ta ngarkoni direkt nga Hugging Face hub. Mjeti export_hf përdor mekanizmat standardë të autentifikimit të transformatorëve si HF_TOKEN ose CLI. Shih shembullin:

Për të shkarkuar modele me portë (si Gemma ose Llama), duhet të autentifikoheni me Hugging Face duke përdorur CLI ose një ndryshore mjedisi:

# Set your Hugging Face token as an environment variable
export HF_TOKEN="your_hugging_face_token"

# Or use the Hugging Face CLI login
hf auth login

Përdorimi bazë

Mund të përdorni export_hf duke përdorur rreshtin e komandës ose API-n Python. Mjeti do ta shkarkojë automatikisht modelin nga Hugging Face ose do ta ngarkojë modelin nga shtegu lokal i dhënë, do ta gjurmojë atë, do të aplikojë optimizimet e parazgjedhura dhe do ta konvertojë atë në një skedar .litertlm të pajtueshëm për nxjerrjen e përfundimeve të CPU-së dhe GPU-së.

Ndërfaqja e Linjës së Komandës (CLI)

Përdorni komandën litert-torch export_hf . Duhet të jepni ID-në e modelit Hugging Face dhe direktorinë e daljes së zgjedhur.

litert-torch export_hf \
  --model=google/gemma-3-270m-it \
  --output_dir=/tmp/gemma3-270m-it-litertlm

Për eksportimin e një modeli lokal ose të personalizuar, mund të kaloni edhe rrugën për në pikën e kontrollit të safetensorit:

litert-torch export_hf \
  --model=/path/to/safetensor/dir \
  --output_dir=/my_custom_litertlm

API-ja e Python-it

Për integrimin në skripte ose fletore Python, importoni modulin export nga litert_torch.generative.export_hf .

from litert_torch.generative.export_hf import export

export.export(
    model='google/gemma-3-270m-it',
    output_dir='/tmp/gemma3-270m-it-litertlm',
)

Vendosja në pajisje me LiteRT-LM

Pasi ta keni eksportuar me sukses modelin tuaj në një skedar .litertlm , mund ta instaloni direkt në pajisje duke përdorur LiteRT-LM për ekzekutim me performancë të lartë si në CPU ashtu edhe në GPU. Shihni detajet se si të përdorni API-n LiteRT-LM . Për përshpejtimin e NPU-së, referojuni udhëzuesit të përpilimit NPU AOT .

Arkitekturat e Mbështetura

Mjeti export_hf verifikon arkitekturat e mëposhtme të modelit Transformers. Kjo mund të verifikohet duke kontrolluar fushën model_typeconfig.json .

  • Gemma 3 ( Gemma3ForCausalLM )
  • Gemma 3n ( Gemma3nForCausalLM )
  • Gemma 4 ( Gemma4ForCausalLM )
  • Llama ( LlamaForCausalLM )
  • Mistral ( MistralForCausalLM )
  • Qwen 2/2.5 ( Qwen2ForCausalLM )
  • Qwen 3 ( Qwen3ForCausalLM )
  • SmolLM 3 ( SmolLM3ForCausalLM )

Cilësimet e avancuara

Ndërkohë që mund të eksploroni opsionet e avancuara të disponueshme në flamujt e zgjerimit, më poshtë janë disa butona të zakonshëm që mund të provoni.

Modelet e Gjuhës së Vizionit

Për modelet e mbështetura, mund të caktoni --task=image_text_to_text dhe --export_vision_encoder për të ngarkuar dhe eksportuar modelin e enkoderit të vizionit.

Arkitekturat e mbështetura:

  • Gemma 3 ( Gemma3ForConditionalGeneration )
  • Gemma 4 ( Gemma4ForConditionalGeneration )

Konfigurimi i Kuantizimit

Modelet gjeneruese të IA-së shpesh janë shumë të mëdha për t'u ekzekutuar në mënyrë efikase në pajisjet skajore pa optimizim. Si parazgjedhje, export_hf zbaton recetën e kuantizimit dynamic_wi8_afp32 duke përdorur AI Edge Quantizer , i cili kuantizon peshat në INT8 për kanal ndërsa mban aktivizimet në FP32.

Mund ta anashkaloni këtë sjellje të parazgjedhur duke përdorur flamurin --quantization_recipe (ose parametrin quantization_recipe në Python). Mund të jepni emrin e një recete të integruar nga AI Edge Quantizer ose të specifikoni shtegun për në një recetë JSON të personalizuar.

Shembull:

litert-torch export_hf \
  --model=google/gemma-3-270m-it \
  --output_dir=/tmp/gemma3-270m-it-litertlm \
  --quantization_recipe=/path/to/my/quantization_recipe.json

Mbivendosja e Shabllonit Jinja

Shablloni jinja që vjen me modelin transformers mund të mos jetë i pajtueshëm me LiteRT-LM (p.sh. modelet Gemma4), mund ta vendosni flamurin use_jinja_templateFalse ose të përdorni opsionin jinja_chat_template_override për të anashkaluar shabllonin.

Shembull:

 litert-torch export_hf \
   --model=google/gemma-4-E2B-it \
  --output_dir=/tmp/gemma4_2b_litertlm \
  --externalize_embedder \
  --jinja_chat_template_override=litert-community/gemma-4-E2B-it-litert-lm

Përmbledhja NPU AOT

Përveç CPU-së dhe GPU-së, mund të synoni edhe përshpejtuesit e mbështetur të NPU-së kur eksportoni modelet tuaja duke ofruar opsionet specifike të NPU-së.

Tensor i Google-it

Parakushte: Ndiqni faqen e Google Tensor SDK për konfigurimin e mjedisit të zhvillimit.

Për të eksportuar LLM-të që synojnë TPU-të e Google Tensor, ndiqni shembullin për flamujt shtesë të kërkuar për përpilimin e TPU-së.

Shembull:

litert-torch export-hf \
  --model=google/gemma-3-270m-it \
  --output_dir=/tmp/gemma3-270m-google-tensor-g5 \
  --split_cache \
  --externalize_embedder \
  --prefill_lengths=128, \
  --cache_length=1280 \
  --quantization_recipe="weight_only_wi8_afp32"
  --aot_backend=GOOGLE \
  --aot_soc_model=Tensor_G5 \
  --aot_compilation_config_dict='{"google_tensor_enable_large_model_support": True}'

Për më shumë informacion, shihni Kompilimi i modeleve me Google Tensor SDK .

Koha e ekzekutimit të AI të Qualcomm:

Parakushte: Ndiqni udhëzimet e konfigurimit të SDK-së për Integrimin LiteRT Qualcomm dhe pajisjet e mbështetura.

Shembull:

litert-torch export-hf \
  --model=google/gemma-3-270m-it \
  --output_dir=/tmp/gemma3-270m-google-tensor-g5 \
  --split_cache \
  --externalize_embedder \
  --quantization_recipe='' \
  --aot_backend=qualcomm \
  --aot_soc_model=SM8750

MediaTek NeuroPilot:

Parakushte: Ndiqni udhëzimet e Integrimit të LiteRT MediaTek për konfigurimin e SDK-së dhe pajisjet e mbështetura.

Shembull:

litert-torch export-hf \
  --model=google/gemma-3-270m-it \
  --output_dir=/tmp/gemma3-270m-google-tensor-g5 \
  --split_cache \
  --externalize_embedder \
  --aot_backend=mediatek \
  --aot_soc_model=MT8189

Intel OpenVINO

Parakushte: Ndiqni udhëzimet e konfigurimit të SDK-së për Integrimin LiteRT Intel OpenVINO dhe pajisjet e mbështetura.

Shembull:

litert-torch export-hf \
  --model=google/gemma-3-270m-it \
  --output_dir=/tmp/gemma3-270m-google-tensor-g5 \
  --split_cache \
  --externalize_embedder \
  --aot_backend=intel_openvino \
  --aot_soc_model=PTL

Riautorizimi dhe Konvertimi duke përdorur API-në Gjenerative të LiteRT Torch

API-ja gjeneruese LiteRT Torch gjithashtu ofron blloqe ndërtimi për të ndërtuar dhe optimizuar modele të personalizuara PyTorch, duke përfshirë, por pa u kufizuar në shtresa normalizuese, vëmendje dhe module të tjera bazë. Nëse modeli juaj nuk mbulohet nga zgjerimi LiteRT Torch Hugging Face Export , mund të ndërtoni modelet tuaja që të jenë të pajtueshme me LiteRT dhe LiteRT-LM.

Ekzistojnë shembuj modelesh duke përfshirë LLM-të, modelet e difuzionit dhe modelet ASR. Ndihuni të lirë t'i kontrolloni ato dhe të vendosni modelin tuaj.

Për më shumë informacion, shihni repozitorin GitHub të API-t Generative Torch .