Modelet e të mësuarit automatik (ML) që përdorni me LiteRT fillimisht ndërtohen dhe trajnohen duke përdorur bibliotekat dhe mjetet kryesore të TensorFlow. Pasi të keni ndërtuar një model me bërthamën e TensorFlow, mund ta konvertoni atë në një format modeli ML më të vogël dhe më efikas të quajtur model LiteRT. Ky seksion ofron udhëzime për konvertimin e modeleve tuaja TensorFlow në formatin e modelit LiteRT.
Fluksi i punës së konvertimit
Konvertimi i modeleve TensorFlow në formatin LiteRT mund të ndjekë disa rrugë në varësi të përmbajtjes së modelit tuaj ML. Si hap i parë i këtij procesi, duhet të vlerësoni modelin tuaj për të përcaktuar nëse mund të konvertohet drejtpërdrejt. Ky vlerësim përcakton nëse përmbajtja e modelit mbështetet nga mjediset standarde të kohës së ekzekutimit LiteRT bazuar në operacionet TensorFlow që përdor. Nëse modeli juaj përdor operacione jashtë grupit të mbështetur, keni mundësinë të rifaktoni modelin tuaj ose të përdorni teknika të përparuara të konvertimit.
Diagrami më poshtë tregon hapat e nivelit të lartë në konvertimin e një modeli.

Figura 1. Rrjedha e punës së konvertimit në LiteRT.
Seksionet e mëposhtme përshkruajnë procesin e vlerësimit dhe konvertimit të modeleve për përdorim me LiteRT.
Formatet e modelit të hyrjes
Mund ta përdorni konvertuesin me formatet e mëposhtme të modelit të hyrjes:
- SavedModel ( i rekomanduar ): Një model TensorFlow i ruajtur si një grup skedarësh në disk.
- Modeli Keras : Një model i krijuar duke përdorur API-n e nivelit të lartë Keras.
- Formati Keras H5 : Një alternativë e lehtë ndaj formatit SavedModel i mbështetur nga Keras API.
- Modele të ndërtuara nga funksione konkrete : Një model i krijuar duke përdorur API-n TensorFlow të nivelit të ulët.
Mund t’i ruani modelet e funksionit Keras dhe konkret si një SavedModel dhe t’i konvertoni duke përdorur rrugën e rekomanduar.
Nëse keni një model Jax, mund të përdorni API-në TFLiteConverter.experimental_from_jax për ta konvertuar atë në formatin LiteRT. Vini re se kjo API mund të ndryshojë gjatë modalitetit eksperimental.
Vlerësimi i konvertimit
Vlerësimi i modelit tuaj është një hap i rëndësishëm përpara se të përpiqeni ta konvertoni atë. Gjatë vlerësimit, duhet të përcaktoni nëse përmbajtja e modelit tuaj është e pajtueshme me formatin LiteRT. Gjithashtu, duhet të përcaktoni nëse modeli juaj është i përshtatshëm për përdorim në pajisjet mobile dhe periferike për sa i përket madhësisë së të dhënave që përdor modeli, kërkesave të tij për përpunimin e harduerit dhe madhësisë dhe kompleksitetit të përgjithshëm të modelit.
Për shumë modele, konvertuesi duhet të funksionojë menjëherë. Megjithatë, biblioteka e integruar e operatorëve LiteRT mbështet një nëngrup të operatorëve kryesorë të TensorFlow, që do të thotë se disa modele mund të kenë nevojë për hapa shtesë para se të konvertohen në LiteRT. Përveç kësaj, disa operacione që mbështeten nga LiteRT kanë kërkesa të kufizuara përdorimi për arsye performance. Shihni udhëzuesin e përputhshmërisë së operatorëve për të përcaktuar nëse modeli juaj duhet të rifaktorizohet për konvertim.
Konvertimi i modelit
Konvertuesi LiteRT merr një model TensorFlow dhe gjeneron një model LiteRT (një format i optimizuar FlatBuffer i identifikuar nga prapashtesa e skedarit .tflite ). Mund të ngarkoni një SavedModel ose të konvertoni direkt një model që krijoni në kod.
Konvertuesi merr 3 flamuj kryesorë (ose opsione) që e personalizojnë konvertimin për modelin tuaj:
- Flamujt e përputhshmërisë ju lejojnë të specifikoni nëse konvertimi duhet të lejojë operatorë të personalizuar.
- Flamujt e optimizimit ju lejojnë të specifikoni llojin e optimizimit që do të aplikohet gjatë konvertimit. Teknika më e përdorur e optimizimit është kuantifikimi pas trajnimit .
- Flamujt e meta të dhënave ju lejojnë të shtoni meta të dhëna në modelin e konvertuar, gjë që e bën më të lehtë krijimin e kodit të mbështjellësit specifik të platformës kur vendosni modele në pajisje.
Mund ta konvertoni modelin tuaj duke përdorur API-n Python ose mjetin e linjës së komandës . Shihni udhëzuesin e modelit Convert TF për udhëzime hap pas hapi se si ta ekzekutoni konvertuesin në modelin tuaj.
Zakonisht do ta konvertonit modelin tuaj për mjedisin standard të ekzekutimit LiteRT ose mjedisin e ekzekutimit të shërbimeve Google Play për LiteRT (Beta). Disa raste përdorimi të avancuara kërkojnë personalizim të mjedisit të ekzekutimit të modelit, të cilat kërkojnë hapa shtesë në procesin e konvertimit. Shihni seksionin e mjedisit të avancuar të ekzekutimit në përmbledhjen e Android për më shumë udhëzime.
Konvertim i avancuar
Nëse hasni gabime gjatë ekzekutimit të konvertuesit në modelin tuaj, ka shumë të ngjarë që të keni një problem me pajtueshmërinë e operatorit. Jo të gjitha operacionet e TensorFlow mbështeten nga TensorFlow Lite. Mund t'i zgjidhni këto probleme duke rifaktorizuar modelin tuaj ose duke përdorur opsione të përparuara konvertimi që ju lejojnë të krijoni një model të modifikuar të formatit LiteRT dhe një mjedis të personalizuar të kohës së ekzekutimit për atë model.
- Shihni përmbledhjen e përputhshmërisë së modelit për më shumë informacion mbi konsideratat e përputhshmërisë së modelit TensorFlow dhe LiteRT.
- Temat në përmbledhjen e përputhshmërisë së modelit mbulojnë teknikat e avancuara për rifaktorimin e modelit tuaj, siç është udhëzuesi i Zgjedhjes së operatorëve .
- Për listën e plotë të operacioneve dhe kufizimeve shihni faqen e LiteRT Ops .
Hapat e ardhshëm
- Shihni udhëzuesin e konvertimit të modeleve TF për të filluar shpejt konvertimin e modelit tuaj.
- Shihni përmbledhjen e optimizimit për udhëzime se si të optimizoni modelin tuaj të konvertuar duke përdorur teknika si kuantifikimi pas trajnimit .
- Shihni përmbledhjen e Shtimit të meta të dhënave për të mësuar se si të shtoni meta të dhëna në modelet tuaja. Meta të dhënat u ofrojnë përdorimeve të tjera një përshkrim të modelit tuaj, si dhe informacione që mund të shfrytëzohen nga gjeneratorët e kodit.