AI Edge Torch est une bibliothèque qui vous permet de convertir des modèles PyTorch en .tflite
ce qui vous permet d'exécuter ces modèles avec LiteRT et MediaPipe.
Cela est particulièrement utile pour les développeurs qui créent des applications mobiles qui exécutent des modèles
entièrement sur l'appareil. La technologie AI Edge Torch offre une couverture étendue du processeur, avec un GPU initial.
et NPU.
Pour commencer à convertir des modèles PyTorch au format LiteRT, utilisez le convertisseur PyTorch. guide de démarrage rapide. Pour en savoir plus, consultez la documentation Dépôt GitHub
Si vous convertissez spécifiquement des grands modèles de langage (LLM) ou modèles basés sur Transformer, utilisez l'API Generative Torch, qui gère les détails de conversion spécifiques au transformateur, comme la création du modèle la quantification.
Workflow de conversion
Les étapes suivantes illustrent une simple conversion de bout en bout d'un modèle PyTorch vers LiteRT.
Importer AI Edge Torch
Commencez par importer le package pip d'AI Edge Torch (ai-edge-torch
), ainsi que
PyTorch.
import ai_edge_torch
import torch
Pour cet exemple, nous avons également besoin des packages suivants:
import numpy
import torchvision
Initialiser et convertir le modèle
Nous allons convertir ResNet18, un modèle de reconnaissance d'image populaire.
resnet18 = torchvision.models.resnet18(torchvision.models.ResNet18_Weights.IMAGENET1K_V1).eval()
Utilisez la méthode convert
de la bibliothèque AI Edge Torch pour convertir l'instance PyTorch.
du modèle.
sample_input = (torch.randn(1, 3, 224, 224),)
edge_model = ai_edge_torch.convert(resnet18.eval(), sample_input)
Utiliser le modèle
Après avoir converti le modèle PyTorch, vous pouvez exécuter des inférences avec le nouveau le modèle LiteRT converti.
output = edge_model(*sample_inputs)
Vous pouvez exporter et enregistrer le modèle converti au format .tflite
pour plus tard
utiliser.
edge_model.export('resnet.tflite')