File size: 2,252 Bytes
de9a14f 341b0e8 db2d027 f437f2a 30b8a93 6bf42b4 30b8a93 f437f2a 6085a4e 6bf42b4 fe4f2dd f437f2a 1d55d4a 73e234f 51c6493 f437f2a eb40503 f437f2a 30b8a93 f437f2a 6bf42b4 51c6493 f437f2a 341b0e8 1e0339f 3719e06 555598a f4c65b4 1e0339f fc08148 3719e06 f4c65b4 aa46ac9 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
#from langchain_community.document_loaders import PyPDFLoader
from datasets import load_dataset
dataset = load_dataset("Namitg02/Test")
print(dataset)
from langchain.docstore.document import Document as LangchainDocument
#RAW_KNOWLEDGE_BASE = [LangchainDocument(page_content=["dataset"])]
from langchain.text_splitter import RecursiveCharacterTextSplitter
splitter = RecursiveCharacterTextSplitter(chunk_size=100, chunk_overlap=15,separators=["\n\n", "\n", " ", ""])
#docs = splitter.split_documents(RAW_KNOWLEDGE_BASE)
docs = splitter.create_documents(str(dataset))
from langchain_community.embeddings import HuggingFaceEmbeddings
embedding_model = HuggingFaceEmbeddings(model_name="all-MiniLM-L6-v2")
# embeddings = embedding_model.encode(docs)
from langchain_community.vectorstores import Chroma
persist_directory = 'docs/chroma/'
vectordb = Chroma.from_documents(
documents=docs,
embedding=embedding_model,
persist_directory=persist_directory
)
retriever = vectordb.as_retriever()
#docs_ss = vectordb.similarity_search(question,k=3)
#qa_chain = RetrievalQA.from_chain_type(
# models/HuggingFaceH4/zephyr-7b-beta,
# retriever=vectordb.as_retriever()
#)
from langchain.prompts import PromptTemplate
template = """Use the following pieces of context to answer the question at the end. If you don't know the answer, just say that you don't know, don't try to make up an answer. Use three sentences maximum. Keep the answer as concise as possible. Always say "thanks for asking!" at the end of the answer.
{You are a helpful dietician}
Question: {question}
Helpful Answer:"""
QA_CHAIN_PROMPT = PromptTemplate.from_template(template)
from langchain.memory import ConversationBufferMemory
memory = ConversationBufferMemory(
memory_key="chat_history",
return_messages=True
)
question = "Can I reverse Diabetes?"
print("template")
from langchain.chains import ConversationalRetrievalChain
retriever=vectordb.as_retriever()
READER_MODEL = "HuggingFaceH4/zephyr-7b-beta"
qa = ConversationalRetrievalChain.from_llm(llm=READER_MODEL,retriever=retriever,memory=memory,chain_type_kwargs={"prompt": QA_CHAIN_PROMPT})
import gradio as gr
gr.load("READER_MODEL").launch()
#result = ({"query": question})
print("qa")
|