Ajouter une nouvelle version de point de terminaison
Un client de votre API de classification Penguin a demandé un point de terminaison qui prétrait les données provenant d'une chaîne de texte délimitée par des espaces plutôt que d'un dictionnaire JSON. Vous devez ajouter un schéma « v2 » et un point de terminaison à votre application pour accepter le nouveau format d'entrée.
L'instance FastAPI nommée app
et la classe PenguinV1
ont été préchargées.
Cet exercice fait partie du cours
Déployer l'IA en production avec FastAPI
Instructions
- Ajoutez un modèle Pydantic d'
PenguinV2
qui accepte un paramètredata
sous forme de chaîne. - Veuillez ajouter un point de terminaison pour le classificateur de pingouins v2 à l'adresse
/v2/penguin_classifier
. - Veuillez utiliser le modèle v2 comme entrée pour le point de terminaison v2.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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