Shreyas094
commited on
Commit
•
76a1b1e
1
Parent(s):
9f83d50
Update app.py
Browse files
app.py
CHANGED
@@ -231,10 +231,23 @@ def ask_question(question, temperature, top_p, repetition_penalty, web_search):
|
|
231 |
answer = memory_database[question]
|
232 |
else:
|
233 |
model = get_model(temperature, top_p, repetition_penalty)
|
|
|
234 |
|
235 |
if web_search:
|
236 |
search_results = google_search(question)
|
237 |
context_str = "\n".join([result["text"] for result in search_results if result["text"]])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
238 |
prompt_template = """
|
239 |
Answer the question based on the following web search results:
|
240 |
Web Search Results:
|
@@ -246,7 +259,6 @@ def ask_question(question, temperature, top_p, repetition_penalty, web_search):
|
|
246 |
prompt_val = ChatPromptTemplate.from_template(prompt_template)
|
247 |
formatted_prompt = prompt_val.format(context=context_str, question=question)
|
248 |
else:
|
249 |
-
embed = get_embeddings()
|
250 |
database = FAISS.load_local("faiss_database", embed, allow_dangerous_deserialization=True)
|
251 |
history_str = "\n".join([f"Q: {item['question']}\nA: {item['answer']}" for item in conversation_history])
|
252 |
|
|
|
231 |
answer = memory_database[question]
|
232 |
else:
|
233 |
model = get_model(temperature, top_p, repetition_penalty)
|
234 |
+
embed = get_embeddings()
|
235 |
|
236 |
if web_search:
|
237 |
search_results = google_search(question)
|
238 |
context_str = "\n".join([result["text"] for result in search_results if result["text"]])
|
239 |
+
|
240 |
+
# Convert web search results to Document format
|
241 |
+
web_docs = [Document(page_content=result["text"], metadata={"source": result["link"]}) for result in search_results if result["text"]]
|
242 |
+
|
243 |
+
# Load or create the vector database
|
244 |
+
if os.path.exists("faiss_database"):
|
245 |
+
database = FAISS.load_local("faiss_database", embed, allow_dangerous_deserialization=True)
|
246 |
+
database.add_documents(web_docs)
|
247 |
+
else:
|
248 |
+
database = FAISS.from_documents(web_docs, embed)
|
249 |
+
database.save_local("faiss_database")
|
250 |
+
|
251 |
prompt_template = """
|
252 |
Answer the question based on the following web search results:
|
253 |
Web Search Results:
|
|
|
259 |
prompt_val = ChatPromptTemplate.from_template(prompt_template)
|
260 |
formatted_prompt = prompt_val.format(context=context_str, question=question)
|
261 |
else:
|
|
|
262 |
database = FAISS.load_local("faiss_database", embed, allow_dangerous_deserialization=True)
|
263 |
history_str = "\n".join([f"Q: {item['question']}\nA: {item['answer']}" for item in conversation_history])
|
264 |
|