Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
@@ -2,9 +2,10 @@ import gradio as gr
|
|
2 |
from sklearn.datasets import load_iris
|
3 |
from sklearn.model_selection import train_test_split
|
4 |
from sklearn.linear_model import LogisticRegression
|
5 |
-
from joblib import dump
|
6 |
import os
|
7 |
|
|
|
8 |
def train_model():
|
9 |
# Carregar e dividir o dataset
|
10 |
data = load_iris()
|
@@ -13,7 +14,7 @@ def train_model():
|
|
13 |
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
|
14 |
|
15 |
# Treinando o modelo
|
16 |
-
model = LogisticRegression()
|
17 |
model.fit(X_train, y_train)
|
18 |
|
19 |
# Criar diretório para salvar o modelo
|
@@ -26,28 +27,31 @@ def train_model():
|
|
26 |
|
27 |
return f"Modelo treinado e salvo em: {model_filename}"
|
28 |
|
29 |
-
#
|
30 |
-
|
|
|
|
|
31 |
|
32 |
-
#
|
33 |
-
|
34 |
-
|
35 |
-
prediction = model.predict([input_text]) # ou adapte conforme o seu modelo
|
36 |
-
return prediction[0]
|
37 |
|
38 |
-
#
|
39 |
-
|
40 |
-
fn=
|
41 |
-
inputs=
|
42 |
-
outputs=
|
43 |
)
|
44 |
|
45 |
-
#
|
46 |
-
|
47 |
-
|
|
|
|
|
|
|
48 |
|
49 |
-
#
|
50 |
-
|
51 |
|
52 |
-
#
|
53 |
-
|
|
|
2 |
from sklearn.datasets import load_iris
|
3 |
from sklearn.model_selection import train_test_split
|
4 |
from sklearn.linear_model import LogisticRegression
|
5 |
+
from joblib import dump, load
|
6 |
import os
|
7 |
|
8 |
+
# Função para treinar e salvar o modelo
|
9 |
def train_model():
|
10 |
# Carregar e dividir o dataset
|
11 |
data = load_iris()
|
|
|
14 |
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
|
15 |
|
16 |
# Treinando o modelo
|
17 |
+
model = LogisticRegression(max_iter=200)
|
18 |
model.fit(X_train, y_train)
|
19 |
|
20 |
# Criar diretório para salvar o modelo
|
|
|
27 |
|
28 |
return f"Modelo treinado e salvo em: {model_filename}"
|
29 |
|
30 |
+
# Função para carregar o modelo treinado e fazer previsões
|
31 |
+
def predict(input_data):
|
32 |
+
# Carregar o modelo treinado
|
33 |
+
model = load("/mnt/data/model.pkl") # Caminho do modelo salvo
|
34 |
|
35 |
+
# Realizar a previsão (garantir que a entrada seja formatada corretamente)
|
36 |
+
prediction = model.predict([input_data]) # input_data deve ser um vetor com as características
|
37 |
+
return f"Previsão: {prediction[0]}"
|
|
|
|
|
38 |
|
39 |
+
# Interface para treinamento do modelo
|
40 |
+
train_iface = gr.Interface(
|
41 |
+
fn=train_model,
|
42 |
+
inputs=[], # Nenhuma entrada necessária para treinar
|
43 |
+
outputs=["text"] # Exibe uma mensagem de sucesso
|
44 |
)
|
45 |
|
46 |
+
# Interface para previsões
|
47 |
+
predict_iface = gr.Interface(
|
48 |
+
fn=predict, # Função para chamar ao gerar previsão
|
49 |
+
inputs=gr.Textbox(label="Input (4 features, espaço separado)"), # Caixa de entrada de texto
|
50 |
+
outputs=gr.Textbox(label="Output") # Caixa de saída com a previsão
|
51 |
+
)
|
52 |
|
53 |
+
# Iniciar a interface de treinamento
|
54 |
+
train_iface.launch()
|
55 |
|
56 |
+
# Iniciar a interface de previsões
|
57 |
+
predict_iface.launch()
|