Web-sight / RAG.py
selfDotOsman's picture
done
54e8517
raw
history blame contribute delete
863 Bytes
from langchain.schema import Document
from langchain.vectorstores import Chroma
from langchain.document_loaders import TextLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.vectorstores import FAISS
from chains_and_vars import final_chain, embedder
def RAG(page_info,instruction):
#loading faze
loader = [Document(page_content=page_info)]
#indexing.splitting
splitter = RecursiveCharacterTextSplitter(chunk_size=1200,
chunk_overlap=200)
splits = splitter.split_documents(loader)
#embedding
#vector db plus retrieval mechanism/engine
vector_db = FAISS.from_documents(splits, embedder)
relevant_info = vector_db.max_marginal_relevance_search(instruction,1)
response = final_chain.run(context=relevant_info,question=instruction)
del vector_db
return response