ancerlop commited on
Commit
8597c28
1 Parent(s): 8bb3a89

Delete app.py

Browse files
Files changed (1) hide show
  1. app.py +0 -60
app.py DELETED
@@ -1,60 +0,0 @@
1
- import os
2
- from glob import glob
3
- from sentence_transformers import SentenceTransformer
4
- import gradio as gr
5
- import numpy as np
6
- import faiss
7
-
8
- # Cargar el modelo de Sentence Transformers
9
- model_name = "quora-distilbert-multilingual"
10
- model = SentenceTransformer(model_name)
11
-
12
- # Funci贸n para vectorizar un texto
13
- def vectorize_text(text):
14
- return model.encode([text])[0]
15
-
16
- # Obtener una lista de todos los archivos *.index en el directorio
17
- archivos_indices = glob("*.index")
18
-
19
- # Cargar todos los 铆ndices de Faiss
20
- indices = []
21
- for archivo_index in archivos_indices:
22
- index = faiss.read_index(archivo_index)
23
- indices.append(index)
24
-
25
- # Funci贸n para predecir la similitud con cada 铆ndice
26
- def predecir_similitud(texto):
27
- resultados = []
28
- umbral_similitud = -11
29
-
30
- # Vectorizar el texto (usando la misma funci贸n que antes)
31
- texto_vectorizado = vectorize_text(texto)
32
-
33
- for i, index in enumerate(indices):
34
- # Buscar similitud con Faiss
35
- texto_vectorizado_np = np.array([texto_vectorizado], dtype=np.float32)
36
- D, I = index.search(texto_vectorizado_np, 1) # Buscar el vector m谩s cercano
37
- similitud = 1 - D[0][0] # Calcular similitud de coseno
38
-
39
- # Comparar con el umbral y proporcionar el resultado
40
- if similitud >= umbral_similitud:
41
- resultado = f"Coincidencia con 铆ndice {i} (similitud: {similitud:.2f})"
42
- else:
43
- resultado = f"No se detect贸 coincidencia con 铆ndice {i} (similitud: {similitud:.2f})"
44
-
45
- resultados.append(resultado)
46
-
47
- return resultados
48
-
49
- # Crear la interfaz de Gradio con un bot贸n de "Predecir"
50
- iface = gr.Interface(
51
- fn=predecir_similitud,
52
- inputs=gr.inputs.Textbox(default="Ingrese su texto aqu铆"),
53
- outputs=gr.outputs.Textbox(),
54
- live=False,
55
- title="Detector de Coincidencias",
56
- description="Ingrese un texto y haga clic en 'Predecir' para detectar coincidencias con los vectores."
57
- )
58
-
59
- # Ejecutar la interfaz
60
- iface.launch()