captain-awesome commited on
Commit
dd115cf
·
1 Parent(s): b64d852

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +58 -91
app.py CHANGED
@@ -115,24 +115,24 @@ def load_model():
115
  )
116
  return llm
117
 
118
- def load_document(
119
- # file_path: str,
120
- uploaded_files: list,
121
- mapping: dict = FILE_LOADER_MAPPING,
122
- default_loader: BaseLoader = UnstructuredFileLoader,
123
- ) -> Document:
124
- loaded_documents = []
125
- for uploaded_file in uploaded_files:
126
- # Choose loader from mapping, load default if no match found
127
- # ext = "." + uploaded_files.rsplit(".", 1)[-1]
128
- ext = os.path.splitext(uploaded_file.name)[-1][1:].lower()
129
- if ext in mapping:
130
- loader_class, loader_args = mapping[ext]
131
- loader = loader_class(uploaded_file, **loader_args)
132
- else:
133
- loader = default_loader(uploaded_file)
134
- loaded_documents.extend(loader.load())
135
- return loaded_documents
136
 
137
  def create_vector_database(loaded_documents):
138
  # DB_DIR: str = os.path.join(ABS_PATH, "db")
@@ -351,78 +351,45 @@ def retrieve_bot_answer(query):
351
 
352
  # from your_module import load_model, set_custom_prompt, set_custom_prompt_condense, create_vector_database, retrieve_bot_answer
353
 
354
- # def main():
355
- # st.title("Docuverse")
356
-
357
- # # Upload files
358
- # uploaded_files = st.file_uploader("Upload your documents", type=["pdf", "md", "txt", "csv", "py", "epub", "html", "ppt", "pptx", "doc", "docx", "odt", "ipynb"], accept_multiple_files=True)
359
-
360
- # if uploaded_files:
361
- # # Process uploaded files
362
- # for uploaded_file in uploaded_files:
363
- # st.write(f"Uploaded: {uploaded_file.name}")
364
- # st.write(f"Uploaded: {type(uploaded_file)}")
365
-
366
- # st.write("Chat with the Document:")
367
- # query = st.text_input("Ask a question:")
368
-
369
- # if st.button("Get Answer"):
370
- # if query:
371
- # # Load model, set prompts, create vector database, and retrieve answer
372
- # try:
373
- # llm = load_model()
374
- # prompt = set_custom_prompt()
375
- # CONDENSE_QUESTION_PROMPT = set_custom_prompt_condense()
376
- # loaded_documents = load_document(uploaded_files)
377
- # db = create_vector_database(loaded_documents)
378
- # response = retrieve_bot_answer(query)
379
-
380
- # # Display bot response
381
- # st.write("Bot Response:")
382
- # st.write(response)
383
- # except Exception as e:
384
- # st.error(f"An error occurred: {str(e)}")
385
- # else:
386
- # st.warning("Please enter a question.")
387
-
388
- # if __name__ == "__main__":
389
- # main()
390
-
391
-
392
-
393
-
394
- app = GradiOApp(title="Docuverse")
395
-
396
- # Upload files
397
- uploaded_files = app.file_uploader("Upload your documents", types=["pdf", "md", "txt", "csv", "py", "epub", "html", "ppt", "pptx", "doc", "docx", "odt", "ipynb"], multiple=True)
398
-
399
- if uploaded_files:
400
- # Process uploaded files
401
- for uploaded_file in uploaded_files:
402
- print(f"Uploaded: {uploaded_file.name}")
403
- print(f"Uploaded: {type(uploaded_file)}")
404
-
405
- print("Chat with the Document:")
406
- query = app.text_input("Ask a question:")
407
-
408
- if app.button("Get Answer"):
409
- if query:
410
- # Load model, set prompts, create vector database, and retrieve answer
411
- try:
412
- llm = load_model()
413
- prompt = set_custom_prompt()
414
- CONDENSE_QUESTION_PROMPT = set_custom_prompt_condense()
415
- loaded_documents = load_document(uploaded_files)
416
- db = create_vector_database(loaded_documents)
417
- response = retrieve_bot_answer(query)
418
-
419
- # Display bot response
420
- print("Bot Response:")
421
- print(response)
422
- except Exception as e:
423
- print(f"An error occurred: {str(e)}")
424
- else:
425
- print("Please enter a question.")
426
 
427
  if __name__ == "__main__":
428
- app.run()
 
115
  )
116
  return llm
117
 
118
+ # def load_document(
119
+ # # file_path: str,
120
+ # uploaded_files: list,
121
+ # mapping: dict = FILE_LOADER_MAPPING,
122
+ # default_loader: BaseLoader = UnstructuredFileLoader,
123
+ # ) -> Document:
124
+ # loaded_documents = []
125
+ # for uploaded_file in uploaded_files:
126
+ # # Choose loader from mapping, load default if no match found
127
+ # # ext = "." + uploaded_files.rsplit(".", 1)[-1]
128
+ # ext = os.path.splitext(uploaded_file.name)[-1][1:].lower()
129
+ # if ext in mapping:
130
+ # loader_class, loader_args = mapping[ext]
131
+ # loader = loader_class(uploaded_file, **loader_args)
132
+ # else:
133
+ # loader = default_loader(uploaded_file)
134
+ # loaded_documents.extend(loader.load())
135
+ # return loaded_documents
136
 
137
  def create_vector_database(loaded_documents):
138
  # DB_DIR: str = os.path.join(ABS_PATH, "db")
 
351
 
352
  # from your_module import load_model, set_custom_prompt, set_custom_prompt_condense, create_vector_database, retrieve_bot_answer
353
 
354
+ def main():
355
+ st.title("Docuverse")
356
+
357
+ # Upload files
358
+ uploaded_files = st.file_uploader("Upload your documents", type=["pdf", "md", "txt", "csv", "py", "epub", "html", "ppt", "pptx", "doc", "docx", "odt", "ipynb"], accept_multiple_files=True)
359
+
360
+ if uploaded_files:
361
+ # Process uploaded files
362
+ for uploaded_file in uploaded_files:
363
+ st.write(f"Uploaded: {uploaded_file.name}")
364
+ st.write(f"Uploaded: {type(uploaded_file)}")
365
+ ext = os.path.splitext(uploaded_file.name)[-1][1:].lower()
366
+ if ext in FILE_LOADER_MAPPING:
367
+ loader_class, loader_args = FILE_LOADER_MAPPING[ext]
368
+ loader = loader_class(uploaded_file, **loader_args)
369
+ else:
370
+ loader = UnstructuredFileLoader(uploaded_file)
371
+ loaded_documents.extend(loader.load())
372
+
373
+ st.write("Chat with the Document:")
374
+ query = st.text_input("Ask a question:")
375
+
376
+ if st.button("Get Answer"):
377
+ if query:
378
+ # Load model, set prompts, create vector database, and retrieve answer
379
+ try:
380
+ llm = load_model()
381
+ prompt = set_custom_prompt()
382
+ CONDENSE_QUESTION_PROMPT = set_custom_prompt_condense()
383
+ db = create_vector_database(loaded_documents)
384
+ response = retrieve_bot_answer(query)
385
+
386
+ # Display bot response
387
+ st.write("Bot Response:")
388
+ st.write(response)
389
+ except Exception as e:
390
+ st.error(f"An error occurred: {str(e)}")
391
+ else:
392
+ st.warning("Please enter a question.")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
393
 
394
  if __name__ == "__main__":
395
+ main()