ML Kit のすべての機能は、Google のトレーニング済み ML モデル( ベースモデルなど)をデフォルトで使用しています。このガイドは、ベースモデルにのみ適用されます。こちらをご覧ください をご覧ください。
ML Kit API のモデルは、次の 3 つの方法のいずれかでインストールできます。
- バンドルなし: モデルは Google Play 開発者サービスを介してダウンロード、管理されます。
- バンドル: モデルは、ビルド時にアプリに静的にリンクされます。
- 動的にダウンロード: モデルをオンデマンドでダウンロードします。
各 API でサポートされているインストール パス
以下の表は、各 ML でサポートされているモデルのインストール パスを示しています。 キットの機能:
バンドルなし | バンドル | 動的にダウンロード | |
テキスト認識 v2 | ✅ | ✅ | |
顔検出 | ✅ | ✅ | |
顔メッシュ検出 | ✅ | ||
姿勢検出 | ✅ | ||
自撮り写真の分割 | ✅ | ||
バーコード スキャン | ✅ | ✅ | |
画像のラベル付け | ✅ | ✅ | |
オブジェクトの検出とトラッキング | ✅ | ||
デジタルインク認識 | ✅ | ||
ドキュメント スキャナ | ✅ | ||
被写体の分類 | ✅ | ||
Google コードスキャナ | ✅ | ||
言語識別 | ✅ | ✅ | |
翻訳 | ✅ | ||
スマート リプライ | ✅ | ✅ | |
エンティティ抽出 | ✅ |
API 固有のガイドでは、特定の環境で使用可能なインストール オプションを API
インストール オプションの主な違い
バンドルなし | バンドル | 動的にダウンロード | |
モデルはどこに保存されますか? | Google Play 開発者サービス内にあり、ストレージにはカウントされません このアプリで使用 | アプリ固有のストレージに保存される インストール後 | アプリ固有のストレージに保存される モデルのダウンロード後 |
モデルサイズがアプリのサイズに与える影響 | アプリのサイズに影響しない | アプリのサイズに直接影響する | アプリのサイズには影響しないが、アプリの アプリ固有のストレージ |
モデルはいつ更新されますか? | 新しいバージョンがリリースされると自動的に更新されます | モデルを更新するにはアプリを更新する必要があります | モデルを更新するにはアプリを更新する必要があります |
モデルはいつダウンロードされますか? | モデルの使用前にダウンロードする必要がある | アプリのインストール時にすべてのモデルと機能が含まれるため、すぐに使用できる | モデルのダウンロード、更新、削除は、 RemoteModelManager API |
モデルはいつデバイスから削除されますか? | Google Play 開発者サービスは、すべてのアプリが アンインストールすると | モデルはアプリ固有のストレージから削除されます。 アプリがアンインストールされたとき | ダウンロードしたモデルはアプリ固有のストレージから削除されます。 アプリがアンインストールされたとき |
バンドル版とバンドルなしの選択方法
API がバンドル版と非バンドル版の両方のインストール オプションをサポートしている場合:
以下を優先する場合はバンドル オプションを使用してください。
- アプリのインストール後すぐにすべての機能を利用できるようにする
- アプリのインストール後にネットワーク接続を必要としない機能
以下を優先する場合は、バンドルされていないオプションを使用してください。
- アプリサイズの削減
- Google Play 開発者サービスによるモデルの自動更新
モデルのダウンロード方法
バンドルされていないモデル オプションを使用する場合は、モデルをどのように利用できるかを指定できます。 ダウンロードされます。
インストール時のモデルのダウンロードを有効にするには、に宣言を追加します。 アプリの
AndroidManifest.xml
ファイルに追加します。たとえば、以下のコード スニペットでは、 バーコードを自動的にダウンロードするようアプリを設定する方法を示します Google Play ストアからアプリをインストールした後のモデルのスキャン:<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 開発者サービスを使用して明示的なダウンロードをリクエストできます ModuleInstallClient API。
インストール時のモデルのダウンロードを有効にしない場合、または明示的なリクエストの場合 特徴の初回実行時にモデルがダウンロードされます。 ダウンロードが完了するまで、推論リクエストは失敗します。
モデルを更新する方法
バンドルされたモデルまたは動的にダウンロードされたモデルを使用している場合にモデルを更新するには、 モデル オプション:
最新の ML Kit 機能クライアントを使用するようにアプリの Gradle ファイルを更新する ライブラリです。
dependencies { implementation 'com.google.mlkit:barcode-scanning: 17.3.0' // The latest version number of the API }
アプリを再ビルドします。
一部の API で動的にダウンロードされたモデルが提供される理由
一部の ML Kit API では、バンドルするモデル オプションが多すぎます。例: デジタルインク 認識は、300 以上 インストール時にすべての言語を機能に含める必要があります。 そのために用意されている 3 つ目のインストールオプションは ダウンロードされます。現在のところ、デジタルインク 認識、 変換とエンティティ 抽出は、このオプションがあります。