mlops-demo / api /main.py
nicolasIsmaelUTP
ADD: implement FastAPI application with prediction service and request/response models
0252da2
raw
history blame contribute delete
717 Bytes
import logging
from contextlib import asynccontextmanager
from fastapi import FastAPI
from .schema import PredictRequest, PredictResponse
from .service import service
logging.basicConfig(level=logging.INFO)
@asynccontextmanager
async def lifespan(app: FastAPI):
logging.info("Iniciando la aplicación")
service.load()
yield
logging.info("Finalizando la aplicación")
app = FastAPI(title="MLOps Demo API", lifespan=lifespan)
@app.get("/")
def read_root():
return {"message": "Bienvenido a la API de MLOps Demo"}
@app.post("/predict", response_model=PredictResponse)
def predict(req: PredictRequest):
cost = service.predict(req.distance_km)
return PredictResponse(cost_soles=cost)