Android'de ML Kiti model yükleme yolları

Tüm ML Kit özellikleri, varsayılan olarak Google tarafından eğitilmiş makine öğrenimi modellerini (temel modeller olarak bilinir) kullanır. Bu kılavuz yalnızca temel modeller için geçerlidir. Özel modellerle ilgili rehberlik için buraya bakın.

ML Kit API'lerindeki modeller üç şekilde yüklenebilir:

  1. Paketlenmemiş: Modeller, Google Play Hizmetleri aracılığıyla indirilir ve yönetilir.
  2. Paketlenmiş: Modeller, derleme sırasında uygulamanıza statik olarak bağlanır.
  3. Dinamik olarak indirilir: Modeller isteğe bağlı olarak indirilir.

Her API için desteklenen yükleme yolları

Aşağıdaki tabloda, her ML Kit özelliği tarafından hangi model yükleme yollarının desteklendiği gösterilmektedir:

Paket dışı Paket Dinamik olarak indirilenler
Metin tanıma v2
Yüz algılama
Yüz ağı algılama
Poz algılama
Selfie segmentasyonu
Barkod tarama
Resim etiketleme
Nesne algılama ve izleme
Dijital mürekkep tanıma
Belge tarayıcı
Özne segmentasyonu
Google kod tarayıcı
Dil tanımlama
Translation
Akıllı Yanıt
Varlık Ayıklama

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

Yükleme seçenekleri arasındaki temel farklar

Paket dışı Paketlenmiş Dinamik olarak indirilenler
Modeller nerede depolanır? Google Play Hizmetleri'nde bulunur ve bu uygulamanın kullandığı depolama alanına dahil edilmez. Yüklemeden 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ıda bulunur. 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 uygulamayı güncellemeniz gerekir Modeli güncellemek için uygulamayı güncellemeniz gerekir
Modeller ne zaman indirilir? Modeller kullanılmadan önce indirilmelidir Uygulama yüklendiğinde tüm modeller ve özellikler dahil edilir. Bu nedenle, hemen kullanılabilir. Model indirme, güncelleme ve silme işlemleri RemoteModelManager API'si 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 kaldırılırsa modeli depolama alanından kaldırır. Uygulamanın yüklemesi kaldırıldığında modeller 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.

Paketlenmiş ve paketi açılmış ürünler arasında seçim yapma

Bir API hem paketlenmiş hem de paketlenmemiş yükleme seçeneklerini destekliyorsa:

  • Aşağıdakilere öncelik veriyorsanız paketlenmiş seçeneği kullanın:

    • Uygulama yüklendikten hemen sonra tüm özellik işlevlerini kullanma
    • Uygulama yüklendikten sonra ağ bağlantısı olmadan kullanılabilen özellikler
  • Aşağıdakilere öncelik veriyorsanız ayrı seçeneğini kullanın:

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

Modelleri indirme

Paketlenmemiş model seçeneğini kullanırken modellerin cihaza nasıl indirilmesini istediğinizi belirtebilirsiniz:

  • Uygulamanızın AndroidManifest.xml dosyasına bir bildirim ekleyerek yükleme sırasında model 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 nasıl yapılandırılacağını gösterir:

    <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 ModuleInstallClient API aracılığıyla açıkça indirme isteğinde bulunabilirsiniz.

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

Modelleri güncelleme

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

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

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

Bazı API'lerin dinamik olarak indirilen modeller sunmasının nedeni

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