Amna2024 commited on
Commit
d6e43ef
·
verified ·
1 Parent(s): 2f4183b

Create Retriever.py

Browse files
Files changed (1) hide show
  1. RAG/Retriever.py +22 -0
RAG/Retriever.py ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from langchain_chroma import Chroma
2
+ from langchain_core.vectorstores import VectorStore
3
+ from task1 import LangchainGeminiWrapper #This is from your old task1 file
4
+ import chromadb
5
+
6
+ def load_vector_store(gemini_key: str, persist_directory: str) -> VectorStore:
7
+ gemini_embedder = LangchainGeminiWrapper(api_key=gemini_key)
8
+ return Chroma(
9
+ collection_name="example_collection",
10
+ embedding_function=gemini_embedder,
11
+ persist_directory=persist_directory
12
+ )
13
+
14
+ class Retriever:
15
+ def __init__(self, vectordb: VectorStore):
16
+ self.vectordb = vectordb
17
+
18
+ def retrieve_documents(self, query: str, k: int = 7) -> str:
19
+ docs = self.vectordb.similarity_search(query, k=k)
20
+ return "\nRetrieved documents:\n" + "".join(
21
+ [f"===== Document {str(i)} =====\n" + doc.page_content for i, doc in enumerate(docs)]
22
+ )