Stéphanie Kamgnia Wonkap commited on
Commit
3504448
·
1 Parent(s): 58e5d73

fixing indention in app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -51
app.py CHANGED
@@ -2,14 +2,13 @@
2
  import streamlit as st
3
  import os
4
  import yaml
5
- from langchain_nvidia_ai_endpoints import ChatNVIDIA
6
  from dotenv import load_dotenv
7
  import torch
8
  from src.generator import answer_with_rag
9
  from ragatouille import RAGPretrainedModel
10
  from src.data_preparation import split_documents
11
  from src.embeddings import init_embedding_model
12
- from langchain_nvidia_ai_endpoints.embeddings import NVIDIAEmbeddings
13
 
14
  from transformers import pipeline
15
  from langchain_community.document_loaders import PyPDFLoader
@@ -70,58 +69,21 @@ def main():
70
  st.session_state.embedding_model=NVIDIAEmbeddings()
71
  st.session_state.KNOWLEDGE_VECTOR_DATABASE= init_vectorDB_from_doc(st.session_state.docs_processed,
72
  st.session_state.embedding_model)
73
-
74
- #if os.path.exists(VECTORDB_PATH):
75
- # KNOWLEDGE_VECTOR_DATABASE = FAISS.load_local(
76
- # VECTORDB_PATH, embedding_model,
77
- # allow_dangerous_deserialization=True)
78
- #else:
79
- #KNOWLEDGE_VECTOR_DATABASE=init_vectorDB_from_doc(docs_processed, embedding_model)
80
- # KNOWLEDGE_VECTOR_DATABASE.save_local(VECTORDB_PATH)
81
-
82
-
83
- if st.button("Get Answer"):
84
- # Get the answer and relevant documents
85
- #bnb_config = BitsAndBytesConfig(
86
- #load_in_8bit=True
87
- # load_in_4bit=True,
88
- # bnb_4bit_use_double_quant=True,
89
- # bnb_4bit_quant_type="nf4",
90
- # bnb_4bit_compute_dtype=torch.bfloat16,
91
- #)
92
 
93
-
94
- llm = ChatNVIDIA(
95
- model=READER_MODEL_NAME,
96
- api_key= os.get("NVIDIA_API_KEY"),
97
- temperature=0.2,
98
- top_p=0.7,
99
- max_tokens=1024,
100
- )
101
- #tokenizer = AutoTokenizer.from_pretrained(READER_MODEL_NAME)
102
-
103
- #READER_LLM = pipeline(
104
- # model=model,
105
- # tokenizer=tokenizer,
106
- # task="text-generation",
107
- # do_sample=True,
108
- # temperature=0.2,
109
- # repetition_penalty=1.1,
110
- # return_full_text=False,
111
- # max_new_tokens=500,
112
- # token = os.getenv("HF_TOKEN")
113
- # )
114
- # RERANKER = RAGPretrainedModel.from_pretrained(RERANKER_MODEL_NAME)
115
- # num_doc_before_rerank=15
116
- # num_final_releveant_docs=5
117
- # answer, relevant_docs = answer_with_rag(query=user_query, READER_MODEL_NAME=READER_MODEL_NAME,embedding_model=embedding_model,vectorDB=KNOWLEDGE_VECTOR_DATABASE,reranker=RERANKER, llm=READER_LLM,num_doc_before_rerank=num_doc_before_rerank,num_final_relevant_docs=num_final_releveant_docs,rerank=True)
118
- #print(answer)
119
-
120
-
121
- # Display the answer
122
  st.write("### Answer:")
123
  st.write(answer)
124
-
125
  # Display the relevant documents
126
  st.write("### Relevant Documents:")
127
  for i, doc in enumerate(relevant_docs):
 
2
  import streamlit as st
3
  import os
4
  import yaml
 
5
  from dotenv import load_dotenv
6
  import torch
7
  from src.generator import answer_with_rag
8
  from ragatouille import RAGPretrainedModel
9
  from src.data_preparation import split_documents
10
  from src.embeddings import init_embedding_model
11
+ from langchain_nvidia_ai_endpoints import NVIDIAEmbeddings, ChatNVIDIA
12
 
13
  from transformers import pipeline
14
  from langchain_community.document_loaders import PyPDFLoader
 
69
  st.session_state.embedding_model=NVIDIAEmbeddings()
70
  st.session_state.KNOWLEDGE_VECTOR_DATABASE= init_vectorDB_from_doc(st.session_state.docs_processed,
71
  st.session_state.embedding_model)
72
+ if (user_query) and (st.button("Get Answer")):
73
+ num_doc_before_rerank=15
74
+ st.session_state.retriever= st.session_state.KNOWLEDGE_VECTOR_DATABASE.as_retriever(search_type="similarity",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
75
 
76
+ st.write("### Please wait while we are getting the answer.....") search_kwargs={"k": num_doc_before_rerank})
77
+ llm = ChatNVIDIA(
78
+ model=READER_MODEL_NAME,
79
+ api_key= os.get("NVIDIA_API_KEY"),
80
+ temperature=0.2,
81
+ top_p=0.7,
82
+ max_tokens=1024,
83
+ )
84
+ answer, relevant_docs = answer_with_rag(query=user_query, llm=llm, retriever=st.session_state.retriever)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
85
  st.write("### Answer:")
86
  st.write(answer)
 
87
  # Display the relevant documents
88
  st.write("### Relevant Documents:")
89
  for i, doc in enumerate(relevant_docs):