Transformers documentation

ExecuTorch

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

ExecuTorch

ExecuTorch, giyilebilir cihazlar, gömülü cihazlar ve mikrodenetleyiciler dahil olmak üzere mobil ve kenar cihazlarında cihaz üzerinde çıkarım yeteneklerini mümkün kılan uçtan uca bir çözümdür. PyTorch ekosisteminin bir parçasıdır ve taşınabilirlik, verimlilik ve performans odaklı olarak PyTorch modellerinin dağıtımını destekler.

ExecuTorch, backend devri, kullanıcı tanımlı derleyici dönüşümleri ve bellek planlaması gibi model, cihaz ve/veya kullanım senaryosuna özgü optimizasyonları gerçekleştirmek için iyi tanımlanmış giriş noktaları sunar. ExecuTorch kullanarak bir PyTorch modelini kenar cihazda çalıştırılmaya hazırlamanın ilk adımı, modeli dışa aktarmaktır. Bu, torch.export adlı PyTorch API’sinin kullanılmasıyla sağlanır.

ExecuTorch Entegrasyonu

🤗 Transformers'ın torch.export kullanılarak dışa aktarılabilmesini sağlamak için bir entegrasyon noktası geliştirilmektedir. Bu entegrasyonun amacı yalnızca dışa aktarmayı mümkün kılmak değil, aynı zamanda dışa aktarılan ürünün ExecuTorch içinde verimli bir şekilde çalışmak üzere daha da indirgenip optimize edilebilmesini, özellikle mobil ve kenar (edge) kullanım senaryoları için, garanti altına almaktır.

sınıf transformers.TorchExportableModuleWithStaticCache

< >

( model: PreTrainedModelbatch_size: int | None = Nonemax_cache_len: int | None = Nonedevice: typing.Optional[torch.device] = None )

PreTrainedModel'in torch.export ile dışa aktarılabilir hale getirilmesini sağlamak üzere tasarlanmış bir tarife modülü, özellikle yalnızca çözücü LM'ler için StaticCache'e. Bu modül, dışa aktarılan modelin ExecuTorch içindeki ek düşürme ve yürütme ile uyumlu olduğunu garanti eder.

Not: Bu sınıf, modelin ExecuTorch içinde daha da indirgenip verimli bir şekilde çalıştırılmasını sağlayacak şekilde, torch.export kullanılarak dışa aktarma sürecini desteklemek için özellikle tasarlanmıştır.

forward

< >

( input_ids: typing.Optional[torch.LongTensor] = Noneinputs_embeds: typing.Optional[torch.Tensor] = Nonecache_position: typing.Optional[torch.Tensor] = None ) → torch.Tensor

Parametreler

  • input_ids (torch.Tensor) — Modüle giren mevcut girdi token kimliğini temsil eden tensör.
  • inputs_embeds (torch.Tensor) — Modülün mevcut giriş gömme değerlerini temsil eden tensör.
  • cache_position (torch.Tensor) — Önbellekteki mevcut giriş konumunu temsil eden tensör.

Dönüş değeri

torch.Tensor

Modelden gelen Logits çıktısı.

ExecuTorch çalışma zamanı ile uyumlu olan modülün ileri geçişi.

Bu ileri yönlü adaptörün iki temel amacı vardır:

  1. Modelin torch.export ile Uyumlu Hale Getirilmesi: Uyarlama katmanı, Cache gibi desteklenmeyen nesneleri grafik girdilerinden ve çıktılarından gizleyerek, modelin torch.export kullanılarak sorunsuz bir şekilde dışa aktarılmasını sağlar.

  2. ExecuTorch çalışma zamanıyla uyumluluğu sağlama: Adaptör, modelin ileri (forward) imzasını executorch/extension/llm/runner içindeki imza ile eşleştirir; böylece dışa aktarılan modelin ExecuTorch içinde hazır halde çalıştırılabildiğinden emin olunur.

transformers.convert_and_export_with_cache

< >

( model: PreTrainedModelexample_input_ids: typing.Optional[torch.Tensor] = Noneexample_cache_position: typing.Optional[torch.Tensor] = Nonedynamic_shapes: dict | None = Nonestrict: bool | None = None ) → Exported program (torch.export.ExportedProgram)

Parametreler

  • model (PreTrainedModel) — Dışa aktarılacak önceden eğitilmiş model.
  • example_input_ids (Optional[torch.Tensor]) — torch.export tarafından kullanılan örnek giriş token kimliği.
  • example_cache_position (Optional[torch.Tensor]) — torch.export tarafından kullanılan örnek mevcut önbellek konumu.
  • dynamic_shapes(Optional[dict]) — torch.export tarafından kullanılan dinamik şekiller.
  • strict(Optional[bool]) — torch.export'in dynamo kullanmasını belirtmek için bayrak.

Dönüş değeri

Dışa aktarılmış program (torch.export.ExportedProgram)

torch.export aracılığıyla oluşturulan dışa aktarılan program.

Bir PreTrainedModel'i dışa aktarılabilir bir modüle dönüştürün ve torch.export kullanarak dışa aktarın; dışa aktarılan modelin ExecuTorch ile uyumlu olduğundan emin olun.

Update on GitHub