xor / app.py
Jun1or's picture
Upload 3 files
327ebd8 verified
raw
history blame
1.26 kB
from fastapi import FastAPI, HTTPException
from pydantic import BaseModel
import tensorflow as tf
import numpy as np
# Inicializar la aplicaci贸n FastAPI
app = FastAPI()
# Cargar el modelo
model = tf.keras.models.load_model("model.h5")
# Clase para los datos de entrada
class PredictionInput(BaseModel):
pclass: int
gender: str # "male" o "female"
age: float
sibsp: int
parch: int
fare: float
# Funci贸n de preprocesamiento
def preprocess_input(data: PredictionInput):
# Convertir g茅nero a un valor num茅rico
gender = 1 if data.gender.lower() == "female" else 0
# Crear array con los datos procesados
input_data = np.array([[data.pclass, gender, data.age, data.sibsp, data.parch, data.fare]])
return input_data
# Endpoint de predicci贸n
@app.post("/predict")
async def predict(data: PredictionInput):
try:
# Preprocesar los datos de entrada
input_data = preprocess_input(data)
# Realizar la predicci贸n
prediction = model.predict(input_data)
# Devolver el resultado en un diccionario
return {"survived_probability": float(prediction[0][0])}
except Exception as e:
raise HTTPException(status_code=500, detail=str(e))