LiteRT adalah framework di perangkat Google untuk deployment ML & GenAI berperforma tinggi di platform edge, menggunakan konversi, runtime, dan pengoptimalan yang efisien.
LiteRT 2.x berisi API runtime terbaru, CompiledModel API, yang lebih baik daripada Interpreter API (alias TensorFlow Lite API), terutama melalui akselerasi hardware dan performa keseluruhan untuk aplikasi ML dan AI di perangkat. CompiledModel API dalam rilis beta dan tersedia di Kotlin dan C++.
Fitur utama LiteRT
Model yang Didukung
LiteRT mendukung konversi yang disederhanakan dari Framework Pytorch, TensorFlow, dan JAX ke format .tflite atau .litertlm.
Menyederhanakan pengembangan dengan LiteRT
Pemilihan akselerator otomatis versus pembuatan delegasi eksplisit. Runtime NPU dan distribusi model yang sederhana. Penanganan buffer I/O yang efisien dan eksekusi asinkron untuk performa yang lebih unggul.
Performa GPU terbaik di kelasnya
Didukung oleh ML Drift, kini mendukung model ML dan AI Generatif di GPU API.
Akselerasi NPU terpadu
Percepat model Anda menggunakan akses NPU yang disederhanakan dari penyedia chipset utama.
Dukungan LLM yang Disederhanakan dengan LiteRT
Anda dapat menggunakan LiteRT-LM yang didukung oleh LiteRT. LiteRT-LM mendukung LLM terbaru dan fitur berguna seperti multi-modalitas, decoding terbatas, dll.
Alur kerja pengembangan
LiteRT menjalankan inferensi sepenuhnya di perangkat Android, iOS, Web, IoT, dan di Desktop/Laptop. Terlepas dari perangkat, berikut adalah alur kerja yang paling umum, dengan link ke petunjuk lebih lanjut.

