ash2203 commited on
Commit
4619d02
·
verified ·
1 Parent(s): ab5a4af

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -5
app.py CHANGED
@@ -200,8 +200,8 @@ def run_chatbot(retriever, pc, llm):
200
  {context}
201
  </context>
202
 
203
- Important: You cannot quote the context in the responses. If you do that, there will be a strict penalty for it.
204
-
205
  Answer the following question:
206
 
207
  {question}""")
@@ -262,6 +262,19 @@ def process_and_chat():
262
  # Get current uploaded filenames
263
  current_uploaded_filenames = {file.name for file in uploaded_files} if uploaded_files else set()
264
 
 
 
 
 
 
 
 
 
 
 
 
 
 
265
  # Process newly uploaded files
266
  if uploaded_files:
267
  files_added = False
@@ -279,8 +292,13 @@ def process_and_chat():
279
  # Check for changes in files
280
  current_files = set(st.session_state.uploaded_files.keys())
281
 
282
- # Process documents only if files have changed
283
- if current_files != st.session_state.previous_files:
 
 
 
 
 
284
  st.session_state.previous_files = current_files
285
 
286
  if current_files:
@@ -291,7 +309,6 @@ def process_and_chat():
291
  st.session_state.processing = False
292
  else:
293
  st.warning('Please upload a file to continue')
294
- st.session_state.chat_enabled = False
295
 
296
  # If files exist and chat is enabled, show chat interface
297
  if current_files and st.session_state.chat_enabled:
@@ -319,6 +336,8 @@ def process_and_chat():
319
  st.session_state.chat_enabled = False
320
  # Clear the previous files to force reprocessing
321
  st.session_state.previous_files = set()
 
 
322
 
323
  # Call the main function
324
  process_and_chat()
 
200
  {context}
201
  </context>
202
 
203
+ Important: Don't start revealing context in your responses until its asked. First look at the question and then think if the context is needed to answer this or its a normal question, once you have judged then only answer the question.
204
+
205
  Answer the following question:
206
 
207
  {question}""")
 
262
  # Get current uploaded filenames
263
  current_uploaded_filenames = {file.name for file in uploaded_files} if uploaded_files else set()
264
 
265
+ # Check for removed files
266
+ files_to_remove = set(st.session_state.uploaded_files.keys()) - current_uploaded_filenames
267
+ if files_to_remove:
268
+ for file_name in files_to_remove:
269
+ # Remove file from session state
270
+ if file_name in st.session_state.uploaded_files:
271
+ # Delete the file from data directory
272
+ file_path = st.session_state.uploaded_files[file_name]["path"]
273
+ if os.path.exists(file_path):
274
+ os.remove(file_path)
275
+ # Remove from session state
276
+ del st.session_state.uploaded_files[file_name]
277
+
278
  # Process newly uploaded files
279
  if uploaded_files:
280
  files_added = False
 
292
  # Check for changes in files
293
  current_files = set(st.session_state.uploaded_files.keys())
294
 
295
+ # If files have changed (added or removed), reset chat and process documents
296
+ if current_files != st.session_state.previous_files or files_to_remove:
297
+ # Reset chat state
298
+ st.session_state.chat_enabled = False
299
+ if "messages" in st.session_state:
300
+ del st.session_state.messages
301
+
302
  st.session_state.previous_files = current_files
303
 
304
  if current_files:
 
309
  st.session_state.processing = False
310
  else:
311
  st.warning('Please upload a file to continue')
 
312
 
313
  # If files exist and chat is enabled, show chat interface
314
  if current_files and st.session_state.chat_enabled:
 
336
  st.session_state.chat_enabled = False
337
  # Clear the previous files to force reprocessing
338
  st.session_state.previous_files = set()
339
+ if "messages" in st.session_state:
340
+ del st.session_state.messages
341
 
342
  # Call the main function
343
  process_and_chat()