AkshayUmesh commited on
Commit
5c553f4
·
verified ·
1 Parent(s): 046a9de

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -11
app.py CHANGED
@@ -6,17 +6,18 @@ from langchain.text_splitter import RecursiveCharacterTextSplitter
6
  from langchain_community.vectorstores import FAISS
7
  from langchain.chains import RetrievalQA
8
  from langchain_community.embeddings import HuggingFaceEmbeddings
9
- from langchain_community.llms import HuggingFaceHub
10
 
11
  # Fix Streamlit config in Docker
12
  os.environ["STREAMLIT_HOME"] = "/tmp/.streamlit"
13
 
 
14
  HF_TOKEN = os.environ.get("HUGGINGFACEHUB_API_TOKEN")
15
  if HF_TOKEN is None:
16
  st.error("⚠️ Hugging Face API token not set. Add it in Settings → Secrets.")
17
  st.stop()
18
 
19
- st.title("📄 DocuQuery - Free RAG App")
20
 
21
  # Upload PDF
22
  uploaded_file = st.file_uploader("Upload your PDF", type="pdf")
@@ -36,20 +37,19 @@ if uploaded_file:
36
  docs = text_splitter.split_documents(documents)
37
  st.write(f"Split into {len(docs)} chunks")
38
 
39
- # Embeddings and vectorstore
40
  embeddings = HuggingFaceEmbeddings(model_name="sentence-transformers/all-MiniLM-L6-v2")
41
  vectorstore = FAISS.from_documents(docs, embeddings)
42
  retriever = vectorstore.as_retriever()
43
 
44
- # LLM
45
- llm = HuggingFaceHub(
46
- repo_id="google/flan-t5-small", # smaller than base
47
- huggingfacehub_api_token=HF_TOKEN,
48
- task="text2text-generation",
49
- model_kwargs={"temperature":0, "max_length":256}
50
- )
51
-
52
 
 
53
  qa = RetrievalQA.from_chain_type(llm=llm, chain_type="stuff", retriever=retriever)
54
  st.success("Document processed! You can now ask questions.")
55
 
 
6
  from langchain_community.vectorstores import FAISS
7
  from langchain.chains import RetrievalQA
8
  from langchain_community.embeddings import HuggingFaceEmbeddings
9
+ from langchain_huggingface import HuggingFaceEndpoint
10
 
11
  # Fix Streamlit config in Docker
12
  os.environ["STREAMLIT_HOME"] = "/tmp/.streamlit"
13
 
14
+ # Get your Hugging Face API token from Secrets
15
  HF_TOKEN = os.environ.get("HUGGINGFACEHUB_API_TOKEN")
16
  if HF_TOKEN is None:
17
  st.error("⚠️ Hugging Face API token not set. Add it in Settings → Secrets.")
18
  st.stop()
19
 
20
+ st.title("📄 DocuQuery - Free RAG App with HF Models")
21
 
22
  # Upload PDF
23
  uploaded_file = st.file_uploader("Upload your PDF", type="pdf")
 
37
  docs = text_splitter.split_documents(documents)
38
  st.write(f"Split into {len(docs)} chunks")
39
 
40
+ # Create embeddings + vectorstore
41
  embeddings = HuggingFaceEmbeddings(model_name="sentence-transformers/all-MiniLM-L6-v2")
42
  vectorstore = FAISS.from_documents(docs, embeddings)
43
  retriever = vectorstore.as_retriever()
44
 
45
+ # Use HuggingFaceEndpoint (replaces deprecated HuggingFaceHub)
46
+ llm = HuggingFaceEndpoint(
47
+ endpoint_url="https://api-inference.huggingface.co/models/google/flan-t5-small",
48
+ huggingfacehub_api_token=HF_TOKEN,
49
+ task="text2text-generation"
50
+ )
 
 
51
 
52
+ # Create QA chain
53
  qa = RetrievalQA.from_chain_type(llm=llm, chain_type="stuff", retriever=retriever)
54
  st.success("Document processed! You can now ask questions.")
55