Введение
В мире науки о данных разработка надежных приложений, которые могут эффективно обрабатывать и обслуживать прогнозы, имеет решающее значение.
FASTAPI, современная и высокопроизводительная веб-инфраструктура, представляет собой идеальное решение для развертывания приложений обработки данных.
В этой статье мы шаг за шагом рассмотрим процесс развертывания приложения для анализа данных с использованием FASTAPI. Мы рассмотрим необходимый код и конфигурации, необходимые для создания и развертывания надежного и масштабируемого приложения.
Предварительные требования: прежде чем мы начнем, убедитесь, что у вас есть следующие предварительные условия:
- Python (версия 3.7 или выше)
- Базовое понимание концепций науки о данных
- Знание фреймворка FASTAPI.
Шаг 1: Настройка проекта Для начала давайте создадим новый каталог для нашего проекта и перейдем в него:
$ mkdir data-science-app $ cd data-science-app
Шаг 2: Создание виртуальной среды Рекомендуется использовать виртуальную среду для изоляции зависимостей проекта. Создайте и активируйте виртуальную среду:
$ python3 -m venv venv $ source venv/bin/activate (for Linux/Mac) $ venv\Scripts\activate.bat (for Windows)
Шаг 3: Установка зависимостей Нам нужно установить FASTAPI и другие необходимые библиотеки. Создайте файл requirements.txt
со следующим содержимым:
fastapi uvicorn
Затем установите зависимости:
$ pip install -r requirements.txt
Шаг 4: Создание приложения Теперь давайте создадим файл с именем main.py
и начнем создавать наше приложение для обработки данных или любое другое приложение. Откройте файл в предпочитаемом вами текстовом редакторе и добавьте следующий код:
from fastapi import FastAPI app = FastAPI() @app.get("/") def read_root(): return {"message": "Welcome to the Data Science API!"} @app.get("/predict/{input_data}") def predict(input_data: str): # Add your data science prediction code here prediction = "Your prediction: " + input_data return {"prediction": prediction}
Приведенный выше код настраивает базовое приложение FastAPI с двумя маршрутами: корневым маршрутом ('/') и прогнозируемым маршрутом ('/predict/{input_data}'). Функция read_root
возвращает приветственное сообщение, а функция predict
получает параметр входных данных и возвращает прогноз на его основе.
Шаг 5. Локальный запуск приложения Чтобы протестировать приложение локально, выполните в терминале следующую команду:
$ uvicorn main:app --reload
Эта команда запускает приложение с использованием сервера Uvicorn с включенной автоматической перезагрузкой. Вы должны увидеть вывод, указывающий, что сервер работает.
Шаг 6: Тестирование приложения Откройте веб-браузер и перейдите по адресу http://localhost:8000/. Вы должны увидеть приветственное сообщение.
Чтобы сделать прогноз, используйте следующий формат URL: http://localhost:8000/predict/{input_data}, где {input_data}
— данные, которые вы хотите прогнозировать. Например, вы можете попробовать http://localhost:8000/predict/hello, чтобы увидеть ответ прогноза.
Шаг 7: Развертывание приложения Для развертывания нашего приложения мы будем использовать облачную платформу. Здесь мы будем использовать Heroku в качестве примера.
- Зарегистрируйте бесплатную учетную запись Heroku.
- Установите Heroku CLI (интерфейс командной строки).
- Откройте терминал и войдите в свою учетную запись Heroku, используя следующую команду:
$ heroku login
- Создайте новое приложение Heroku:
$ heroku create your-app-name
4. Зафиксируйте изменения в Git:
$ git init $ git add . $ git commit -m "Initial commit"
5. Разверните приложение на Heroku:
$ heroku git:remote -a your-app-name $ git push heroku main
После завершения развертывания вы можете открыть приложение с помощью следующей команды:
$ heroku open
Это откроет развернутое приложение в браузере.
Заключение
В этой статье мы рассмотрели процесс развертывания приложения для анализа данных с использованием FASTAPI. Мы начали с настройки проекта, создания виртуальной среды и установки необходимых зависимостей. Затем мы создали базовое приложение для обработки данных, используя FASTAPI, с корневым маршрутом и прогнозируемым маршрутом. Мы протестировали приложение локально с помощью сервера Uvicorn и сделали прогнозы. Наконец, мы развернули приложение на Heroku.
FASTAPI предоставляет мощную и эффективную платформу для развертывания приложений обработки данных. Благодаря асинхронным возможностям и автоматически создаваемой документации по API он упрощает процесс создания и развертывания надежных приложений. Следуя этому пошаговому руководству, вы теперь должны иметь хорошее представление о том, как развернуть собственное приложение для анализа данных с помощью FASTAPI.
Использованная литература:
- Документация FASTAPI: https://fastapi.tiangolo.com/
- Документация Heroku: https://devcenter.heroku.com/