import gradio as gr import json import os import requests from mistral_hf_wrapper import MistralInference from agent import solve_task, load_tasks API_URL = os.getenv("HF_MISTRAL_ENDPOINT") API_TOKEN = os.getenv("HF_TOKEN") USERNAME = os.getenv("HF_USERNAME") CODE_LINK = os.getenv("HF_CODE_LINK") def run_and_submit_all(): model = MistralInference(api_url=API_URL, api_token=API_TOKEN) tasks = load_tasks() answers = [] for task in tasks: try: answer = solve_task(task, model) answers.append({"task_id": task["task_id"], "submitted_answer": answer.strip()}) except Exception as e: answers.append({"task_id": task["task_id"], "submitted_answer": f"ERROR: {str(e)}"}) res = requests.post( "https://agents-course-unit4-scoring.hf.space/submit", headers={"Content-Type": "application/json"}, json={"username": USERNAME, "agent_code": CODE_LINK, "answers": answers}, ) if res.ok: return json.dumps(res.json(), indent=2) return f"Error submitting: {res.status_code} - {res.text}" gr.Interface(run_and_submit_all, inputs=[], outputs="textbox", title="GAIA Benchmark Agent Submission").launch()