Spaces:
Sleeping
Sleeping
File size: 2,971 Bytes
99ea5b3 a729c4d 99ea5b3 a729c4d 99ea5b3 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 | # -*- coding: utf-8 -*-
"""Regression Use_model_cloud.ipynb
Automatically generated by Colab.
Original file is located at
https://colab.research.google.com/drive/1hsRGZjDFbBm5WHW6gYOrHmx7IucW3BOc
"""
import os
import requests
import joblib
import gradio as gr
import numpy as np
import matplotlib.pyplot as plt
"""# **Web/API deployment**
## **Load the Model**
"""
saved_model_path = "files/prueba_regression.joblib"
os.path.getsize(saved_model_path)
saved_model = joblib.load("files/prueba_regression.joblib")
saved_model
def predict(input1, input2):
# Asume que el modelo espera un array 2D de caracter铆sticas
input_array = np.array([[input1, input2]])
predictions = saved_model.predict(input_array)
output1 = predictions[0, 0] # Primer valor predicho
output2 = predictions[0, 1] # Segundo valor predicho
output3 = predictions[0, 2] # Tercer valor predicho
output4 = predictions[0, 3] # Cuarto valor predicho
output5 = predictions[0, 4] # Quinto valor predicho
output6 = predictions[0, 5] # Sexto valor predicho
return output1, output2, output3, output4, output5, output6
# Crear la interfaz de Gradio
iface = gr.Interface(
fn=predict,
inputs=[gr.Number(label="RPM"), gr.Number(label="Horas de Operaci贸n")],
outputs=[
gr.Number(label="Aceleraci贸n Lado del Acople"),
gr.Number(label="Velocidad Lado del Acople"),
gr.Number(label="Envolvente Lado del Acople"),
gr.Number(label="Aceleraci贸n Lado del Impulsor"),
gr.Number(label="Velocidad Lado del Impulsor"),
gr.Number(label="Envolvente Lado del Impulsor")
],
title="Predicci贸n de Valores de Vibraci贸n",
description="Ingrese los valores de RPM y Horas de Operaci贸n para predecir los valores de vibraci贸n."
)
def predict(input1, input2):
input_array = np.array([[input1, input2]])
predictions = saved_model.predict(input_array)
# Configuraci贸n global para aumentar el tama帽o de la fuente
plt.rcParams.update({'font.size': 14})
# Crear la gr谩fica
plt.figure(figsize=(16, 12))
labels = ['Ac Lado Acople', 'Vel Lado Acople', 'Env Lado Acople',
'Ac Lado Impulsor', 'Vel Lado Impulsor', 'Env Lado Impulsor']
plt.bar(labels, predictions[0], color='blue')
plt.xticks(rotation=30, ha='right')
plt.ylabel('Valores de Vibraci贸n')
plt.title('Predicciones de Vibraci贸n para RPM y Horas de Operaci贸n')
# Guardar la gr谩fica en un buffer en formato PNG y usarlo en Gradio
plt.savefig('output_predictions.png')
plt.close()
return 'output_predictions.png'
iface = gr.Interface(
fn=predict,
inputs=[gr.Number(label="RPM"), gr.Number(label="Horas de Operaci贸n")],
outputs="image",
title="Predicci贸n de Valores de Vibraci贸n",
description="Ingrese los valores de RPM y Horas de Operaci贸n para ver la gr谩fica de los valores de vibraci贸n predichos."
)
# Lanzar la aplicaci贸n
iface.launch() |