Что вам больше всего нравится в работе Data Scientist? Очевидно, что создание моделей данных и их точная настройка для получения наиболее оптимальных результатов, демонстрирующих ценность для бизнеса.
Но хотя бы раз подумайте на более существенном уровне. Что хорошего в вашей модели, если вы никогда ее не развернете.
Находясь в группе исследований и разработок, вам не обязательно думать о развертывании модели на сервере. Большую часть времени вы играете со своими блокнотами jupyter, создаете модель, настраиваете ее для существующих данных, сохраняете модель на диск и переходите к следующей задаче.
Но могут возникнуть ситуации, когда ваш клиент требует, чтобы ваша модель была развернута в его сложной инфраструктуре. Более того, если вы пытаетесь разработать собственный продукт / приложение, вам необходимы знания и ноу-хау, чтобы использовать обученные модели и, желательно, на том языке, который вам удобен.
Сначала это кажется немного сложным, но создание Flask API для вашей обученной модели машинного обучения — это легкая прогулка.
Flask — это популярный веб-фреймворк для Python, то есть сторонняя библиотека Python, используемая для разработки веб-приложений. Flask написан на Python.
Так что же на самом деле представляет собой микро-веб-фреймворк?
Микро-веб-фреймворк используется для разработки веб-приложений с минимальными функциями в отличие от полноразмерных веб-фреймворков.
Подробнее о микрофреймворках: https://en.wikipedia.org/wiki/Microframework
Создание API
Для создания API для развертывания ваших моделей машинного обучения нам нужно создать 2 файла.
- server.py
- application.py
Мы создаем API на основе REST, поэтому данные будут обмениваться в формате JSON между клиентом и сервером.
Фреймворк Flask работает на сервере. Файл server.py будет содержать код для запуска сервера и загрузки модели.
Запустите указанный выше файл с помощью простой команды python: python app.py
Как только сервер будет запущен, он будет ждать запроса от пользователя / клиента. Пользователь отправит данные на сервер в формате JSON, для которого необходимы прогнозы модели.
application.py будет содержать код для отправки запроса прогнозов на сервер.
Сервер обработает запрос по приложению и вернет результаты, предсказанные моделью. Вы можете использовать результаты в соответствующем бизнес-сценарии использования.
Это самая простая архитектура взаимодействия клиент-сервер с использованием веб-фреймворка Flask. И клиент (application.py), и сервер (server.py) могут находиться на одном устройстве или на другом устройстве в соответствии с требованиями бизнеса.
ПРИМЕЧАНИЕ. Часть API — это только файл server.py. application.py — это просто утилита для тестирования созданного API. Если у вас есть знания об использовании среды разработки API Postman, вы можете пропустить файл application.py и напрямую протестировать свой API с помощью Postman и проверить результаты.
print («Python — мой любимый язык»)
Пожалуйста, выразите свою признательность, если вам понравилась статья. Поскольку я новичок в платформе Medium, я открыт для всех отзывов и предложений по улучшению контента.
Вы можете связаться со мной по адресу:
LinkedIn: https://www.linkedin.com/in/deepak-kushwaha818/
Github: https://github.com/KushwahaDK/