MLOps Academy · Lección

Valide las solicitudes con Pydantic

Rechace las entradas con formato incorrecto antes de que lleguen al modelo.

Lección 2 de 413 pasos

Valide las solicitudes con Pydantic es una lección gratuita de MLOps Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de MLOps Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de MLOps Academy incluye 4 lecciones en total.

Si entra basura, sale basura

Si un cliente envía campos o tipos incorrectos, el modelo recibe datos sin sentido. Debe rechazar las entradas incorrectas antes de que lleguen al modelo. 🛡️

Conozca Pydantic

FastAPI usa Pydantic para validar las solicitudes. Describa la estructura de los datos con una clase de Python y la validación se realizará automáticamente.

Defina un esquema

Herede de BaseModel y enumere los campos con sus tipos. Esta clase se convierte en el contrato para el cuerpo de su solicitud /predict.

from pydantic import BaseModel

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

Úselo en la ruta

Anote el argumento del endpoint con el tipo de su modelo. FastAPI analiza y valida los datos, y le entrega un object limpio.

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

Acceda a los campos

Dentro de la función, los datos validados son un objeto normal. Lea cada valor mediante un sencillo acceso con dot.

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

Errores 422 automáticos

Si falta un campo o tiene el tipo incorrecto, FastAPI devuelve una respuesta 422 con un mensaje claro. No necesita escribir ningún código para gestionar errores.

Añada restricciones de valores

Puede imponer rangos con Field. Aquí, una medición debe ser mayor que cero, por lo que los valores negativos se rechazan automáticamente.

from pydantic import Field

sepal_length: float = Field(gt=0)

Valide una lista de filas

Para evaluar muchas muestras a la vez, acepte una list de su modelo. Pydantic valida por usted cada elemento del lote.

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

Documente los campos

Añada descripciones y ejemplos a los campos y aparecerán en la página /docs, para que los clientes sepan exactamente qué deben enviar. 📘

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

Dé forma también a la respuesta

Puede declarar un response_model para que la salida se valide y documente igual que la entrada, manteniendo bien definido el contrato de su API.

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

Por qué es importante

Una validación estricta de las entradas es su primera línea de defensa en producción. Bloquea las solicitudes mal formadas para que el model solo reciba datos limpios y esperados. ✅

Comprobación rápida

Un cliente envía una solicitud a la que le falta un campo obligatorio. ¿Qué hace FastAPI gracias a Pydantic?

Resumen

Definió un esquema BaseModel, tipó la ruta con él, añadió restricciones a los campos y dejó que FastAPI rechazara automáticamente las entradas incorrectas con errores 422 claros. ¡Datos limpios desde el principio! 🙌

Gratis para empezar

Aprende Python con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
30
Lecciones
120

Preguntas frecuentes

¿La lección «Valide las solicitudes con Pydantic» es gratis?

Sí — el texto completo de «Valide las solicitudes con Pydantic» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de MLOps Academy, actualiza a CoddyKit PRO. El curso de MLOps Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Valide las solicitudes con Pydantic»?

Rechace las entradas con formato incorrecto antes de que lleguen al modelo. Practicas MLOps Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar MLOps Academy?

No se requiere experiencia previa. MLOps Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Valide las solicitudes con Pydantic»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de MLOps Academy?

Sí. Cada lección de MLOps Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Su primer endpoint /predict
  2. Valide las solicitudes con Pydantic
  3. Cargue el modelo una sola vez al iniciar
  4. Añada una comprobación de disponibilidad /health
← Volver a MLOps Academy