AI Edge Torch to biblioteka, która umożliwia konwertowanie modeli PyTorch na format .tflite
, co umożliwia uruchamianie tych modeli za pomocą TensorFlow Lite i MediaPipe.
Jest to szczególnie przydatne dla programistów tworzących aplikacje mobilne, które działają w pełni na urządzeniu. AI Edge Torch oferuje szeroki zakres CPU, z początkową obsługą GPU i jednostek NPU.
Aby rozpocząć konwertowanie modeli PyTorch na TF Lite, skorzystaj z krótkiego wprowadzenia do konwertera Pytorch. Więcej informacji znajdziesz w repozytorium GitHub AI Edge Torch.
Jeśli konwertujesz duże modele językowe (LLM) lub modele oparte na transformerze, użyj interfejsu Generative Torch API, który obsługuje szczegóły konwersji związane z transformerami, takie jak tworzenie i kwantyfikacja modeli.
Przepływ pracy związany z konwersjami
Poniższe kroki przedstawiają prostą, kompleksową konwersję modelu PyTorch na TensorFlow Lite.
Importuj Edge Torch
Zacznij od zaimportowania pakietu pip AI Edge Torch (ai-edge-torch
) wraz z PyTorch.
import ai_edge_torch
import torch
W tym przykładzie potrzebujemy również następujących pakietów:
import numpy
import torchvision
Inicjowanie i przekształcanie modelu
Przekonwertujemy model ResNet18, popularny model rozpoznawania obrazów.
resnet18 = torchvision.models.resnet18(torchvision.models.ResNet18_Weights.IMAGENET1K_V1).eval()
Do przekonwertowania modelu PyTorch użyj metody convert
z biblioteki AI Edge Torch.
sample_input = (torch.randn(1, 3, 224, 224),)
edge_model = ai_edge_torch.convert(resnet18.eval(), sample_input)
Użyj modelu
Po przekonwertowaniu modelu Pytorch możesz uruchamiać wnioskowania za pomocą nowego przekonwertowanego modelu TF Lite.
output = edge_model(*sample_inputs)
Możesz wyeksportować i zapisać przekonwertowany model w formacie .tflite
do użycia w przyszłości.
edge_model.export('resnet.tflite')