Mengonversi model PyTorch ke LiteRT

AI Edge Torch adalah library yang memungkinkan Anda mengonversi model PyTorch menjadi .tflite , memungkinkan Anda untuk menjalankan model tersebut dengan LiteRT dan MediaPipe. Ini sangat membantu bagi developer yang membuat aplikasi seluler yang menjalankan model sepenuhnya ada di perangkat. AI Edge Torch menawarkan cakupan CPU yang luas, dengan GPU awal dan dukungan NPU.

Untuk mulai mengonversi model PyTorch ke LiteRT, gunakan pengonversi Pytorch panduan memulai. Untuk mengetahui informasi selengkapnya, lihat AI Edge Torch Repositori GitHub.

Jika Anda secara khusus mengonversi Model Bahasa Besar (LLM) atau berbasis transformator, gunakan Generative Torch API, yang menangani detail konversi khusus transformator seperti pembuatan model dan kuantisasi.

Alur kerja konversi

Langkah-langkah berikut menunjukkan konversi PyTorch menyeluruh yang sederhana model ke LiteRT.

Impor AI Edge Torch

Mulai dengan mengimpor paket pip AI Edge Torch (ai-edge-torch), bersama dengan PyTorch.

import ai_edge_torch
import torch

Untuk contoh ini, kami juga memerlukan paket berikut:

import numpy
import torchvision

Melakukan inisialisasi dan mengonversi model

Kita akan mengonversi ResNet18, adalah model pengenalan citra yang populer.

resnet18 = torchvision.models.resnet18(torchvision.models.ResNet18_Weights.IMAGENET1K_V1).eval()

Gunakan metode convert dari library AI Edge Torch untuk mengonversi PyTorch model transformer.

sample_input = (torch.randn(1, 3, 224, 224),)
edge_model = ai_edge_torch.convert(resnet18.eval(), sample_input)

Menggunakan model

Setelah mengonversi model Pytorch, Anda dapat menjalankan inferensi dengan model LiteRT yang dikonversi.

output = edge_model(*sample_inputs)

Anda dapat mengekspor dan menyimpan model yang dikonversi dalam format .tflite untuk masa mendatang gunakan.

edge_model.export('resnet.tflite')