clavel commited on
Commit
81d43d6
·
verified ·
1 Parent(s): e08472e

Update app.py

Browse files

Fix classify_text

Files changed (1) hide show
  1. app.py +42 -9
app.py CHANGED
@@ -60,21 +60,54 @@ def classify_text(text):
60
  Función para clasificar texto y detectar coloquialismos cubanos
61
  """
62
  if not text or text.strip() == "":
63
- return "Por favor, ingresa un texto para clasificar."
64
 
65
  try:
 
66
  results = classifier(text)
67
- # Ordenar por score (de mayor a menor)
68
- results.sort(key=lambda x: x['score'], reverse=True)
69
 
70
- # Mostrar los 3 mejores resultados
71
- output = "### 📊 Resultados de clasificación:\n\n"
72
- for i, result in enumerate(results[:0], 1):
73
- label = result['coloquial']
74
- score = result['score']
75
- output += f"{i}. **{label}**: {score:.2%}\n"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
76
 
77
  return output
 
78
  except Exception as e:
79
  return f"❌ Error en clasificación: {str(e)}"
80
 
 
60
  Función para clasificar texto y detectar coloquialismos cubanos
61
  """
62
  if not text or text.strip() == "":
63
+ return "⚠️ Por favor, ingresa un texto para clasificar."
64
 
65
  try:
66
+ # Obtener resultados del modelo
67
  results = classifier(text)
 
 
68
 
69
+ # El resultado es una lista de diccionarios con 'label' y 'score'
70
+ # Ejemplo: [{'label': 'LABEL_1', 'score': 0.99}, {'label': 'LABEL_0', 'score': 0.01}]
71
+
72
+ # Obtener el resultado con mayor confianza
73
+ top_result = results[0] # Ya viene ordenado por score (mayor a menor)
74
+ label = top_result['label']
75
+ score = top_result['score']
76
+
77
+ # Determinar si es coloquial (LABEL_1 = coloquial, LABEL_0 = no coloquial)
78
+ if label == "LABEL_1":
79
+ es_coloquial = True
80
+ emoji = "🇨🇺"
81
+ tipo = "**COLOQUIAL CUBANO**"
82
+ descripcion = "✅ Este texto contiene expresiones típicas del dialecto cubano."
83
+ else: # LABEL_0
84
+ es_coloquial = False
85
+ emoji = "📚"
86
+ tipo = "**NO COLOQUIAL / ESTÁNDAR**"
87
+ descripcion = "ℹ️ Este texto usa lenguaje estándar, sin expresiones coloquiales cubanas."
88
+
89
+ # Construir la salida formateada
90
+ output = f"""
91
+ ### {emoji} Resultado: {tipo}
92
+
93
+ **Confianza:** {score:.2%}
94
+
95
+ {descripcion}
96
+
97
+ ---
98
+ ### 📊 Detalle de clasificación:
99
+
100
+ | Etiqueta | Probabilidad |
101
+ |----------|--------------|
102
+ | 🇨🇺 Coloquial | {results[0]['score']:.2%} (LABEL_1) |
103
+ | 📚 No coloquial | {results[1]['score']:.2%} (LABEL_0) |
104
+
105
+ ---
106
+ 💡 **Nota:** El modelo analiza si el texto contiene expresiones típicas del dialecto cubano.
107
+ """
108
 
109
  return output
110
+
111
  except Exception as e:
112
  return f"❌ Error en clasificación: {str(e)}"
113