遷移指南

2020 年 6 月 3 日,我們針對 Firebase 適用的 ML Kit 做出了部分調整,以便提高裝置端 API 與雲端式 API 的區別。目前的 API 組合現已分成下列兩項產品:

這項變更也能讓您在只需要裝置端解決方案時,更輕鬆地整合 ML Kit 與應用程式。本文說明如何將應用程式從 Firebase ML Kit SDK 遷移至新的 ML Kit SDK。

異動內容

裝置端基礎 API

下列 API 已移至新的獨立 ML Kit SDK。

  • 條碼掃描
  • 臉部偵測
  • 圖片標籤
  • 物件偵測和追蹤
  • 文字辨識
  • 語言 ID
  • 智慧回覆
  • 翻譯
  • AutoML Vision Edge 推論 API

ML Kit for Firebase SDK 中現有的裝置端基礎 API 已淘汰,因此不會再收到更新。

如果您目前在應用程式中使用這些 API,請按照 Android 的 ML Kit 遷移指南iOS 適用的 ML Kit 遷移指南進行遷移。

自訂模型 API

如要下載 Firebase 託管的模型,系統會繼續透過 Firebase ML SDK 提供自訂模型下載工具。SDK 會擷取最新可用的模型,並傳遞至個別的 TensorFlow Lite 執行階段進行推論。

ML Kit for Firebase SDK 中現有的自訂模型解譯器已淘汰,因此不會再收到更新。建議您直接使用 TensorFlow Lite 執行階段進行推論。或者,如果您只想使用自訂模型處理圖片標籤、物件偵測及追蹤 API,您現在可以直接在 ML Kit 的這些 API 中使用自訂模型

如需詳細操作說明,請參閱 AndroidiOS 版遷移指南。

維持不變的內容

我們會繼續透過 Firebase ML 提供雲端式 API 和服務:

  • Firebase ML SDK 仍可使用雲端圖片標籤、文字辨識和地標辨識 API。

  • Firebase ML 也會持續提供模型部署

常見問題

為什麼要實施這項異動?

我們做出這項異動是為了釐清產品提供的解決方案。 進行這項變更後,新的 ML Kit SDK 會完全聚焦在裝置端的機器學習中,所有資料處理都在裝置上進行,開發人員可免費使用。原先屬於 Firebase ML Kit 的雲端服務仍可透過 Firebase ML 提供,而您仍然可以搭配 ML Kit API 使用這些服務。

針對裝置端 API,新的 ML Kit SDK 可讓開發人員更輕鬆地將 ML Kit 整合至應用程式。日後只需在應用程式的專案中加入依附元件,然後開始使用 API 即可。您不需要設定只使用裝置端 API 的 Firebase 專案。

由 Firebase 代管的模型會受到什麼影響?

Firebase 機器學習會繼續照常提供模型。這項功能並未改變。以下提供幾個改善項目:

  • 您現在可以使用 Python 或 Node SDK,以程式輔助方式將模型部署至 Firebase。

  • 您現在可以將 Firebase ML SDK 與 TensorFlow Lite 執行階段搭配使用。Firebase SDK 會將模型下載到裝置,而 TensorFlow Lite 執行階段會執行推論。這可讓您輕鬆選擇偏好的執行階段版本,包括自訂版本。

遷移至新的 ML Kit SDK 可帶來哪些好處?

遷移至新的 SDK 可確保應用程式享有裝置端 API 的最新錯誤修正和改善項目。舉例來說,以下是第一個版本中的變更內容:

  • 您現在可以使用新的自訂圖片標籤自訂物件偵測和追蹤 API,輕鬆在應用程式中整合自訂圖片分類模型,並建構即時互動式使用者體驗。

  • 所有 API 已新增 Android Jetpack 生命週期支援。您現在可以使用 addObserver,在應用程式/系統經過使用者/系統旋轉或關閉時,自動管理 ML Kit API 的啟動和拆解作業。這可讓您更輕鬆地與 CameraX 整合。

如需最新異動的完整清單,請參閱 ML Kit SDK 版本資訊

我今天正在使用 Firebase 的 ML Kit,需要何時進行遷移?

(這取決於您目前在應用程式中使用何種 Firebase API 專用 ML Kit)。

  • Firebase SDK for Firebase SDK 中的裝置端基礎 API 會繼續運作,預計的未來也將繼續運作。但是,如果延後切換至新的 ML Kit SDK,您就無法享有新功能和更新帶來的好處。此外,一旦更新應用程式中的其他元件,可能會發生依附元件衝突的風險。當您的某些其他依附元件 (直接或間接) 比舊版 ML Kit for Firebase SDK 預期的依附元件還新時,就可能會發生這種情況。以下列舉一些可能發生此問題的程式庫:OkHttp 和 firebase-common。

  • 如果您是透過 Firebase SDK for Firebase SDK 使用 Cloud API,目前不需要做任何變更。

  • 如果您使用的是自訂模型部署,建議升級至最新版本,這樣就能直接在 TensorFlow Lite 執行階段中執行推論。