LiteRT, modelleri Android'e entegre etmek için çeşitli araçlar sunar. Bu sayfada, ve Cotlin, Java ve C++ programlarının yanı sıra Android Studio'ya gidin.
Kotlin ve Java ile geliştirme araçları
Aşağıdaki bölümlerde, Google Etiket Yöneticisi'nde kullanılan LiteRT kotlin ve Java dilleri.
LiteRT kitaplığı
Şu adreste barındırılan AAR'yi ekleyerek Android uygulamanızdaki LiteRT kitaplığını kullanın: MavenCentral nasıl kullanacağınızı göstereceğim.
Bunu build.gradle
bağımlılıklarınızda aşağıdaki şekilde belirtebilirsiniz:
dependencies {
...
implementation 'com.google.ai.edge.litert:+'
}
repositories {
...
google()
}
Gecelik anlık görüntüler kullanıyorsanız Sonatype anlık görüntüsünü eklediğinizden emin olun. repository'yi projenize ekleyebilirsiniz.
Bu AAR, tüm Android cihazları için ABI'ler. Reklam öğesinin boyutunu yalnızca desteklemeniz gereken ABI'leri ekleyerek uygulamanızın ikili programını oluşturun.
Belirli bir donanım hedeflemiyorsanız x86
, x86_64
ve
ve arm32
ABI'ler kullanılır. Bunu aşağıdaki Gradle ile yapılandırabilirsiniz:
yapılandırma. Özellikle yalnızca armeabi-v7a
ve arm64-v8a
, ve
çoğu modern Android cihazı kapsamalıdır.
android {
defaultConfig {
ndk {
abiFilters 'armeabi-v7a', 'arm64-v8a'
}
}
}
abiFilters
hakkında daha fazla bilgi edinmek için Android'e bakın
Android NDK'daki ABI'ler
belgelerinden faydalanabilirsiniz.
LiteRT Destek Kitaplığı
LiteRT Android Destek Kitaplığı, modelleri entegre etmeyi kolaylaştırır uygulamanıza ekleyin. Ham girdinin dönüştürülmesine yardımcı olan üst düzey API'ler sunar. ve modelin gerekli kıldığı bir biçime dönüştürmeyi ve modelin çıktısını gereken ortak metin miktarını azaltır.
Giriş ve çıkışlar için resim ve resim gibi yaygın veri biçimlerini destekler. dizi'dir. Ayrıca, kalite standartları gibi görevleri gerçekleştiren yeniden boyutlandırma ve kırpma gibi işlemler için kullanılır.
LiteRT'i ekleyerek Android uygulamanızda Destek Kitaplığı'nı kullanma Şu adreste barındırılan Destek Kitaplığı AAR'si: MavenCentral.
Bunu build.gradle
bağımlılıklarınızda aşağıdaki şekilde belirtebilirsiniz:
dependencies {
implementation 'com.google.ai.edge.litert:litert-support:+'
}
Gecelik anlık görüntüler kullanıyorsanız Sonatype anlık görüntüsünü eklediğinizden emin olun. repository'yi projenize ekleyebilirsiniz.
Nasıl başlayacağınıza ilişkin talimatlar için LiteRT Android Desteği'ne bakın. Kitaplık.
Android Studio'yu kullanma
Yukarıda açıklanan geliştirme kitaplıklarına ek olarak Android Studio da aşağıda açıklandığı gibi LiteRT modellerinin entegrasyonu için destek sağlar.
Android Studio ML Model Bağlama
Android Studio 4.1 ve sonraki sürümlerindeki ML Model Bağlama özelliği şunları yapmanıza olanak tanır:
.tflite
model dosyasını mevcut Android uygulamanıza aktarıp
arayüz sınıflarını kullanarak kodunuzu bir modelle entegre etmenizi kolaylaştırır.
LiteRT modelini içe aktarmak için:
LiteRT modelini kullanmak istediğiniz modülü sağ tıklayın veya Dosya > Yeni > Diğer > LiteRT Modeli.
LiteRT dosyanızın konumunu seçin. Aracın ML Modeli bağlama ile modülün bağımlılığını yapılandırır ve otomatik olarak Android modülünüzün
build.gradle
dosyasına gerekli tüm bağımlılıkları ekler.İçe aktarma işlemini başlatmak için
Finish
(Tamam) seçeneğini tıklayın. İçe aktarma işlemi tamamlandığında araç, giriş ve çıkışı da dahil olmak üzere modeli açıklayan bir ekran gösteriyor tensörler.Modeli kullanmaya başlamak için Kotlin veya Java'yı seçin, kodu kopyalayıp buraya yapıştırın Örnek Kod bölümündeki
TensorFlow'u çift tıklayarak model bilgileri ekranına dönebilirsiniz
Android Studio'da ml
dizinindeki basit model. Daha fazla bilgi için
Bunun için Android Studio'nun Modle Binding özelliğini kullanın.
yayınlamak
notlar ekleyin.
Android Studio'da model bağlamayı kullanmaya genel bakış için şu kod örneğine bakın:
talimatları inceleyin.
C ve C++ ile derleme araçları
LiteRT için C ve C++ kitaplıkları genel olarak şu kullanıcılara yöneliktir: Android Yerel Geliştirme Kiti'ni (NDK) kullanan geliştiriciler. Uygulamanızı NDK ile oluşturursanız LiteRT'i C++ üzerinden kullanmanın iki yolu vardır:
LiteRT C API'si
NDK kullanan geliştiriciler için bu API'nin kullanılması önerilen yaklaşımdır.
Şu adreste barındırılan LiteRT AAR'yi indirin:
MavenCentral
dosyasını tensorflow-lite-*.zip
olarak yeniden adlandırın ve sıkıştırılmış dosyayı açın. Dönüşüme dahil etmek için
headers/tensorflow/lite/
ve headers/tensorflow/lite/c/
içindeki başlık dosyaları
ve ilgili libtensorflowlite_jni.so
dinamik kitaplığını
NDK projenizde jni/
klasörü.
c_api.h
başlık dosyası, LiteRT C'nin kullanımıyla ilgili temel dokümanları içerir
API'ye gidin.
LiteRT C++ API'si
LiteRT'yi C++ API aracılığıyla kullanmak istiyorsanız kitaplıklar:
32bit armeabi-v7a:
bazel build -c opt --config=android_arm //tensorflow/lite:libtensorflowlite.so
64bit arm64-v8a:
bazel build -c opt --config=android_arm64 //tensorflow/lite:libtensorflowlite.so
Şu anda, gerekli tüm başlık dosyalarını almanın kolay bir yolu yoktur.
Bu nedenle, TensorFlow'dan tensorflow/lite/
içindeki tüm başlık dosyalarını dahil etmeniz gerekir.
depodur. Ayrıca,
FlatBuffers ve
Abseil.