Наука о данных/развертывание
Вывод: БЕСПЛАТНОЕ развертывание крупных веб-приложений на облачных платформах
5 выводов из серии развертываний
В заключение к серии, в которой я бесплатно развернул контейнеры для наших моделей ML/DL на Heroku, теперь я разверну веб-приложение с 6 моделями глубокого обучения. Веб-приложение, которое будет помещено в контейнер и развернуто, называется Dr. Detect.
Во второй части я расскажу о некоторых выводах, связанных с моим опытом.
Ссылка на Github Dr Detect:
https://github.com/MSufiyanAG/dr_detect
Процедура развертывания веб-приложения аналогична описанной в предыдущей статье. В файле Dockerfile и файле Requirements.txt также нет разницы.
Ссылка на предыдущую статью:
https://medium.com/@MSufiyanGhori/step-by-step-guide-to-build-and-deploy-container-for-your-dl-model-for-free -используя-heroku-68fd74de8ff4
Поскольку шаги те же, я не буду обсуждать их снова.
Мой личный опыт в качестве ученика
В этой серии я развернул контейнеры для наших моделей ML/DL.
Я завершил развертывание моделей для этих статей за 12 дней. Но это был сценарий, когда я освоился с Docker и Heroku.
Прошло 7–8 месяцев с тех пор, как я начал использовать Docker. Мне потребовалось 18–20 дней, чтобы развернуть свое первое веб-приложение машинного обучения. Сначала я развернул несколько моделей машинного обучения, а затем перешел к моделям глубокого обучения.
Причины, по которым я использовал Docker:
- Сделать веб-приложения независимыми от инфраструктуры
- Развертывайте большие веб-приложения на уровне бесплатного пользования в качестве студента
Проблемы, с которыми я сталкивался, обычно были связаны с устареванием различных библиотек Python и их влиянием на зависимые библиотеки или код проекта.
Пример: Прекращение поддержки файлов CSS в Streamlit.
Мы не можем запустить образ Docker, созданный для развертывания на Heroku локально, потому что нам не удается запустить setup.sh, поэтому становится проблемой протестировать образ Docker перед развертыванием.
Решение состоит в том, чтобы собрать и запустить образ без .sh, и когда он заработает нормально, соберите и разверните его, включив в него файл .sh.
Используемый код можно найти в моем профиле Github.
Еда на вынос
- Хорошие навыки гугления выручат вас из любой ситуации.
- Официальная документация должна быть первым местом для получения подробной информации.
- Последовательность необходима для успеха в любой области; несколько неудач не могут быть причиной для того, чтобы вы прекратили попытки (я потратил (потратил впустую) более 100 ГБ интернет-данных до своего первого успешного развертывания).
- Если вы сосредоточены на том, чтобы быть совершенным, то вы попали в ловушку «все или ничего» (ошибку, которую я тоже совершил).
- Обычно хорошо иметь одну новую виртуальную среду для каждого нового проекта на основе Python.
Дорога вперед
Как только мы получим практическую практику развертывания контейнеров на Heroku, мы сможем перейти к другим облачным платформам, таким как Azure. Azure предоставляет студентам кредиты на сумму 100 долларов США.
Как использовать Azure для БЕСПЛАТНОГО развертывания веб-приложения?
Это может быть заголовком для моей следующей статьи.
Оставайтесь с нами
Удачного обучения
Вы можете связаться со мной в LinkedIn:
https://www.linkedin.com/in/sufiyan-abdullah-ghori/