Kompiloni modele me Google Tensor SDK

SDK-ja e Google Tensor ju lejon të optimizoni dhe ekzekutoni modele të të mësuarit automatik (ML) direkt në TPU-në e dedikuar të Google Tensor. Përveç modeleve standarde të ML-së, ju mund të kompiloni dhe përshpejtoni modelet gjuhësore brenda rrjedhës suaj të punës LiteRT.

Për disa modele të para-optimizuara, ne ofrojmë gjithashtu një skedar binar shtesë të opsioneve të përpiluesit që mund ta përfshini në rrjedhën tuaj të punës. Për të arritur performancë optimale në Google Tensor, ne rekomandojmë përdorimin e flamujve të mëposhtëm të optimizimit gjatë përpilimit:

Flamujt e kompilimit për Google Tensor

Optimizoni procesin e kompilimit të modelit tuaj duke aplikuar flamuj specifikë konfigurimi për të përshtatur performancën dhe përdorimin e burimeve. Ju mund t'i përdorni këto parametra brenda rrjedhës së punës LiteRT Python për të rregulluar sjelljen e kompilimit si për modelet PyTorch ashtu edhe për ato TFLite.

Flamuri Kërkesë Përshkrimi Vlera e parazgjedhur
google_tensor_truncation_type Opsionale Cakton llojin e të dhënave të synuara për operacionet me pikë lundruese.
Vlerat e mbështetura: auto (parazgjedhur), bfloat16, half, no_truncation
auto
google_tensor_sharding_intensity Opsionale Kontrollon se sa agresivisht ndahet modeli për përpunim paralel.
Opsionet: minimale, e moderuar, e gjerë, maksimale.
minimal
google_tensor_int64_to_int32 Opsionale Vendoseni në "e vërtetë" për të lejuar kompiluesin të konvertojë numra të plotë 64-bit në numra të plotë 32-bit, gjë që mund të jetë e nevojshme për disa modele. I rremë
google_tensor_enable_large_model_support Opsionale Vendoseni në "e vërtetë" nëse modeli juaj është më i madh se 2 GB. I rremë
google_tensor_enable_4bit_compilation Opsionale Mundëson kompilimin e modeleve me operacione konvolucioni që përmbajnë parametra 4 bit. I rremë
google_tensor_extra_options_path Opsionale Kalon opsione shtesë të përpiluesit si një skedar binar. "" (Bosh)

Mund t’i përdorni këto flamuj me rrjedhën LiteRT Python siç tregohet në fragmentet e mëposhtme të kodit:

  • Kur kompilohet një model pytorch duke përdorur ai_edge_torch

    compiled_models = (
      ai_edge_torch.experimental_add_compilation_backend(tensor_g5_target,
      flag_name1=value1,
      flag_name2=value2, ...).convert(
        channel_last_selfie_segmentation,
        sample_input))
    
  • Kur kompilohet një model tflite

    compiled_models = aot_lib.aot_compile(
        tflite_model_path,
        target=[tensor_g5_target],
        flag_name1=value1,
        flag_name2=value2, ...)
    

Shembull përdorimi

Në shembullin e mëposhtëm, përdoret flamuri google_tensor_truncation_type="half" :

  compiled_models = aot_lib.aot_compile(
      tflite_model_path,
      target=[tensor_g5_target],
      keep_going=False,
      google_tensor_truncation_type="half"
  )

Shihni LiteRT AOT Colab për më shumë informacion.

Kompiloni modele gjuhësore për Google Tensor

Për të kompiluar modele gjuhësore për Google Tensor, ndiqni udhëzimet në kompilimin NPU AOT .

Për të eksportuar LLM për TPU-të e Google Tensor, ndiqni shembullin për flamujt shtesë të kërkuar për përpilimin e NPU-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}'