Shreyas094 commited on
Commit
570f979
1 Parent(s): c2899d0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -58
app.py CHANGED
@@ -649,7 +649,6 @@ def refresh_documents():
649
  uploaded_documents = load_documents()
650
  return display_documents()
651
 
652
-
653
  # Define the checkbox outside the demo block
654
  document_selector = gr.CheckboxGroup(label="Select documents to query")
655
 
@@ -657,38 +656,9 @@ use_web_search = gr.Checkbox(label="Use Web Search", value=False)
657
 
658
  custom_placeholder = "Ask a question (Note: You can toggle between Web Search and PDF Chat in Additional Inputs below)"
659
 
660
- # Define a custom CSS for dark mode
661
- dark_mode_css = """
662
- .dark-mode {
663
- background-color: #1a1a1a;
664
- color: #ffffff;
665
- }
666
- .dark-mode .gradio-slider input[type="range"] {
667
- background-color: #4a4a4a;
668
- }
669
- .dark-mode .gradio-button {
670
- background-color: #4a4a4a;
671
- color: #ffffff;
672
- }
673
- """
674
-
675
- # JavaScript to toggle dark mode
676
- dark_mode_js = """
677
- function toggleDarkMode() {
678
- document.body.classList.toggle('dark-mode');
679
- return document.body.classList.contains('dark-mode');
680
- }
681
- """
682
-
683
- # Create a function to toggle dark mode
684
- def toggle_dark_mode(dark_mode):
685
- return not dark_mode, gr.update(value="Light Mode" if dark_mode else "Dark Mode")
686
-
687
- # Combine the existing CSS with dark mode CSS
688
- combined_css = css + dark_mode_css
689
-
690
- # Create the ChatInterface
691
- chat_interface = gr.ChatInterface(
692
  respond,
693
  additional_inputs_accordion=gr.Accordion(label="⚙️ Parameters", open=True, render=False),
694
  additional_inputs=[
@@ -701,7 +671,7 @@ chat_interface = gr.ChatInterface(
701
  title="AI-powered PDF Chat and Web Search Assistant",
702
  description="Chat with your PDFs or use web search to answer questions.",
703
  theme=gr.Theme.from_hub("JohnSmith9982/small_and_pretty"),
704
- css=combined_css,
705
  examples=[
706
  ["Tell me about the contents of the uploaded PDFs."],
707
  ["What are the main topics discussed in the documents?"],
@@ -720,18 +690,8 @@ chat_interface = gr.ChatInterface(
720
  )
721
  )
722
 
723
- # Create the main Blocks interface
724
- demo = gr.Blocks(css=combined_css)
725
-
726
  with demo:
727
- dark_mode = gr.State(False)
728
-
729
- with gr.Row():
730
- dark_mode_button = gr.Button("Dark Mode")
731
-
732
- # Add the ChatInterface
733
- chat_interface.render()
734
-
735
  gr.Markdown("## Upload and Manage PDF Documents")
736
  with gr.Row():
737
  file_input = gr.Files(label="Upload your PDF documents", file_types=[".pdf"])
@@ -746,23 +706,23 @@ with demo:
746
  update_button.click(
747
  update_vectors,
748
  inputs=[file_input, parser_dropdown],
749
- outputs=[update_output, chat_interface.additional_inputs[-1]]
750
  )
751
 
752
  # Add the refresh button functionality
753
  refresh_button.click(
754
  refresh_documents,
755
  inputs=[],
756
- outputs=[chat_interface.additional_inputs[-1]]
757
  )
758
 
759
  # Add the delete button functionality
760
  delete_button.click(
761
  delete_documents,
762
- inputs=[chat_interface.additional_inputs[-1]],
763
- outputs=[update_output, chat_interface.additional_inputs[-1]]
764
  )
765
-
766
  gr.Markdown(
767
  """
768
  ## How to use
@@ -775,14 +735,6 @@ with demo:
775
  7. Use the provided examples or ask your own questions.
776
  """
777
  )
778
-
779
- # Add the dark mode toggle functionality
780
- dark_mode_button.click(
781
- toggle_dark_mode,
782
- inputs=[dark_mode],
783
- outputs=[dark_mode, dark_mode_button],
784
- _js=dark_mode_js
785
- )
786
 
787
  if __name__ == "__main__":
788
  demo.launch(share=True)
 
649
  uploaded_documents = load_documents()
650
  return display_documents()
651
 
 
652
  # Define the checkbox outside the demo block
653
  document_selector = gr.CheckboxGroup(label="Select documents to query")
654
 
 
656
 
657
  custom_placeholder = "Ask a question (Note: You can toggle between Web Search and PDF Chat in Additional Inputs below)"
658
 
659
+ # Update the demo interface
660
+ # Update the Gradio interface
661
+ demo = gr.ChatInterface(
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
662
  respond,
663
  additional_inputs_accordion=gr.Accordion(label="⚙️ Parameters", open=True, render=False),
664
  additional_inputs=[
 
671
  title="AI-powered PDF Chat and Web Search Assistant",
672
  description="Chat with your PDFs or use web search to answer questions.",
673
  theme=gr.Theme.from_hub("JohnSmith9982/small_and_pretty"),
674
+ css=css,
675
  examples=[
676
  ["Tell me about the contents of the uploaded PDFs."],
677
  ["What are the main topics discussed in the documents?"],
 
690
  )
691
  )
692
 
693
+ # Add file upload functionality
 
 
694
  with demo:
 
 
 
 
 
 
 
 
695
  gr.Markdown("## Upload and Manage PDF Documents")
696
  with gr.Row():
697
  file_input = gr.Files(label="Upload your PDF documents", file_types=[".pdf"])
 
706
  update_button.click(
707
  update_vectors,
708
  inputs=[file_input, parser_dropdown],
709
+ outputs=[update_output, demo.additional_inputs[-1]] # Use the CheckboxGroup from additional_inputs
710
  )
711
 
712
  # Add the refresh button functionality
713
  refresh_button.click(
714
  refresh_documents,
715
  inputs=[],
716
+ outputs=[demo.additional_inputs[-1]] # Use the CheckboxGroup from additional_inputs
717
  )
718
 
719
  # Add the delete button functionality
720
  delete_button.click(
721
  delete_documents,
722
+ inputs=[demo.additional_inputs[-1]], # Use the CheckboxGroup from additional_inputs
723
+ outputs=[update_output, demo.additional_inputs[-1]]
724
  )
725
+
726
  gr.Markdown(
727
  """
728
  ## How to use
 
735
  7. Use the provided examples or ask your own questions.
736
  """
737
  )
 
 
 
 
 
 
 
 
738
 
739
  if __name__ == "__main__":
740
  demo.launch(share=True)