nivra-ai-agent / agent /rag_retriever.py
datdevsteve's picture
Update agent/rag_retriever.py
2bdd8d2 verified
from langchain_chroma import Chroma
from langchain_huggingface import HuggingFaceEmbeddings
from langchain_text_splitters import RecursiveCharacterTextSplitter
import os
class NivraRAGRetriever:
def __init__(self, chroma_path: str = "./chroma_db"):
self.embeddings = HuggingFaceEmbeddings(
model_name="sentence-transformers/all-MiniLM-L6-v2"
)
self.vectorstore = Chroma(
collection_name="nivra_medical_docs",
embedding_function=self.embeddings
)
self.retriever = self.vectorstore.as_retriever(
search_type="similarity_score_threshold",
search_kwargs={"score_threshold": 0.7, "k":5}
)
def getRelevantDocs(self, query:str):
return self.retriever.invoke(query)