3 июня 2020 г. мы внесли некоторые изменения в ML Kit для Firebase, чтобы лучше отличать API-интерфейсы на устройстве от API-интерфейсов в облаке. Текущий набор API теперь разделен на следующие два продукта:
Новый продукт, называемый просто ML Kit , который будет содержать все API-интерфейсы устройства.
Firebase Machine Learning , ориентированный на облачные API и развертывание пользовательских моделей.
Это изменение также облегчит интеграцию ML Kit в ваше приложение, если вам нужно только решение на устройстве. В этом документе объясняется, как перенести ваше приложение из Firebase ML Kit SDK в новый ML Kit SDK.
Что меняется?
Базовые API на устройстве
Следующие API перенесены в новый автономный пакет SDK ML Kit.
- Сканирование штрих-кода
- Распознавание лиц
- Маркировка изображений
- Обнаружение и отслеживание объектов
- Распознавание текста
- Идентификатор языка
- Умный ответ
- Переводить
- API вывода AutoML Vision Edge
Существующие базовые API на устройстве в ML Kit for Firebase SDK устарели и больше не будут получать обновления.
Если вы уже используете эти API в своем приложении, перейдите на новый SDK ML Kit, следуя руководству по миграции ML Kit для Android и руководству по миграции ML Kit для iOS .
API пользовательских моделей
Для загрузки моделей, размещенных в Firebase, по-прежнему доступен загрузчик пользовательских моделей через Firebase ML SDK. SDK извлекает последнюю доступную модель и передает ее в отдельную среду выполнения TensorFlow Lite для вывода.
Существующий интерпретатор пользовательской модели в пакете ML Kit для Firebase SDK устарел и больше не будет получать обновления. Мы рекомендуем использовать среду выполнения TensorFlow Lite непосредственно для вывода. Альтернативно, если вы хотите использовать только пользовательские модели для маркировки изображений, а также API-интерфейсы обнаружения и отслеживания объектов, теперь вы можете использовать пользовательские модели в этих API напрямую в ML Kit.
Подробные инструкции см. в руководствах по миграции для Android и iOS .
Что не изменилось?
Облачные API и сервисы по-прежнему будут предлагаться в Firebase ML:
Облачные API-интерфейсы маркировки изображений, распознавания текста и распознавания ориентиров по-прежнему доступны в Firebase ML SDK.
Firebase ML также продолжает предлагать развертывание моделей.
Часто задаваемые вопросы
Почему это изменение?
Мы вносим это изменение, чтобы уточнить, какие решения предлагает продукт. Благодаря этому изменению новый пакет SDK ML Kit полностью ориентирован на машинное обучение на устройстве, где вся обработка данных происходит на устройстве и доступна разработчикам бесплатно. Облачные сервисы, которые раньше были частью Firebase ML Kit, остаются доступными через Firebase ML, и вы по-прежнему можете использовать их параллельно с API-интерфейсами ML Kit.
Что касается API на устройстве, новый SDK ML Kit упрощает интеграцию ML Kit в свои приложения. В дальнейшем вам просто нужно будет добавить зависимости в проект приложения, а затем начать использовать API. Нет необходимости настраивать проект Firebase только для использования API на устройстве.
Что произойдет с моими моделями, размещенными в Firebase?
Машинное обучение Firebase продолжит обслуживать ваши модели, как и раньше. Эта функциональность не меняется. Вот пара улучшений:
Теперь вы можете развертывать свои модели в Firebase программным способом с помощью Python или Node SDK .
Теперь вы можете использовать Firebase ML SDK в сочетании со средой выполнения TensorFlow Lite. Firebase SDK загружает модель на устройство, а среда выполнения TensorFlow Lite выполняет вывод. Это позволяет вам легко выбрать предпочитаемую версию среды выполнения, включая пользовательскую сборку.
Какие преимущества я получу от перехода на новый SDK ML Kit?
Переход на новый SDK обеспечит вашим приложениям преимущества новейших исправлений ошибок и улучшений API на устройстве. Например, вот пара изменений в первом выпуске:
Теперь вы можете использовать новую пользовательскую маркировку изображений и пользовательские API-интерфейсы обнаружения и отслеживания объектов , чтобы легко интегрировать пользовательские модели классификации изображений в свои приложения и создавать интерактивный пользовательский интерфейс в реальном времени.
Поддержка жизненного цикла Android Jetpack добавлена во все API. Теперь вы можете использовать
addObserver
для автоматического управления запуском и отключением API-интерфейсов ML Kit, когда приложение поворачивает или закрывает экран пользователем/системой. Это упрощает интеграцию с CameraX.
Полный список последних изменений можно найти в примечаниях к выпуску ML Kit SDK .
Сегодня я использую ML Kit для Firebase. Когда мне нужно будет перейти на него?
Это зависит от того, какой комплект ML Kit для API Firebase вы сейчас используете в своем приложении.
Базовые API-интерфейсы на устройстве в ML Kit for Firebase SDK будут продолжать работать в обозримом будущем. Однако, отложив переход на новый SDK ML Kit, вы не сможете воспользоваться новыми функциями и обновлениями. Кроме того, после обновления других компонентов вашего приложения возникает риск возникновения конфликтов зависимостей. Это может произойти, если некоторые из ваших других зависимостей (прямых или косвенных) новее, чем те, которые ожидались старым комплектом ML для Firebase SDK. Примерами библиотек, для которых это может произойти, являются OkHttp и Firebase-common.
Если вы используете Cloud API через ML Kit for Firebase SDK, никаких изменений на данный момент не требуется.
Если вы используете развертывание пользовательской модели , мы рекомендуем вам обновиться до последней версии, которая позволяет выполнять выводы непосредственно в среде выполнения TensorFlow Lite.