ComeçarComece de graça

Adicionando uma nova versão de endpoint

Um cliente da sua API de classificação de pinguins pediu um endpoint que faça o pré-processamento de dados a partir de uma string de texto delimitada por espaços, em vez de um dicionário JSON. Você precisa adicionar um esquema e um endpoint "v2" ao seu app para aceitar o novo formato de entrada.

A instância do FastAPI chamada app e a classe PenguinV1 já foram carregadas.

Este exercício faz parte do curso

Colocando IA em Produção com FastAPI

Ver curso

Instruções do exercício

  • Adicione um modelo Pydantic PenguinV2 que aceite um parâmetro data como string.
  • Adicione um endpoint do classificador de pinguins v2 em /v2/penguin_classifier.
  • Use o modelo v2 como entrada para o endpoint v2.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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
Editar e executar o código