Update app.py
Browse files
app.py
CHANGED
@@ -22,11 +22,10 @@ from langchain_core.runnables import RunnablePassthrough
|
|
22 |
|
23 |
def create_retriever_from_chroma(vectorstore_path="docs/chroma/", search_type='mmr', k=7, chunk_size=250, chunk_overlap=20):
|
24 |
data_path = "data"
|
25 |
-
model_name = "
|
26 |
-
model_kwargs = {'device': 'cpu'
|
|
|
27 |
encode_kwargs = {'normalize_embeddings': True}
|
28 |
-
|
29 |
-
# Initialize embeddings
|
30 |
embeddings = HuggingFaceEmbeddings(
|
31 |
model_name=model_name,
|
32 |
model_kwargs=model_kwargs,
|
@@ -104,6 +103,12 @@ def handle_userinput(user_question,retriever):
|
|
104 |
st.session_state.messages.append({"role": "user", "content": user_question})
|
105 |
st.chat_message("user").write(user_question)
|
106 |
docs = retriever.invoke(user_question)
|
|
|
|
|
|
|
|
|
|
|
|
|
107 |
|
108 |
doc_txt = [doc.page_content for doc in docs]
|
109 |
|
@@ -112,11 +117,7 @@ def handle_userinput(user_question,retriever):
|
|
112 |
st.session_state.messages.append({"role": "assistant", "content": response})
|
113 |
st.chat_message("assistant").write(response)
|
114 |
|
115 |
-
|
116 |
-
st.subheader("Your documents")
|
117 |
-
with st.spinner("Processing"):
|
118 |
-
for doc in docs:
|
119 |
-
st.write(f"Document: {doc}")
|
120 |
|
121 |
|
122 |
|
@@ -134,16 +135,18 @@ def create_conversational_rag_chain(retriever):
|
|
134 |
temperature=0.0,
|
135 |
top_p=0.9,
|
136 |
n_ctx=22000,
|
|
|
137 |
max_tokens=200,
|
138 |
repeat_penalty=1.7,
|
|
|
139 |
# callback_manager=callback_manager,
|
140 |
verbose=False,
|
141 |
)
|
142 |
|
143 |
-
|
144 |
{context}
|
145 |
|
146 |
-
|
147 |
"""
|
148 |
prompt = ChatPromptTemplate.from_template(template)
|
149 |
|
|
|
22 |
|
23 |
def create_retriever_from_chroma(vectorstore_path="docs/chroma/", search_type='mmr', k=7, chunk_size=250, chunk_overlap=20):
|
24 |
data_path = "data"
|
25 |
+
model_name = "Alibaba-NLP/gte-base-en-v1.5"
|
26 |
+
model_kwargs = {'device': 'cpu',
|
27 |
+
"trust_remote_code" : 'True'}
|
28 |
encode_kwargs = {'normalize_embeddings': True}
|
|
|
|
|
29 |
embeddings = HuggingFaceEmbeddings(
|
30 |
model_name=model_name,
|
31 |
model_kwargs=model_kwargs,
|
|
|
103 |
st.session_state.messages.append({"role": "user", "content": user_question})
|
104 |
st.chat_message("user").write(user_question)
|
105 |
docs = retriever.invoke(user_question)
|
106 |
+
|
107 |
+
with st.sidebar:
|
108 |
+
st.subheader("Your documents")
|
109 |
+
with st.spinner("Processing"):
|
110 |
+
for doc in docs:
|
111 |
+
st.write(f"Document: {doc}")
|
112 |
|
113 |
doc_txt = [doc.page_content for doc in docs]
|
114 |
|
|
|
117 |
st.session_state.messages.append({"role": "assistant", "content": response})
|
118 |
st.chat_message("assistant").write(response)
|
119 |
|
120 |
+
|
|
|
|
|
|
|
|
|
121 |
|
122 |
|
123 |
|
|
|
135 |
temperature=0.0,
|
136 |
top_p=0.9,
|
137 |
n_ctx=22000,
|
138 |
+
n_batch=2000
|
139 |
max_tokens=200,
|
140 |
repeat_penalty=1.7,
|
141 |
+
last_n_tokens_size = 200,
|
142 |
# callback_manager=callback_manager,
|
143 |
verbose=False,
|
144 |
)
|
145 |
|
146 |
+
template = """Answer the question based only on the following context:
|
147 |
{context}
|
148 |
|
149 |
+
Question: {question}
|
150 |
"""
|
151 |
prompt = ChatPromptTemplate.from_template(template)
|
152 |
|