Walidacja żądania i odpowiedzi dla predykcji modelu ML
Kontynuując pracę jako data scientist w firmie kawowej, musisz teraz utworzyć endpoint FastAPI, który waliduje dane wejściowe żądania za pomocą modelu CoffeeQualityInput oraz odpowiedź za pomocą modelu QualityPrediction.
Endpoint będzie przyjmować dane o kawie i zwracać predykcję jakości wraz z wynikiem pewności.
Model jest już wczytany do funkcji predict_quality na potrzeby tego ćwiczenia.
To ćwiczenie jest częścią kursu
Wdrażanie AI na produkcję z FastAPI
Instrukcje do ćwiczenia
- Zdefiniuj
CoffeeQualityInputz polamiaroma(float),flavor(float) orazaltitude(int). - Podaj
response_model, aby zwalidować odpowiedź w dekoratorze żądania POST. - Podaj model danych do walidacji danych wejściowych żądania zawierającego
coffee_data.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
class CoffeeQualityInput(BaseModel):
____: ____
____: ____
____: ____
class QualityPrediction(BaseModel):
quality_score: float
confidence: float
# Specify the data model to validate response
@app.post("/predict", response_model=____)
# Specify the data model to validate input request
def predict(coffee_data: ____):
prediction = predict_quality(coffee_data)
return prediction