ПочатиПочніть безкоштовно

Повернення структурованого результату з API

Ви створюєте систему модерації контенту, у якій потрібно визначити кінцеву точку POST, щоб протестувати заздалегідь натреновану модель аналізу тональності на коментарях користувачів.

Вам потрібно створити кінцеву точку, що використовує моделі pydantic, щоб повертати прогнози у структурованому форматі.

Примітка: моделі Pydantic — CommentRequest і CommentResponse — уже створені для вашого використання разом із попередньо натренованою sentiment_model з попередньо визначеного класу SentimentAnalyzer.

Ця вправа є частиною курсу

Розгортання AI у продакшні з FastAPI

Переглянути курс

Інструкції до вправи

  • Реалізуйте кінцеву точку POST за маршрутом /analyze.
  • Провалідуйте request у функції analyze_comment() згідно з CommentRequest.
  • Зробіть прогноз за допомогою sentiment_model, передавши text з request.
  • Поверніть атрибути прогнозу (text з request, "label" і "score" з result[0]), щоб сформувати вихідну відповідь у CommentResponse.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Create a POST request endpoint
@app.____("/analyze")
# Capture the request text for validation as per CommentRequest model
def analyze_comment(____: CommentRequest):
    try:
        # Specify pass the request text to the model
        result = sentiment_model(____.____)
        # Specify the result attributes to complete the comment response
        return CommentResponse(text=____, 
                               sentiment=____, 
                               confidence=____)
    except Exception:
        raise HTTPException(status_code=500,
            detail="Prediction failed"
        )
Редагувати та запускати код