singhankur01 commited on
Commit
569b7b7
·
verified ·
1 Parent(s): 667e3a6

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -13
app.py CHANGED
@@ -28,8 +28,8 @@ from langchain.retrievers import ContextualCompressionRetriever
28
  from langchain.retrievers.document_compressors import CrossEncoderReranker
29
  from langchain_community.cross_encoders import HuggingFaceCrossEncoder
30
  from langchain.prompts import ChatPromptTemplate
31
- from langchain_nvidia_ai_endpoints.embeddings import NVIDIAEmbeddings
32
- from langchain_nvidia_ai_endpoints.reranking import NVIDIARerank
33
 
34
  import os
35
  from sentence_transformers import SentenceTransformer
@@ -68,19 +68,19 @@ async def lifespan(app: FastAPI):
68
  raise RuntimeError("CRITICAL: Missing GOOGLE_API_KEY in environment secrets!")
69
 
70
  # Load models into the shared dictionary
71
- # ml_models["embedder"] = HuggingFaceEmbeddings(
72
- # model_name="BAAI/bge-base-en-v1.5", #better but lil slower
73
- # # model_name="intfloat/e5-large-v2", #lil faster but dont know response is slow
74
- # encode_kwargs={
75
- # "batch_size": 64,
76
- # # "normalize_embeddings": True
77
- # }
78
- ml_models["embedder"] = NVIDIAEmbeddings(model="nvidia/nv-embedqa-e5-v5", nvidia_api_key=nvidia_api_key)
79
 
80
  )
81
  cross_encoder_model = HuggingFaceCrossEncoder(model_name="BAAI/bge-reranker-base")
82
  # cross_encoder_model = HuggingFaceCrossEncoder(model_name="BAAI/bge-reranker-large")
83
- ml_models["reranker_compressor"] = CrossEncoderReranker(model=cross_encoder_model, top_n=6)
84
  ml_models["llm"] = ChatGoogleGenerativeAI(
85
  # model="gemini-1.5-pro",
86
  model="gemini-2.0-flash",
@@ -174,12 +174,12 @@ async def run_hackrx(req: RunRequest):
174
  )
175
 
176
  # dense_retriever = vectorstore.as_retriever(search_type="mmr",search_kwargs={"k": 8})
177
- dense_retriever = vectorstore.as_retriever(search_type="mmr",search_kwargs={"k": 8 ,"lambda_mult": 0.5})
178
 
179
 
180
  # Create retrievers using the pre-loaded models from our ml_models dictionary
181
  keyword_retriever = BM25Retriever.from_documents(chunks)
182
- keyword_retriever.k = 5
183
  # dense_retriever = Chroma.from_documents(documents=chunks, embedding=ml_models["embedder"]).as_retriever()
184
  ensemble_retriever = EnsembleRetriever(retrievers=[keyword_retriever, dense_retriever], weights=[0.35, 0.65])
185
  ### to make it faster we are now using our built reranker thats why commenting the code below
 
28
  from langchain.retrievers.document_compressors import CrossEncoderReranker
29
  from langchain_community.cross_encoders import HuggingFaceCrossEncoder
30
  from langchain.prompts import ChatPromptTemplate
31
+ # from langchain_nvidia_ai_endpoints.embeddings import NVIDIAEmbeddings
32
+ # from langchain_nvidia_ai_endpoints.reranking import NVIDIARerank
33
 
34
  import os
35
  from sentence_transformers import SentenceTransformer
 
68
  raise RuntimeError("CRITICAL: Missing GOOGLE_API_KEY in environment secrets!")
69
 
70
  # Load models into the shared dictionary
71
+ ml_models["embedder"] = HuggingFaceEmbeddings(
72
+ model_name="BAAI/bge-base-en-v1.5", #better but lil slower
73
+ # model_name="intfloat/e5-large-v2", #lil faster but dont know response is slow
74
+ encode_kwargs={
75
+ "batch_size": 64,
76
+ # "normalize_embeddings": True
77
+ }
78
+ # ml_models["embedder"] = NVIDIAEmbeddings(model="nvidia/nv-embedqa-e5-v5", nvidia_api_key=nvidia_api_key)
79
 
80
  )
81
  cross_encoder_model = HuggingFaceCrossEncoder(model_name="BAAI/bge-reranker-base")
82
  # cross_encoder_model = HuggingFaceCrossEncoder(model_name="BAAI/bge-reranker-large")
83
+ ml_models["reranker_compressor"] = CrossEncoderReranker(model=cross_encoder_model, top_n=8)
84
  ml_models["llm"] = ChatGoogleGenerativeAI(
85
  # model="gemini-1.5-pro",
86
  model="gemini-2.0-flash",
 
174
  )
175
 
176
  # dense_retriever = vectorstore.as_retriever(search_type="mmr",search_kwargs={"k": 8})
177
+ dense_retriever = vectorstore.as_retriever(search_type="mmr",search_kwargs={"k": 12 ,"lambda_mult": 0.5})
178
 
179
 
180
  # Create retrievers using the pre-loaded models from our ml_models dictionary
181
  keyword_retriever = BM25Retriever.from_documents(chunks)
182
+ keyword_retriever.k = 8
183
  # dense_retriever = Chroma.from_documents(documents=chunks, embedding=ml_models["embedder"]).as_retriever()
184
  ensemble_retriever = EnsembleRetriever(retrievers=[keyword_retriever, dense_retriever], weights=[0.35, 0.65])
185
  ### to make it faster we are now using our built reranker thats why commenting the code below