Update app.py
Browse files
app.py
CHANGED
@@ -19,7 +19,8 @@ from HTML_templates import css, bot_template, user_template
|
|
19 |
from langchain_core.output_parsers import StrOutputParser
|
20 |
from langchain_core.runnables import RunnablePassthrough
|
21 |
from langchain import hub
|
22 |
-
|
|
|
23 |
|
24 |
lang_api_key = os.getenv("lang_api_key")
|
25 |
|
@@ -31,7 +32,7 @@ os.environ["LANGCHAIN_PROJECT"] = "Chat with multiple PDFs"
|
|
31 |
|
32 |
|
33 |
def create_retriever_from_chroma(vectorstore_path="docs/chroma/", search_type='mmr', k=7, chunk_size=250, chunk_overlap=20):
|
34 |
-
data_path = "data"
|
35 |
model_name = "Alibaba-NLP/gte-base-en-v1.5"
|
36 |
model_kwargs = {'device': 'cpu',
|
37 |
"trust_remote_code" : 'True'}
|
@@ -85,6 +86,13 @@ def create_retriever_from_chroma(vectorstore_path="docs/chroma/", search_type='m
|
|
85 |
|
86 |
retriever=vectorstore.as_retriever(search_type = search_type, search_kwargs={"k": k})
|
87 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
rephrase_prompt = hub.pull("langchain-ai/chat-langchain-rephrase")
|
89 |
|
90 |
ha_retriever = create_history_aware_retriever(llm, retriever, rephrase_prompt)
|
|
|
19 |
from langchain_core.output_parsers import StrOutputParser
|
20 |
from langchain_core.runnables import RunnablePassthrough
|
21 |
from langchain import hub
|
22 |
+
from langchain.retrievers import ContextualCompressionRetriever
|
23 |
+
from langchain.retrievers.document_compressors import LLMChainExtractor
|
24 |
|
25 |
lang_api_key = os.getenv("lang_api_key")
|
26 |
|
|
|
32 |
|
33 |
|
34 |
def create_retriever_from_chroma(vectorstore_path="docs/chroma/", search_type='mmr', k=7, chunk_size=250, chunk_overlap=20):
|
35 |
+
data_path = "data/"
|
36 |
model_name = "Alibaba-NLP/gte-base-en-v1.5"
|
37 |
model_kwargs = {'device': 'cpu',
|
38 |
"trust_remote_code" : 'True'}
|
|
|
86 |
|
87 |
retriever=vectorstore.as_retriever(search_type = search_type, search_kwargs={"k": k})
|
88 |
|
89 |
+
compressor = LLMChainExtractor.from_llm(llm)
|
90 |
+
|
91 |
+
compression_retriever = ContextualCompressionRetriever(
|
92 |
+
base_compressor=compressor,
|
93 |
+
base_retriever=retriever
|
94 |
+
)
|
95 |
+
|
96 |
rephrase_prompt = hub.pull("langchain-ai/chat-langchain-rephrase")
|
97 |
|
98 |
ha_retriever = create_history_aware_retriever(llm, retriever, rephrase_prompt)
|