НачатьНачать бесплатно

Добавление новой версии эндпоинта

Клиент вашего API классификации пингвинов попросил добавить эндпоинт, который предобрабатывает данные из текстовой строки с разделителями-пробелами вместо JSON-словаря. Вам нужно добавить схему и эндпоинт «v2» в приложение, чтобы принимать новый формат входных данных.

Экземпляр FastAPI с именем app и класс PenguinV1 уже загружены.

Это упражнение является частью курса

Развёртывание ИИ в производственной среде с помощью FastAPI

Посмотреть курс

Инструкции к упражнению

  • Добавьте модель Pydantic PenguinV2, которая принимает параметр data в виде строки.
  • Добавьте эндпоинт классификатора пингвинов v2 по пути /v2/penguin_classifier.
  • Используйте модель v2 в качестве входных данных для эндпоинта v2.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Add v2 model
class ____(BaseModel):
    data: str

@app.post("/v1/penguin_classifier")
def classify_penguin_v1(penguin: PenguinV1):
    values = list(penguin.model_dump().values())
    result = classifier.predict([values])[0]
    return result

# Add v2 endpoint
@app.post("____")
# Use v2 model
def classify_penguin_v2(penguin: ____):
    values = penguin.data.split()
    result = classifier.predict([values])[0]
    return result
Редактировать и запускать код