LiteRT është kuadri në pajisje i Google për vendosjen e ML dhe GenAI me performancë të lartë në platformat edge, duke përdorur konvertim, kohë ekzekutimi dhe optimizim efikas.
Versioni më i fundit i LiteRT 2.x prezanton CompiledModel API, një ndërfaqe moderne të ekzekutimit të projektuar për të maksimizuar përshpejtimin e harduerit. Ndërsa Interpreter API (më parë TensorFlow Lite) mbetet i disponueshëm për kompatibilitet prapa, CompiledModel API është zgjedhja e rekomanduar për zhvilluesit që kërkojnë performancë të nivelit të lartë në aplikacionet e IA-së në pajisje.
Karakteristikat kryesore të LiteRT
Përmirësoni zhvillimin me LiteRT
Përzgjedhje automatike e përshpejtuesit kundrejt krijimit të qartë të delegatëve. Trajtim efikas i buffer-it I/O dhe ekzekutim asinkron për performancë superiore. Shih dokumentacionin e inferencës në pajisje .
Performanca më e mirë e GPU-së në klasën e saj
Mundësuar nga ML Drift, tani mbështet modelet ML dhe Generative AI në API-të e GPU-ve. Shih dokumentacionin e përshpejtimit të GPU-së .
Përshpejtimi i unifikuar i NPU-së
Përshpejtoni modelin tuaj duke përdorur akses të thjeshtuar të NPU-së nga ofruesit kryesorë të çipseteve. Shihni dokumentacionin e përshpejtimit të NPU-së .
Mbështetje Superiore LLM
LiteRT ofron implementim me performancë të lartë për modelet e IA-së Gjenerative në platformat mobile, desktop dhe web. Shihni dokumentacionin e implementimit të GenAI .
Mbështetje e gjerë e kornizës ML
LiteRT mbështet konvertim të efektshëm nga PyTorch, TensorFlow dhe JAX Frameworks në formatin .tflite ose .litertlm . Shih dokumentacionin e konvertimit të modelit .
Fluksi i punës së zhvillimit
LiteRT ekzekuton përfundime tërësisht në pajisje në Android, iOS, Web, IoT dhe në Desktop/Laptop. Pavarësisht pajisjes, më poshtë është rrjedha më e zakonshme e punës, me lidhje për udhëzime të mëtejshme.

