arthe commited on
Commit
d3445fc
·
1 Parent(s): 9c6679a

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +33 -0
app.py ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import openai
2
+ import gradio as gr
3
+ import pandas as pd
4
+
5
+ from openai.embeddings_utils import get_embedding
6
+ from openai.embeddings_utils import cosine_similarity
7
+
8
+ openai.api_key = "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"
9
+
10
+ def embed_text(path="texto.csv"):
11
+ conocimiento_df = pd.read_csv(path)
12
+ conocimiento_df['Embedding'] = conocimiento_df['Texto'].apply(lambda x: get_embedding(x, engine='text-embedding-ada-002'))
13
+ conocimiento_df.to_csv('embeddings.csv')
14
+ return conocimiento_df
15
+
16
+ def buscar(busqueda, datos, n_resultados=3):
17
+ busqueda_embed = get_embedding(busqueda, engine="text-embedding-ada-002")
18
+ datos["Similitud"] = datos['Embedding'].apply(lambda x: cosine_similarity(x, busqueda_embed))
19
+ datos = datos.sort_values("Similitud", ascending=False)
20
+ return datos.iloc[:n_resultados][["Texto"]]
21
+
22
+ texto_emb = embed_text("C:\\Users\\areyn\\Documents\\Embedding.csv")
23
+
24
+ with gr.Blocks() as demo:
25
+ gr.Markdown("# Bienvenido al centro de ayuda de ZafiroSoft ERP")
26
+ busqueda = gr.Textbox(label="Pregunta", placeholder="Escriba su pregunta...")
27
+ slider = gr.Slider(1,5,value=3,label="Resultados a mostrar",info="Elija valores entre 1 y 5",step=1)
28
+ output = gr.DataFrame(headers=['Respuesta'],wrap=True)
29
+ greet_btn = gr.Button("Enviar")
30
+ datos = gr.DataFrame(texto_emb, visible = False)
31
+ greet_btn.click(fn=buscar, inputs=[busqueda, datos,slider], outputs=output)
32
+
33
+ demo.launch()