Добро пожаловать в заключительную часть нашей серии руководств по MLOps! В этой части мы развернем нашу обученную модель RandomForestClassifier в качестве конечной точки API с помощью Flask. К концу этого руководства у вас будет полностью функционирующий API, который сможет делать прогнозы на основе обученной модели. Давайте погрузимся и завершим наше путешествие MLOps!

Оглавление:

  1. Введение в MLOps (Часть-1)
  2. Настройка окружения (Часть-1)
  3. Изучение набора данных IRIS (Часть-1)
  4. Построение и обучение модели RandomForestClassifier (Часть-2)
  5. Настройка сервера MLflow (Часть-3)
  6. Развертывание модели в качестве конечной точки API с помощью Flask (часть 4)
  7. Заключение и следующие шаги

6. Развертывание модели в качестве конечной точки API с помощью Flask (часть 4)

В этой заключительной части нашей серии руководств мы развернем нашу обученную модель RandomForestClassifier в качестве конечной точки API, используя Flask, облегченную веб-инфраструктуру для Python. Давайте начнем!

6.1. Установить колбу

Во-первых, нам нужно установить Flask. Откройте терминал или командную строку и выполните следующую команду:

pip install flask

6.2. Создайте приложение Flask

Создайте новый файл Python с именем api.py и откройте его в текстовом редакторе. Добавьте следующий код, чтобы создать приложение Flask и определить конечную точку API:

Этот код создает приложение Flask, определяет маршрут /predict, который принимает полезные данные JSON, содержащие данные для прогнозирования, загружает обученную модель с помощью MLflow, делает прогнозы и возвращает прогнозы в виде ответа JSON.

6.3. Запустите приложение Flask

Откройте терминал или командную строку, перейдите в каталог проекта и выполните следующую команду, чтобы запустить приложение Flask:

python api.py

6.4. Протестируйте конечную точку API

Запустив приложение Flask, вы можете протестировать конечную точку API с помощью таких инструментов, как cURL или Postman. Отправьте запрос POST на http://localhost:5002/predict с полезной нагрузкой JSON, содержащей данные для прогнозирования. Например:

{
  "data": [[5.1, 3.5, 1.4, 0.2], [6.2, 2.9, 4.3, 1.3], [6.7, 3.1, 5.6, 2.4]]
}

API ответит предсказанными метками для входных данных следующим образом:

[ 0, 1, 2 ]

6.5. Поздравляем!

Поздравляем! Вы успешно развернули свою модель RandomForestClassifier в качестве конечной точки API с помощью Flask. Теперь вы можете делать прогнозы, отправляя запросы в свой API.

Проверьте исходный код в репозитории GitHub. Вы также узнаете, как мы можем разместить нашу модель в веб-приложении на основе Streamlit. Ниже приведен скриншот приложения:

Заключение

В этой заключительной части серии руководств мы развернули нашу обученную модель RandomForestClassifier в качестве конечной точки API с помощью Flask. Мы объединили возможности MLflow для отслеживания моделей и Flask для создания API. На этом наше путешествие в MLOps завершено, от создания и обучения модели до ее развертывания в виде полнофункционального API.

Вы получили практический опыт работы с методами MLOps и теперь готовы исследовать и применять эти концепции в своих собственных проектах машинного обучения. Не забывайте продолжать обучение и быть в курсе последних событий в области MLOps.

Спасибо, что присоединились ко мне в этом захватывающем путешествии MLOps. Удачного кодирования, и пусть ваши модели машинного обучения добьются больших успехов!