nateevo commited on
Commit
6e3e882
·
1 Parent(s): 6277f42

Add app and embeddings

Browse files
Files changed (1) hide show
  1. app.py +66 -0
app.py ADDED
@@ -0,0 +1,66 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from openai.embeddings_utils import get_embedding, cosine_similarity
3
+ import openai
4
+ import pandas as pd
5
+ import numpy as np
6
+
7
+ openai.api_key = "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"
8
+
9
+
10
+ def get_documentation(query, platform):
11
+ embedding = get_embedding(
12
+ query,
13
+ engine="text-embedding-ada-002")
14
+
15
+ if platform == "Salesforce Marketing Cloud Intelligence":
16
+ df = pd.read_csv("(sfmci)doc_embeddings.csv")
17
+ df.ada_search = df.ada_search.apply(
18
+ lambda x: np.array(x[1:-1].split(','), dtype=np.float32))
19
+ df["similarities"] = df.ada_search.apply(
20
+ lambda x: cosine_similarity(x, embedding))
21
+ df = df.sort_values("similarities", ascending=False).reset_index()
22
+ titles = df['title']
23
+ contents = df['body']
24
+ links = df['link']
25
+ res = []
26
+ for i in range(3):
27
+ res.append("Título: " + titles[i] + "\n\nContenido: " +
28
+ contents[i] + "\n\nURL: " + links[i])
29
+ return res[0], res[1], res[2]
30
+
31
+ elif platform == "Salesforce Marketing Cloud CDP":
32
+ df = pd.read_csv("(sfmcdp)doc_embeddings.csv")
33
+ df.ada_search = df.ada_search.apply(
34
+ lambda x: np.array(x[1:-1].split(','), dtype=np.float32))
35
+ df["similarities"] = df.ada_search.apply(
36
+ lambda x: cosine_similarity(x, embedding))
37
+ df = df.sort_values("similarities", ascending=False).reset_index()
38
+ titles = df['title']
39
+ contents = df['body']
40
+ links = df['link']
41
+ res = []
42
+ for i in range(3):
43
+ res.append("Título: " + titles[i] + "\n\nContenido: " +
44
+ contents[i] + "\n\nURL: " + links[i])
45
+ return res[0], res[1], res[2]
46
+
47
+
48
+ demo = gr.Interface(
49
+ fn=get_documentation,
50
+ inputs=[
51
+ gr.Textbox(label="Question", lines=3,),
52
+ gr.Radio(["Salesforce Marketing Cloud Intelligence",
53
+ "Salesforce Marketing Cloud CDP"])
54
+ ],
55
+ outputs=["text", "text", "text"],
56
+ title="Salesforce Documentation Search",
57
+ # examples=[
58
+ # [2, "cat", "park", ["ran", "swam"], True],
59
+ # [4, "dog", "zoo", ["ate", "swam"], False],
60
+ # [10, "bird", "road", ["ran"], False],
61
+ # [8, "cat", "zoo", ["ate"], True],
62
+ # ],
63
+ )
64
+
65
+ if __name__ == "__main__":
66
+ demo.launch()