Введение

В мире науки о данных разработка надежных приложений, которые могут эффективно обрабатывать и обслуживать прогнозы, имеет решающее значение.

FASTAPI, современная и высокопроизводительная веб-инфраструктура, представляет собой идеальное решение для развертывания приложений обработки данных.

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

Предварительные требования: прежде чем мы начнем, убедитесь, что у вас есть следующие предварительные условия:

  1. Python (версия 3.7 или выше)
  2. Базовое понимание концепций науки о данных
  3. Знание фреймворка 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 в качестве примера.

  1. Зарегистрируйте бесплатную учетную запись Heroku.
  2. Установите Heroku CLI (интерфейс командной строки).
  3. Откройте терминал и войдите в свою учетную запись 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.

Использованная литература: