Deep Learning Academy · Lección

Sirva con FastAPI

Envuelva la inferencia en un endpoint REST

Lección 4 de 413 pasos

Sirva con FastAPI es una lección gratuita de Deep Learning Academy en CoddyKit. Esta es la lección 4 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 Deep Learning Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Deep Learning Academy incluye 4 lecciones en total.

Del modelo guardado a la API en producción

Un modelo entrenado solo resulta útil para los usuarios cuando pueden acceder a él. FastAPI envuelve el modelo en un endpoint web al que pueden llamar mediante HTTP. 🌍

Por qué FastAPI es adecuado para la inferencia

FastAPI es rápido, compatible con la programación asíncrona y genera documentación automáticamente. Por eso es una forma sencilla de ofrecer predicciones del modelo como un servicio REST.

Cargue el modelo una sola vez al iniciar

Cargue el modelo una sola vez cuando se inicie el servidor, no en cada solicitud. Cargarlo en cada llamada haría que cada predicción fuera muy lenta.

model = torch.jit.load('model.pt')
model.eval()

Cree la aplicación

Para empezar, cree una instancia de FastAPI. Este objeto contiene sus rutas y se convierte en el servidor que ejecutará.

from fastapi import FastAPI
app = FastAPI()

Valide la entrada con Pydantic

Defina un modelo de Pydantic para el cuerpo de la solicitud, de modo que FastAPI compruebe automáticamente la estructura y los tipos de los datos recibidos.

from pydantic import BaseModel
class Item(BaseModel):
    features: list[float]

Defina una ruta de predicción

Una ruta POST recibe los datos validados, ejecuta el modelo y devuelve el resultado como JSON para que el cliente pueda leerlo.

@app.post('/predict')
def predict(item: Item):
    ...

Ejecute la inferencia sin gradientes

Envuelva la pasada hacia adelante en torch.no_grad() para que el servidor omita el seguimiento de gradientes y ahorre tiempo y memoria en cada llamada.

with torch.no_grad():
    output = model(x)

Devuelva una respuesta JSON limpia

Convierta la salida del tensor en números simples de Python antes de devolverla, ya que los tensores sin procesar no se pueden serializar directamente como JSON.

return {'prediction': output.argmax().item()}

Sírvala con Uvicorn

Uvicorn es el servidor que ejecuta su aplicación de FastAPI. Un solo comando pone su endpoint de predicciones en línea. 🚀

uvicorn main:app --host 0.0.0.0 --port 8000

Explore la documentación automática

FastAPI crea documentación interactiva en la ruta /docs, para que usted y sus clientes puedan probar el endpoint directamente en el navegador.

Añada una ruta de comprobación de estado

Un pequeño endpoint de health permite que los balanceadores de carga confirmen que el servidor está activo; es un detalle sencillo que hace que la implementación sea mucho más fiable.

@app.get('/health')
def health():
    return {'status': 'ok'}

Comprobación rápida

Quiere que cada solicitud se valide automáticamente para comprobar que contiene los campos y tipos correctos. ¿Qué se encarga de eso?

Repaso: su modelo está en producción

Sirvió un modelo con FastAPI: lo cargó una vez al iniciar, validó los datos con Pydantic, realizó la predicción con no_grad y lo ejecutó en Uvicorn. 🎉

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 «Sirva con FastAPI» es gratis?

Sí — el texto completo de «Sirva con FastAPI» 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 Deep Learning Academy, actualiza a CoddyKit PRO. El curso de Deep Learning Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Sirva con FastAPI»?

Envuelva la inferencia en un endpoint REST Practicas Deep Learning 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 Deep Learning Academy?

No se requiere experiencia previa. Deep Learning 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 4 de 4.

¿Cuánto tiempo toma la lección «Sirva con FastAPI»?

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 Deep Learning Academy?

Sí. Cada lección de Deep Learning 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. TorchScript y torch.compile
  2. Exporte a ONNX
  3. Cuantización para modelos más pequeños y rápidos
  4. Sirva con FastAPI
← Volver a Deep Learning Academy