albhu commited on
Commit
b371bad
·
verified ·
1 Parent(s): 53e5b8a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +26 -16
app.py CHANGED
@@ -58,6 +58,32 @@ def generate_response(input_text):
58
  response = tokenizer.decode(outputs.logits.argmax(dim=1)[0])
59
  return response
60
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
61
  # Dokumentum feltöltése drag and drop segítségével
62
  document_file = st.file_uploader("Húzd ide a dokumentumot vagy kattints a feltöltéshez", type=["pdf", "docx", "doc"])
63
 
@@ -84,19 +110,3 @@ if document_file is not None:
84
 
85
  # Aktuális beszélgetés hozzáadása az előző beszélgetésekhez
86
  st.session_state.previous_conversations.append({"input_text": input_text, "response": response})
87
-
88
- # FAISS használata az előző beszélgetések indexelésére és keresésére
89
- # Először hozz létre egy üres FAISS indexet
90
- index = faiss.IndexFlatL2(embedding_dimension) # Az embedding_dimension a vektormérete az előző beszélgetések reprezentálásához
91
-
92
- # Az előző beszélgetéseket reprezentáló vektorokat hozzáadhatod az indexhez
93
- for conversation_vector in previous_conversation_vectors:
94
- index.add(conversation_vector)
95
-
96
- # Keresés egy adott lekérdezés vektor alapján
97
- query_vector = generate_vector_from_text(input_text) # A lekérdezés szövegből létrehozott vektor
98
- k = 5 # A legjobb 5 hasonlóságú beszélgetés visszaadása
99
- D, I = index.search(query_vector, k) # D: távolságok, I: indexek
100
-
101
- # Azon beszélgetések visszaadása, amelyek a legjobban illeszkednek a lekérdezéshez
102
- relevant_conversations = [st.session_state.previous_conversations[i] for i in I]
 
58
  response = tokenizer.decode(outputs.logits.argmax(dim=1)[0])
59
  return response
60
 
61
+ # FAISS használata az előző beszélgetések indexelésére és keresésére
62
+ if st.session_state.previous_conversations:
63
+ # Először hozz létre egy üres FAISS indexet
64
+ index = faiss.IndexFlatL2(embedding_dimension) # Az embedding_dimension a vektormérete az előző beszélgetések reprezentálásához
65
+
66
+ # Az előző beszélgetéseket reprezentáló vektorokat hozzáadhatod az indexhez
67
+ previous_conversation_vectors = generate_vectors_from_previous_conversations(st.session_state.previous_conversations)
68
+ for conversation_vector in previous_conversation_vectors:
69
+ index.add(conversation_vector)
70
+
71
+ # Keresés egy adott lekérdezés vektor alapján
72
+ query_vector = generate_vector_from_text(input_text) # A lekérdezés szövegből létrehozott vektor
73
+ k = 5 # A legjobb 5 hasonlóságú beszélgetés visszaadása
74
+ D, I = index.search(query_vector, k) # D: távolságok, I: indexek
75
+
76
+ # Azon beszélgetések visszaadása, amelyek a legjobban illeszkednek a lekérdezéshez
77
+ relevant_conversations = [st.session_state.previous_conversations[i] for i in I]
78
+
79
+ # Az eredmények megjelenítése
80
+ st.subheader("Legjobban Illeszkedő Beszélgetések:")
81
+ for i, conversation in enumerate(relevant_conversations):
82
+ st.write(f"{i+1}. Kérdés: {conversation['input_text']}")
83
+ st.write(f" Válasz: {conversation['response']}")
84
+ else:
85
+ st.info("Nincsenek előző beszélgetések az indexeléshez.")
86
+
87
  # Dokumentum feltöltése drag and drop segítségével
88
  document_file = st.file_uploader("Húzd ide a dokumentumot vagy kattints a feltöltéshez", type=["pdf", "docx", "doc"])
89
 
 
110
 
111
  # Aktuális beszélgetés hozzáadása az előző beszélgetésekhez
112
  st.session_state.previous_conversations.append({"input_text": input_text, "response": response})