Spaces:
Build error
Build error
| #Complete code for rag.py | |
| from langchain.llms import LlamaCpp | |
| from langchain.embeddings import HuggingFaceEmbeddings | |
| from langchain.vectorstores.chroma import Chroma | |
| from langchain.prompts import ChatPromptTemplate | |
| from langchain.schema.runnable import RunnablePassthrough | |
| llm = LlamaCpp( | |
| model_path="llama-2-7b-chat.Q5_K_M.gguf", | |
| temperature=0.75, | |
| max_tokens=2000, | |
| top_p=1, | |
| verbose=True, | |
| ) | |
| embeddings = HuggingFaceEmbeddings(model_name="all-MiniLM-L6-v2") | |
| vectorstore = Chroma( | |
| persist_directory="data", | |
| embedding_function=embeddings | |
| ) | |
| retriever = vectorstore.as_retriever(search_kwargs={"k": 1}) | |
| template = """Answer the question based only on the following context | |
| {context} | |
| Question:{question} | |
| Answer: | |
| """ | |
| prompt = ChatPromptTemplate.from_template(template) | |
| chain = ( | |
| {"context": retriever, "question": RunnablePassthrough()} | |
| | prompt | |
| | llm | |
| ) | |
| for chunk in chain.stream("What is a chat model?"): | |
| print(chunk, end="", flush=True) |