ffreemt
Update main.py
e831b10
raw
history blame
1.62 kB
"""Test."""
# pylint: disable=invalid-name, unused-import, broad-except,
from copy import deepcopy
import gradio as gr
from app import ingest, ns, ns_initial, process_files, upload_files, respond
from load_api_key import load_api_key, pk_base, sk_base
from loguru import logger
with gr.Blocks(theme=gr.themes.Soft()) as demo:
with gr.Tab("Upload files"):
# Upload files and generate vectorstore
with gr.Row():
file_output = gr.File()
# file_output = gr.Text()
# file_output = gr.DataFrame()
upload_button = gr.UploadButton(
"Click to upload",
# file_types=["*.pdf", "*.epub", "*.docx"],
file_count="multiple",
)
with gr.Row():
text2 = gr.Textbox("Gen embedding")
process_btn = gr.Button("Click to embed")
reset_btn = gr.Button("Reset everything", visible=False)
with gr.Tab("Query docs"):
# interactive chat
chatbot = gr.Chatbot()
msg = gr.Textbox(label="Query")
clear = gr.Button("Clear")
# actions
def reset_all():
"""Reset ns."""
# global ns
globals().update(**{"ns": deepcopy(ns_initial)})
return f"reset done: ns={ns}"
reset_btn.click(reset_all, [], text2)
upload_button.upload(upload_files, upload_button, file_output)
process_btn.click(process_files, [], text2)
msg.submit(respond, [msg, chatbot], [msg, chatbot])
clear.click(lambda: None, None, chatbot, queue=False)
if __name__ == "__main__":
demo.queue(concurrency_count=20).launch()