Mengidentifikasi solusi yang paling sesuai untuk tantangan ML
LiteRT menawarkan tingkat fleksibilitas dan kemampuan penyesuaian yang tinggi kepada pengguna dalam memecahkan masalah machine learning, sehingga cocok bagi pengguna yang memerlukan model tertentu atau implementasi khusus. Pengguna yang mencari solusi plug-and-play mungkin lebih memilih MediaPipe Tasks, yang menyediakan solusi siap pakai untuk tugas machine learning umum seperti deteksi objek, klasifikasi teks, dan inferensi LLM.
Mendapatkan dan menyiapkan model
Model LiteRT direpresentasikan dalam format portabel yang efisien yang dikenal sebagai
FlatBuffers, yang menggunakan ekstensi file .tflite.
Anda dapat memperoleh model LiteRT dengan cara berikut:
Mendapatkan model terlatih: untuk beban kerja ML populer seperti Segmentasi gambar, Deteksi objek, dll.
Pendekatan paling sederhana adalah menggunakan model LiteRT yang sudah dalam format
.tflite. Model ini tidak memerlukan langkah konversi tambahan.Jenis Model Sumber Model Terlatih ML Klasik
(format.tflite)Buka Kaggle atau HuggingFace
Misalnya, Model segmentasi gambar dan aplikasi contohAI Generatif
(format.litertlm)Halaman Hugging Face LiteRT
Misalnya, Gemma FamilyKonversikan model PyTorch, TensorFlow, atau JAX yang Anda pilih menjadi model LiteRT jika Anda memilih untuk tidak menggunakan model terlatih. [PENGGUNA PRO]
Framework Model Model Sampel Alat Konversi Pytorch Hugging Face
TorchvisionLink TensorFlow Model Kaggle
Hugging FaceLink Jax Hugging Face Link Menulis LLM untuk pengoptimalan lebih lanjut menggunakan Generative API [PENGGUNA PRO]
Library Generative API kami menyediakan blok penyusun bawaan PyTorch untuk menyusun model Transformer seperti Gemma, TinyLlama, dan lainnya menggunakan abstraksi yang kompatibel untuk perangkat seluler, sehingga kami dapat menjamin konversi dan eksekusi berperforma tinggi di runtime seluler kami, LiteRT. Lihat dokumentasi Generative API.
Kuantisasi [PENGGUNA PRO]
Pengukur Kuantisasi Edge AI untuk developer tingkat lanjut adalah alat untuk mengukur kuantisasi model LiteRT yang dikonversi. Tujuannya adalah untuk memfasilitasi pengguna tingkat lanjut dalam berupaya mendapatkan performa optimal pada model yang membutuhkan banyak resource (misalnya, model GenAI).
Untuk model machine learning dan model AI Generatif, lihat dokumentasi Ai-Edge-Quantization.
Prasyarat untuk memulai
- Python 3.10-3.12
- File model
.tflite - Detail tambahan tersedia di bagian platform masing-masing
Mengintegrasikan model ke dalam aplikasi Anda di platform edge
Anda dapat menerapkan model LiteRT untuk menjalankan inferensi sepenuhnya di perangkat di Android, iOS, Web, IoT, dan perangkat Desktop. LiteRT berisi API untuk Python, Java dan Kotlin untuk Android, Swift untuk iOS, dan C++ untuk perangkat mikro.
Gunakan panduan berikut untuk menerapkan model LiteRT di platform pilihan Anda:
| Framework Model | Model Sampel | Alat Konversi |
|---|---|---|
| Jalankan di Android | Perangkat seluler Android | C++/Kotlin API |
| Jalankan di iOS | Perangkat seluler iOS | C++/Swift* API |
| Menjalankan di Web menggunakan LiteRT.js | Perangkat dengan Chrome, Firefox, atau Safari | JavaScript API |
| Jalankan di Micro | Perangkat tersemat | C++ API |
*Segera hadir
Contoh kode Kotlin
// Load model and initialize runtime
val compiledModel = CompiledModel.create("/path/to/mymodel.tflite", CompiledModel.Options(Accelerator.CPU))
// Prepare I/O buffers and fill in the data
val inputBuffers = compiledModel.createInputBuffers()
inputBuffers.get(0).writeFloat(input0)
inputBuffers.get(1).writeFloat(input1)
val outputBuffers = compiledModel.createOutputBuffers()
// Execute model
compiledModel.run(inputBuffers, outputBuffers)
// Access model output
val output = outputBuffers.get(0).readFloat()
inputBuffers.forEach { it.close() }
outputBuffers.forEach { it.close() }
compiledModel.close()
Contoh kode C++
LITERT_ASSIGN_OR_RETURN(auto env, GetEnvironment());
LITERT_ASSIGN_OR_RETURN(auto options, GetOptions());
LITERT_ASSIGN_OR_RETURN(
auto compiled_model,
CompiledModel::Create(env, "/path/to/mymodel.tflite", options));
LITERT_ASSIGN_OR_RETURN(auto input_buffers,compiled_model.CreateInputBuffers(signature_index));
LITERT_ASSIGN_OR_RETURN(auto output_buffers,compiled_model.CreateOutputBuffers(signature_index));
LITERT_ABORT_IF_ERROR(input_buffers[0].Write(input0));
LITERT_ABORT_IF_ERROR(input_buffers[1].Write(input1));
LITERT_ABORT_IF_ERROR(compiled_model.Run(signature_index, input_buffers, output_buffers));
LITERT_ABORT_IF_ERROR(output_buffers[0].Read(output0));
Pilih backend
Cara paling mudah untuk menyertakan backend di LiteRT adalah dengan mengandalkan kecerdasan bawaan runtime. Dengan perubahan terbaru, LiteRT menyederhanakan penyiapan secara signifikan dengan kemampuan untuk menentukan backend target sebagai opsi.
Inti LiteRT v2.x adalah objek CompiledModel. Saat Anda memuat model,
LiteRT menggunakan hardware yang tersedia di sistem dan logika prioritas internal untuk
memilih backend yang optimal tanpa konfigurasi manual. Lihat backend
untuk mengetahui detail selengkapnya.
| Android | Desktop | Web | iOS | macOS | IoT | |
|---|---|---|---|---|---|---|
| CPU | XNNPack | XNNPack | XNNPack | XNNPack | XNNPack | XNNPack |
| GPU | WebGPU OpenCL |
WebGPU OpenCL |
WebGPU | WebGPU Metal |
WebGPU Metal |
WebGPU |
| NPU | MediaTek Qualcomm |
- | - | - | - | - |
Dokumentasi dan dukungan tambahan
Aplikasi Contoh LiteRT v2.x Lihat Aplikasi Contoh Segmentasi Gambar LiteRT
Untuk pengguna TensorFlow Lite yang sudah ada Lihat panduan migrasi
Cakupan Operasional Operator yang kompatibel
Model LLM yang Didukung LiteRT Hugging Face dan Gen API - contoh
Alat Halaman alat LiteRT - Pelaporan error, Profiling, Performa, dll.