DurgaDeepak commited on
Commit
3cf3f2d
·
verified ·
1 Parent(s): 3e6f99d

Rename meal_loader.py to chatbot_logic.py

Browse files
Files changed (2) hide show
  1. chatbot_logic.py +36 -0
  2. meal_loader.py +0 -11
chatbot_logic.py ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from langchain.embeddings import HuggingFaceEmbeddings
2
+ from langchain.vectorstores import Chroma
3
+ from langchain.llms import HuggingFaceHub
4
+ from langchain.chains import RetrievalQA
5
+ from knowledge_base import load_vectorstore
6
+ import os
7
+
8
+ # Load vectorstore with meal plan embeddings
9
+ db = load_vectorstore()
10
+ retriever = db.as_retriever()
11
+
12
+ # Load LLM (HuggingFace Inference API)
13
+ llm = HuggingFaceHub(
14
+ repo_id="mistralai/Mistral-7B-Instruct-v0.1",
15
+ model_kwargs={"temperature": 0.3, "max_new_tokens": 512}
16
+ )
17
+
18
+ # Build Retrieval QA Chain
19
+ qa_chain = RetrievalQA.from_chain_type(
20
+ llm=llm,
21
+ retriever=retriever,
22
+ chain_type="stuff"
23
+ )
24
+
25
+ def get_bot_response(query):
26
+ """
27
+ Accepts a user query, runs through RAG chain, and returns a response.
28
+ """
29
+ if not query:
30
+ return "Please ask something."
31
+
32
+ try:
33
+ result = qa_chain.run(query)
34
+ return result
35
+ except Exception as e:
36
+ return f"Error processing query: {str(e)}"
meal_loader.py DELETED
@@ -1,11 +0,0 @@
1
- import os
2
- from langchain_community.document_loaders import PyMuPDFLoader
3
-
4
- documents = []
5
- meal_dir = "meal_plans"
6
-
7
- for filename in os.listdir(meal_dir):
8
- if filename.endswith(".pdf"):
9
- path = os.path.join(meal_dir, filename)
10
- loader = PyMuPDFLoader(path)
11
- documents.extend(loader.load())