Adăugarea unei noi versiuni de endpoint
Un client al API-ului tău de clasificare a pinguinilor a solicitat un endpoint care să preproceseze date dintr-un șir de text delimitat prin spații, în loc de un dicționar JSON. Trebuie să adaugi o schemă și un endpoint „v2" în aplicația ta pentru a accepta noul format de intrare.
Instanța FastAPI numită app și clasa PenguinV1 au fost preîncărcate.
Acest exercițiu face parte din cursul
Deployment AI în producție cu FastAPI
Instrucțiuni pentru exercițiu
- Adaugă un model Pydantic
PenguinV2care acceptă un parametrudatade tip string. - Adaugă un endpoint v2 pentru clasificatorul de pinguini la
/v2/penguin_classifier. - Folosește modelul v2 ca intrare pentru endpoint-ul v2.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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