Update app.py
Browse files
app.py
CHANGED
|
@@ -102,14 +102,14 @@ else:
|
|
| 102 |
print("Created new vector store and persisted embeddings.")
|
| 103 |
|
| 104 |
# Create a BM25 retriever from the document splits.
|
| 105 |
-
bm25_retriever = BM25Retriever.from_documents(all_splits)
|
| 106 |
ensemble_retriever = EnsembleRetriever(
|
| 107 |
-
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
|
| 113 |
retriever = ensemble_retriever
|
| 114 |
|
| 115 |
# -------------------------------
|
|
@@ -197,7 +197,7 @@ def message_and_history(message, history):
|
|
| 197 |
|
| 198 |
# Combine the most recent conversation turns, excluding the assistant's prefix.
|
| 199 |
conversation_context = "\n".join(
|
| 200 |
-
[f"{msg['role']}: {msg['content'].replace('<b>LA2050 Navigator:</b><br>', '')}" for msg in history[-
|
| 201 |
)
|
| 202 |
|
| 203 |
chain_input = {"input": conversation_context}
|
|
|
|
| 102 |
print("Created new vector store and persisted embeddings.")
|
| 103 |
|
| 104 |
# Create a BM25 retriever from the document splits.
|
| 105 |
+
bm25_retriever = BM25Retriever.from_documents(all_splits, search_kwargs={"k": 5})
|
| 106 |
ensemble_retriever = EnsembleRetriever(
|
| 107 |
+
retrievers=[
|
| 108 |
+
vectorstore.as_retriever(search_kwargs={"k": 5}),
|
| 109 |
+
bm25_retriever
|
| 110 |
+
],
|
| 111 |
+
weights=[0.8, 0.2]
|
| 112 |
+
)
|
| 113 |
retriever = ensemble_retriever
|
| 114 |
|
| 115 |
# -------------------------------
|
|
|
|
| 197 |
|
| 198 |
# Combine the most recent conversation turns, excluding the assistant's prefix.
|
| 199 |
conversation_context = "\n".join(
|
| 200 |
+
[f"{msg['role']}: {msg['content'].replace('<b>LA2050 Navigator:</b><br>', '')}" for msg in history[-3:]]
|
| 201 |
)
|
| 202 |
|
| 203 |
chain_input = {"input": conversation_context}
|