Update app.py
Browse filesMudanças feitas:
Conversão de entrada: Criei a função converter_para_float que substitui vírgulas por pontos e converte a string para um número float.
Mudança no tipo de entrada: Alterei as entradas de gr.Number para gr.Textbox, permitindo ao usuário inserir números com ponto ou vírgula como separador decimal.
Processamento de entrada: Cada valor inserido é processado para garantir que seja corretamente interpretado como número.
app.py
CHANGED
@@ -6,14 +6,22 @@ import pandas as pd
|
|
6 |
model_LayAway = joblib.load('model_class_layaway_0.pkl')
|
7 |
model_LayHome = joblib.load('model_class_layhome_1.pkl')
|
8 |
|
|
|
|
|
|
|
9 |
|
10 |
def fazer_previsao(ODD_H, ODD_D, ODD_A):
|
|
|
|
|
|
|
|
|
|
|
11 |
data = pd.DataFrame(
|
12 |
{'H/A': [ODD_H / ODD_A], 'Diff': [(ODD_H / ODD_D) - (ODD_H / ODD_A)]})
|
13 |
previsao_LayAway = model_LayAway.predict(data)[0]
|
14 |
previsao_LayHome = model_LayHome.predict(data)[0]
|
15 |
|
16 |
-
if
|
17 |
resultado = 'Não entre!'
|
18 |
else:
|
19 |
if previsao_LayAway == 1:
|
@@ -50,20 +58,18 @@ def fazer_previsao(ODD_H, ODD_D, ODD_A):
|
|
50 |
f"entrada LayHome (se Odd> 1.28): {entrada_LayHome}\n" \
|
51 |
f"---> probabilidade: {probabilidade_LayHome}%\n" \
|
52 |
f"\n" \
|
53 |
-
#f"entrada Away: {entrada_Away}"
|
54 |
|
55 |
return resultado
|
56 |
|
57 |
-
|
58 |
# Criar uma interface Gradio
|
59 |
iface = gr.Interface(
|
60 |
fn=fazer_previsao,
|
61 |
-
inputs=[gr.
|
62 |
-
gr.
|
63 |
-
gr.
|
64 |
outputs="text",
|
65 |
title="Redução de Risco em Apostas",
|
66 |
description="Insira as Odds e obtenha uma sugestão para entradas LayAway (CASA vence ou EMPATA) e LayHome (VISITANTE vence ou EMPATA)."
|
67 |
)
|
68 |
|
69 |
-
iface.launch()
|
|
|
6 |
model_LayAway = joblib.load('model_class_layaway_0.pkl')
|
7 |
model_LayHome = joblib.load('model_class_layhome_1.pkl')
|
8 |
|
9 |
+
def converter_para_float(valor):
|
10 |
+
# Substitui vírgula por ponto e converte para float
|
11 |
+
return float(valor.replace(',', '.'))
|
12 |
|
13 |
def fazer_previsao(ODD_H, ODD_D, ODD_A):
|
14 |
+
# Converter entradas para float
|
15 |
+
ODD_H = converter_para_float(ODD_H)
|
16 |
+
ODD_D = converter_para_float(ODD_D)
|
17 |
+
ODD_A = converter_para_float(ODD_A)
|
18 |
+
|
19 |
data = pd.DataFrame(
|
20 |
{'H/A': [ODD_H / ODD_A], 'Diff': [(ODD_H / ODD_D) - (ODD_H / ODD_A)]})
|
21 |
previsao_LayAway = model_LayAway.predict(data)[0]
|
22 |
previsao_LayHome = model_LayHome.predict(data)[0]
|
23 |
|
24 |
+
if previsao_LayAway == previsao_LayHome:
|
25 |
resultado = 'Não entre!'
|
26 |
else:
|
27 |
if previsao_LayAway == 1:
|
|
|
58 |
f"entrada LayHome (se Odd> 1.28): {entrada_LayHome}\n" \
|
59 |
f"---> probabilidade: {probabilidade_LayHome}%\n" \
|
60 |
f"\n" \
|
|
|
61 |
|
62 |
return resultado
|
63 |
|
|
|
64 |
# Criar uma interface Gradio
|
65 |
iface = gr.Interface(
|
66 |
fn=fazer_previsao,
|
67 |
+
inputs=[gr.Textbox(label="Odds para CASA vencer"),
|
68 |
+
gr.Textbox(label="Odds para EMPATE"),
|
69 |
+
gr.Textbox(label="Odds para VISITANTE vencer")],
|
70 |
outputs="text",
|
71 |
title="Redução de Risco em Apostas",
|
72 |
description="Insira as Odds e obtenha uma sugestão para entradas LayAway (CASA vence ou EMPATA) e LayHome (VISITANTE vence ou EMPATA)."
|
73 |
)
|
74 |
|
75 |
+
iface.launch()
|