所有 ML Kit 功能都會使用 Google 訓練的機器學習模型 (也就是 基礎模型)。本指南僅適用於基本模型。詳情請參閱這裡 。
您可以透過下列任一方式安裝 ML Kit API 中的模型:
- 未分割:模型會透過 Google Play 服務下載及管理。
- 已組合:模型會在建構期間與應用程式建立靜態連結。
- 動態下載:系統會視需要下載模型。
各 API 支援的安裝路徑
下表列出各 ML Kit 功能支援的模型安裝路徑:
未綁定 | 套裝組合 | 動態下載 | |
文字辨識 v2 | ✅ | ✅ | |
臉部偵測 | ✅ | ✅ | |
臉部網格偵測 | ✅ | ||
姿勢偵測 | ✅ | ||
自拍區隔 | ✅ | ||
條碼掃描 | ✅ | ✅ | |
為圖片加上標籤 | ✅ | ✅ | |
偵測及追蹤物件 | ✅ | ||
數位墨水辨識 | ✅ | ||
文件掃描器 | ✅ | ||
主體區隔 | ✅ | ||
Google 圖碼掃描器 | ✅ | ||
語言識別 | ✅ | ✅ | |
翻譯 | ✅ | ||
智慧回覆 | ✅ | ✅ | |
實體擷取 | ✅ |
API 專屬指南會針對指定的 也能使用 Google Cloud CLI 或 Compute Engine API
安裝選項的主要差異
未綁定 | 已組合 | 動態下載 | |
模型會儲存在哪裡? | 位於 Google Play 服務中,不會計入這個應用程式使用的儲存空間 | 已儲存在應用程式專屬儲存空間中 安裝完成後 | 已儲存在應用程式專屬儲存空間中 模型下載後 |
模型大小如何影響應用程式大小? | 不會增加應用程式大小 | 直接影響應用程式大小 | 不會計入應用程式大小,但會增加應用程式專屬儲存空間 |
模型何時會更新? | 在較新版本發布時自動更新 | 需要更新應用程式以更新模型 | 需要更新應用程式以更新模型 |
模型何時會下載? | 模型必須先下載才能使用 | 安裝應用程式後可使用所有型號和功能,因此可立即使用 | 您必須手動管理模型下載、更新及刪除作業,方法是使用 RemoteModelManager API (應用程式介面) |
何時會從裝置中移除模型? | 只有在所有依賴該型號的應用程式都已解除安裝後,Google Play 服務才會從儲存空間中移除該型號。 | 在解除安裝應用程式時,系統會從應用程式專屬儲存空間移除模型 | 下載的模型會從應用程式專屬儲存空間中移除 解除安裝應用程式時 |
如何選擇套裝組合和非套裝組合
如果 API 同時支援內含和不內含安裝選項:
如為優先順序,請使用套裝組合選項:
- 在應用程式安裝完成後立即提供完整功能
- 應用程式安裝後的功能沒有網路連線
如果您排定優先順序,請使用未分類郵件選項:
- 縮減應用程式大小
- Google Play 服務的自動模型更新功能
如何下載模型
使用未組合的模型選項時,您可以指定模型的 下載到裝置:
如要啟用安裝期間模型下載功能,請在 應用程式的
AndroidManifest.xml
檔案。例如,下方的程式碼片段 示範如何將應用程式設定為自動下載條碼 從 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,要求明確下載。
如果您未啟用安裝時的模型下載功能,或要求明確下載,系統會在您首次執行這項功能時下載模型。下載完成前,推論要求會失敗。
如何更新模型
如要使用內含模型或動態下載模型選項時更新模型,請按照下列步驟操作:
更新應用程式的 Gradle 檔案,以便使用最新的 ML Kit 功能用戶端程式庫。
dependencies { implementation 'com.google.mlkit:barcode-scanning: 17.3.0' // The latest version number of the API }
重新建構應用程式。
為何某些 API 提供動態下載的模型
部分 ML Kit API 的模型選項過多。舉例來說,數位墨水辨識功能支援 300 多種語言,但在安裝期間,不一定需要將所有語言都納入該功能。為此,我們提供第三個安裝選項, 安裝後隨選下載目前只有數位墨水辨識、翻譯和實體擷取有這個選項。