import gradio as gr | |
from src.core.evaluator import Evaluator | |
class App: | |
def __init__(self): | |
self.interface = gr.Blocks() | |
self._build_interface() | |
def _build_interface(self): | |
with self.interface: | |
gr.Markdown("# Basic Agent Evaluation Runner") | |
gr.Markdown("Follow instructions to run and evaluate the agent.") | |
gr.LoginButton() | |
run_button = gr.Button("Run Evaluation & Submit All Answers") | |
status_output = gr.Textbox(label="Run Status / Submission Result", lines=5, interactive=False) | |
results_table = gr.DataFrame(label="Questions and Agent Answers", wrap=True) | |
run_button.click( | |
fn=App.evaluate_agent, | |
outputs=[status_output, results_table] | |
) | |
def evaluate_agent(profile: gr.OAuthProfile | None): | |
evaluator = Evaluator(profile) | |
return evaluator.run_and_submit() | |
def run(self): | |
print("Launching Gradio Interface...") | |
self.interface.launch(debug=True, share=False) |