Spaces:
Sleeping
Sleeping
import gradio as gr | |
from main import ( | |
answer_query, | |
set_keys, | |
handle_file | |
) | |
from pydantic import ConfigDict | |
model_config = ConfigDict(protected_namespaces=()) | |
setting_keys = gr.Interface( | |
fn=set_keys, | |
inputs=[ | |
gr.Textbox(label="Enter your CO_API_KEY"), | |
gr.Textbox(label="Enter your LLAMA_CLOUD_API_KEY"), | |
], | |
outputs=gr.Textbox(label="Status") | |
) | |
uploading_files = gr.Interface( | |
fn=handle_file, | |
inputs=gr.File( | |
label="Upload a file", | |
file_count="single", | |
file_types=["text", ".pdf"], | |
), | |
outputs=gr.Textbox(label="Status") | |
) | |
qa = gr.Interface( | |
fn=answer_query, | |
inputs=gr.Textbox(label="Enter your question"), | |
outputs=[ | |
gr.Textbox(label="Answer"), | |
gr.Textbox(label="Relevant Nodes"), | |
], | |
title="Document Q&A System" | |
) | |
demo = gr.TabbedInterface( | |
interface_list=[setting_keys, uploading_files, qa], | |
tab_names=["Settings", "Upload File", "Q&A System"] | |
) | |
if __name__ == "__main__": | |
demo.launch() | |