Android'de ML Kiti model yükleme yolları

Tüm Makine Öğrenimi Kiti özellikleri, varsayılan olarak Google tarafından eğitilmiş makine öğrenimi modellerinden (temel modeller olarak bilinir) yararlanır. Bu kılavuz yalnızca temel modeller için geçerlidir. Özel modellerle ilgili yol gösterici bilgiler için buraya bakın.

ML Kit API'lerindeki modeller şu üç yöntemden biriyle yüklenebilir:

  1. Grup halinde olmayanlar: Modeller, Google Play Hizmetleri aracılığıyla indirilir ve yönetilir.
  2. Paket: Modeller, derleme sırasında statik olarak uygulamanıza bağlıdır.
  3. Dinamik olarak indirme: Modeller istek üzerine indirilir.

Her API için desteklenen yükleme yolları

Aşağıdaki tabloda, her bir ML Kiti özelliğinin hangi model yükleme yollarını desteklediği gösterilmektedir:

Grup halinde olmayanlar Paketlenmiş Dinamik olarak indirme
Metin tanıma v2
Yüz algılama
Yüz örgüsü algılama
Poz algılama
Selfie segmentasyonu
Barkod tarama
Görüntü etiketleme
Nesne algılama ve izleme
Dijital mürekkep tanıma
Belge tarayıcı
Konu segmentasyonu
Google kod tarayıcı
Dil tanımlama
Translation
Akıllı Yanıt
Varlık Ayıklama

API'ye özel kılavuzlar, belirli bir API için hangi yükleme seçeneklerinin kullanılabileceğini gösterir.

Yükleme seçenekleri arasındaki temel farklar

Grup halinde olmayan Paket Dinamik olarak indirilir
Modeller nerede depolanır? Google Play Hizmetleri'nde yer alır ve bu uygulama tarafından kullanılan depolama alanına dahil edilmez Yükleme işleminden sonra uygulamaya özel depolama alanına kaydedilir Model indirildikten sonra uygulamaya özel depolama alanına kaydedilir
Model boyutu, uygulama boyutunu nasıl etkiler? Uygulama boyutuna katkıda bulunmaz Uygulama boyutuna doğrudan katkı sağlar Uygulama boyutuna katkıda bulunmaz ancak uygulamaya özel depolama alanını artırır
Modeller ne zaman güncellenir? Daha yeni bir sürüm yayınlandığında otomatik olarak güncellenir Modeli güncellemek için uygulamanın güncellenmesi gerekiyor Modeli güncellemek için uygulamanın güncellenmesi gerekiyor
Modeller ne zaman indirilir? Modeller kullanılmadan önce indirilmelidir Uygulama yüklenirken tüm modeller ve özellikler dahil edildiği için hemen kullanılabilir Model indirme, güncelleme ve silme işlemleri, RemoteModelManager API kullanılarak manuel olarak yönetilmelidir
Modeller cihazdan ne zaman kaldırılır? Google Play Hizmetleri, yalnızca modele bağlı tüm uygulamaların yüklemesi kaldırılmışsa modeli depolama alanından kaldırır Modeller, uygulama kaldırıldığında uygulamaya özel depolama alanından kaldırılır İndirilen modeller, uygulama kaldırıldığında uygulamaya özel depolama alanından kaldırılır

Gruplandırılmış ve gruplanmamış seçenekleri arasında nasıl seçim yapılır?

Bir API hem paket halinde sunulan hem de paket halinde olmayan yükleme seçeneklerini destekliyorsa:

  • Aşağıdaki koşullara öncelik veriyorsanız paket halinde sunulan seçeneği kullanın:

    • Uygulama yüklendikten hemen sonra özellik işlevini tamamlayın
    • Uygulama yüklendikten sonra ağ bağlantısı olmadan kullanılabilen özellik
  • Aşağıdaki koşullara öncelik veriyorsanız grup halinde olmayan seçeneğini kullanın:

    • Daha küçük uygulama boyutu
    • Google Play Hizmetleri tarafından yapılan otomatik model güncellemeleri

Modeller nasıl indirilir?

Gruplandırılmamış model seçeneğini kullanırken modellerin cihaza nasıl indirileceğini belirtebilirsiniz:

  • Uygulamanızın AndroidManifest.xml dosyasına bir bildirim ekleyerek yükleme zamanı modeli indirmelerini etkinleştirebilirsiniz. Örneğin, aşağıdaki kod snippet'i, uygulamanız Play Store'dan yüklendikten sonra Barkod Tarama modelini otomatik olarak indirecek şekilde uygulamanızı nasıl yapılandıracağınızı göstermektedir:

    <application ...>
          ...
          <meta-data
              android:name="com.google.mlkit.vision.DEPENDENCIES"
              android:value="barcode" >
          <!-- To use multiple models: android:value="barcode,model2,model3" -->
    </application>
    
  • Google Play Hizmetleri ModuleLoadClient API üzerinden açık bir şekilde indirme isteğinde bulunabilirsiniz.

  • Yükleme zamanı modelinin indirilmesini etkinleştirmezseniz veya açık indirme isteğinde bulunmazsanız model, özelliği ilk çalıştırdığınızda indirilir. İndirme işlemi tamamlanana kadar çıkarım istekleri başarısız olur.

Modelleri güncelleme

Gruplandırılmış modeli veya dinamik olarak indirilen modeller seçeneğini kullanırken modellerinizi güncellemek için:

  1. En yeni ML Kit özellik istemci kitaplığını kullanmak için uygulamanızın gradle dosyasını güncelleyin.

    dependencies {
      implementation 'com.google.mlkit:barcode-scanning: 17.2.0' // The latest version number of the API
    }
    
  2. Uygulamanızı yeniden oluşturun.

Bazı API'ler neden dinamik olarak indirilen modeller sunuyor?

Bazı ML Kit API'lerinde paketlenebilecek çok fazla model seçeneği var. Örneğin, Dijital mürekkep tanıma 300'den fazla dili destekler ve yükleme sırasında her dili özelliğin içine koymak her zaman gerekli değildir. Bu amaçla, modellerin kurulumdan sonra isteğe bağlı olarak indirildiği üçüncü yükleme seçeneğini sunuyoruz. Şu anda bu seçenek yalnızca Dijital mürekkep tanıma, Çeviri ve Varlık çıkarma özelliklerine sahiptir.