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() | |