Identifikoni zgjidhjen më të përshtatshme për sfidën e ML-së
LiteRT u ofron përdoruesve një nivel të lartë fleksibiliteti dhe përshtatshmërie kur bëhet fjalë për zgjidhjen e problemeve të të mësuarit automatik, duke e bërë atë një zgjedhje të mirë për përdoruesit që kërkojnë një model specifik ose një implementim të specializuar. Përdoruesit që kërkojnë zgjidhje plug-and-play mund të preferojnë MediaPipe Tasks , i cili ofron zgjidhje të gatshme për detyra të zakonshme të të mësuarit automatik, si zbulimi i objekteve, klasifikimi i tekstit dhe nxjerrja e përfundimeve LLM.
Marrja dhe përgatitja e modelit
Një model LiteRT përfaqësohet në një format efikas portativ të njohur si FlatBuffers , i cili përdor prapashtesën e skedarit .tflite .
Ju mund të merrni një model LiteRT në mënyrat e mëposhtme:
Merrni një model të para-trajnuar: për ngarkesat e punës popullore të ML si segmentimi i imazhit, zbulimi i objekteve etj.
Qasja më e thjeshtë është të përdorni një model LiteRT që është tashmë në formatin
.tflite. Këto modele nuk kërkojnë ndonjë hap shtesë konvertimi.Lloji i modelit Burimi i modelit të para-trajnuar ML klasike
(formati.tflite)Vizitoni Kaggle ose HuggingFace
P.sh. modelet e segmentimit të imazhit dhe aplikacioni shembullIA gjeneruese
(formati.litertlm)Faqja e përqafimit LiteRT
Familja Eg GemmaKonvertoni modelin tuaj të zgjedhur PyTorch, TensorFlow ose JAX në një model LiteRT nëse zgjidhni të mos përdorni një model të para-trajnuar. [PRO PËRDORUES]
Korniza e Modelit Modele Shembull Mjet Konvertimi Pytorch Fytyrë përqafuese
TorchvisionLidhje TensorFlow Modelet Kaggle
Fytyrë përqafueseLidhje Jax Fytyrë përqafuese Lidhje Shkruani LLM-në tuaj për optimizim të mëtejshëm duke përdorur Generative API [PRO USER]
Biblioteka jonë Generative API ofron blloqe ndërtimi të integruara PyTorch për kompozimin e modeleve Transformer si Gemma , TinyLlama dhe të tjerë duke përdorur abstraksione miqësore për celularët, përmes të cilave ne mund të garantojmë konvertimin dhe ekzekutimin me performancë të lartë në kohën tonë të ekzekutimit celular, LiteRT. Shihni dokumentacionin e Generative API .
Kuantizimi [PËRDORUESI PROFESIONAL]
AI Edge Quantizer për zhvilluesit e avancuar është një mjet për të kuantizuar modelet e konvertuara LiteRT. Ai synon t'u lehtësojë përdoruesve të përparuar të përpiqen për performancë optimale në modelet që kërkojnë burime (p.sh., modelet GenAI).
Shihni më shumë detaje nga dokumentacioni i AI Edge Quantizer .
Integroni modelin në aplikacionin tuaj në platformat Edge
LiteRT ju lejon të ekzekutoni modele ML tërësisht në pajisje me performancë të lartë në platformat Android, iOS, Web, Desktop dhe IoT.
Përdorni udhëzuesit e mëposhtëm për të integruar një model LiteRT në platformën tuaj të preferuar:
| Platforma e Mbështetur | Pajisjet e mbështetura | API-të e mbështetura |
|---|---|---|
| Ekzekuto në Android | Pajisjet mobile Android | C++/Kotlin |
| Ekzekutohet në iOS/macOS | Pajisjet mobile iOS, Macbook-ët | C++/Swift |
| Ekzekutoni në internet duke përdorur LiteRT.js | Pajisje me Chrome, Firefox ose Safari | JavaScript |
| Ekzekuto në Linux | Stacioni i punës Linux ose pajisjet IoT të bazuara në Linux | C++/Python |
| Ekzekuto në Windows | Stacioni i punës me Windows ose laptopët | C++/Python |
| Ekzekuto në Micro | Pajisjet e integruara | C++ |
Fragmentet e mëposhtme të kodit tregojnë një implementim bazë në Kotlin dhe C++.
Kotlin
// Load model and initialize runtime
val compiledModel = CompiledModel.create(
"/path/to/mymodel.tflite",
CompiledModel.Options(Accelerator.CPU))
// Preallocate input/output buffers
val inputBuffers = compiledModel.createInputBuffers()
val outputBuffers = compiledModel.createOutputBuffers()
// Fill the input buffer
inputBuffers.get(0).writeFloat(input0)
inputBuffers.get(1).writeFloat(input1)
// Invoke
compiledModel.run(inputBuffers, outputBuffers)
// Read the output
val output = outputBuffers.get(0).readFloat()
C++
// Load model and initialize runtime
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));
// Preallocate input/output buffers
LITERT_ASSIGN_OR_RETURN(auto input_buffers,compiled_model.CreateInputBuffers(signature_index));
LITERT_ASSIGN_OR_RETURN(auto output_buffers,compiled_model.CreateOutputBuffers(signature_index));
// Fill the input buffer
LITERT_ABORT_IF_ERROR(input_buffers[0].Write(input0));
LITERT_ABORT_IF_ERROR(input_buffers[1].Write(input1));
// Invoke
LITERT_ABORT_IF_ERROR(compiled_model.Run(signature_index, input_buffers, output_buffers));
// Read the output
LITERT_ABORT_IF_ERROR(output_buffers[0].Read(output0));
Zgjidhni një përshpejtues hardueri
Mënyra më e drejtpërdrejtë për të përfshirë backend-et në LiteRT është të mbështeteni në inteligjencën e integruar të kohës së ekzekutimit. Me CompiledModel API, LiteRT e thjeshton ndjeshëm konfigurimin me mundësinë për të specifikuar backend-in e synuar si një opsion. Shihni udhëzuesin e nxjerrjes së përfundimeve në pajisje për më shumë detaje.
| Android | iOS / macOS | Uebi | Linux / Windows | IoT | |
|---|---|---|---|---|---|
| CPU | XNNPACK | XNNPACK | XNNPACK | XNNPACK | XNNPACK |
| GPU | WebGPU OpenCL | WebGPU Metal | WebGPU | WebGPU OpenCL | WebGPU |
| NPU | MediaTek Qualcomm | - | - | - | - |
Dokumentacion dhe mbështetje shtesë
LiteRT-Samples GitHub Repo për më shumë aplikacione shembull LiteRT.
Për përdoruesit ekzistues të TensorFlow Lite , shihni udhëzuesin e migrimit .
Faqja e Mjeteve LiteRT për performancën, profilizimin, raportimin e gabimeve etj.