MLOps Academy · leksjon

Valider forespørsler med Pydantic

Avvis ugyldige inndata før de når modellen.

Leksjon 2 av 413 trinn

Valider forespørsler med Pydantic er en gratis leksjon i MLOps Academy på CoddyKit. Dette er leksjon 2 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i MLOps Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i MLOps Academy inneholder totalt 4 leksjoner.

Søppel inn, søppel ut

Hvis en klient sender feil felter eller typer, får modellen din meningsløse data. Du bør avvise ugyldige inndata før de i det hele tatt når modellen. 🛡️

Møt Pydantic

FastAPI bruker Pydantic til å validere forespørsler. Du beskriver datastrukturen med en Python-klasse, og valideringen skjer automatisk.

Definer et skjema

Du arver fra BaseModel og angir feltene med typene deres. Denne klassen blir kontrakten for request-bodyen til /predict.

from pydantic import BaseModel

class IrisInput(BaseModel):
    sepal_length: float
    petal_width: float

Bruk det i ruten

Du angir typen til endepunktargumentet med modellen din. FastAPI analyserer, validerer og gir deg et ryddig objekt.

@app.post("/predict")
def predict(data: IrisInput):
    ...

Åpne feltene

Inne i funksjonen er de validerte dataene et vanlig objekt. Du leser hver verdi med enkel punktnotasjon.

x = [data.sepal_length, data.petal_width]
pred = model.predict([x])

Automatiske 422-feil

Hvis et felt mangler eller har feil type, returnerer FastAPI et 422-svar med en tydelig melding. Du trenger ikke skrive feilhåndteringskode.

Legg til verdibegrensninger

Du kan håndheve intervaller med Field. Her må en måling være større enn null, så negative verdier avvises automatisk.

from pydantic import Field

sepal_length: float = Field(gt=0)

Valider en liste med rader

For å beregne poengsummen for mange eksempler samtidig kan du ta imot en list av modellen din. Pydantic validerer hvert element i gruppen for deg.

@app.post("/predict")
def predict(rows: list[IrisInput]):
    ...

Dokumenter feltene

Legg til beskrivelser og eksempler i feltene, så vises de på /docs-siden og forteller kallere nøyaktig hva de skal sende. 📘

sepal_length: float = Field(description="cm", examples=[5.1])

Form også svaret

Du kan deklarere en response_model, slik at resultatet valideres og dokumenteres på samme måte som inndataene. Da blir API-kontrakten tydelig.

@app.post("/predict", response_model=Prediction)
def predict(data: IrisInput):
    ...

Hvorfor dette er viktig

Grundig validering av inndata er det første forsvarslaget ditt i produksjon. Det blokkerer ugyldige forespørsler, slik at modellen bare får rene og forventede data. ✅

Hurtigsjekk

En klient sender en forespørsel der et obligatorisk felt mangler. Hva gjør FastAPI takket være Pydantic?

Oppsummering

Du definerte et BaseModel-skjema, typet ruten med det, la til feltbegrensninger og lot FastAPI automatisk avvise ugyldige inndata med tydelige 422-feil. Rene data inn! 🙌

Gratis å komme i gang

Lær deg Python med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
30
Leksjoner
120

Ofte stilte spørsmål

Er leksjonen «Valider forespørsler med Pydantic» gratis?

Ja – hele teksten i «Valider forespørsler med Pydantic» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av MLOps Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i MLOps Academy inneholder totalt 4 leksjoner.

Hva lærer jeg i «Valider forespørsler med Pydantic»?

Avvis ugyldige inndata før de når modellen. Du øver på MLOps Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med MLOps Academy?

Ingen tidligere erfaring er nødvendig. MLOps Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.

Hvor lang tid tar leksjonen «Valider forespørsler med Pydantic»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne MLOps Academy-leksjonen?

Ja. Alle MLOps Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Det første /predict-endepunktet
  2. Valider forespørsler med Pydantic
  3. Last inn modellen én gang ved oppstart
  4. Legg til en /health-beredskapssjekk
← Tilbake til MLOps Academy