shrutikaP8497's picture
Upload 5 files
7fb1978 verified
raw
history blame
1.72 kB
import gradio as gr
import requests
import os
from agent import run_agent_on_question
from utils import get_hf_username, get_code_link
API_BASE = "https://agents-course-unit4-scoring.hf.space"
def fetch_questions():
response = requests.get(f"{API_BASE}/questions")
if response.status_code == 200:
return response.json()
else:
return []
def submit_answers(answers, username, code_link):
payload = {
"username": username,
"agent_code": code_link,
"answers": answers
}
response = requests.post(f"{API_BASE}/submit", json=payload)
if response.status_code == 200:
return response.json()
else:
return {"message": "Submission failed.", "score": 0}
def run_and_submit():
print("Fetching questions...")
questions = fetch_questions()
print(f"Fetched {len(questions)} questions")
answers = []
for q in questions:
print(f"Running agent on task {q['task_id']}")
answer = run_agent_on_question(q)
answers.append({
"task_id": q["task_id"],
"submitted_answer": answer
})
username = get_hf_username()
code_link = get_code_link()
print(f"Submitting answers as {username} with code link {code_link}")
result = submit_answers(answers, username, code_link)
print(result)
return f"Score: {result.get('score', 0)}\nMessage: {result.get('message', 'No message')}"
with gr.Blocks() as demo:
gr.Markdown("## GAIA Agent Evaluation Space")
with gr.Row():
submit_btn = gr.Button("Run Evaluation & Submit All Answers")
output = gr.Textbox(label="Submission Result")
submit_btn.click(fn=run_and_submit, outputs=output)
demo.launch()