AIDevOpsML

Сервинг модели Grounding DINO с помощью BentoML

·MAGMA

Что такое Grounding DINO?

Grounding DINO — это модель компьютерного зрения, предназначенная для обнаружения объектов на изображениях. Она способна эффективно выделять объекты на основе текстовых запросов.

Зачем нужен сервинг моделей?

Запуск ML-моделей в production требует решения ряда задач:

  • Хранение и версионирование моделей;
  • Мониторинг потребления ресурсов и производительности;
  • Поддержка различных сценариев использования (пакетная обработка, стриминг).

BentoML упрощает эти задачи, предоставляя удобный интерфейс для деплоя и мониторинга моделей.

Как развернуть Grounding DINO с BentoML?

Шаг 1: Установка зависимостей

Для начала установите необходимые библиотеки:

pip install bentoml torch transformers

Шаг 2: Загрузка и подготовка модели

Используйте следующий код для загрузки и подготовки модели Grounding DINO:

import torch
from transformers import AutoModelForImageClassification, AutoFeatureExtractor

model = AutoModelForImageClassification.from_pretrained("facebook/deit-base-distilled-patch16-384")
extractor = AutoFeatureExtractor.from_pretrained("facebook/deit-base-distilled-patch16-384")

Шаг 3: Создание сервиса с BentoML

Создайте сервис с использованием BentoML:

import bentoml
bentoml.pytorch.save_model(
    "grounding_dino",
    model,
    signatures={"__call__": {"batchable": True}}
)

Шаг 4: Запуск сервера

Теперь можно запустить сервер для обслуживания модели:

bentoml serve grounding_dino:latest --production

Заключение

Таким образом, мы успешно развернули модель Grounding DINO с помощью BentoML. Этот подход позволяет легко масштабировать и мониторить работу модели в production-среде.

Вернуться к блогу
Как развернуть модель Grounding DINO с BentoML? — MAGMA