--- title: Template Final Assignment emoji: 🕵🏻‍♂️ colorFrom: indigo colorTo: indigo sdk: gradio sdk_version: 5.25.2 app_file: app.py pinned: false hf_oauth: true hf_oauth_expiration_minutes: 480 --- # GAIA Agent — Final Assignment A `smolagents` CodeAgent built to answer GAIA Level 1 questions for the HF Agents course final assignment. Uses HF Inference Providers for the LLM and a small toolset for browsing, files, audio, and images. Self-consistency + verifier pass on top to maximize exact-match score. ## Where things live | File | Purpose | | ------------- | -------------------------------------------------------- | | `app.py` | Gradio UI + run-and-submit pipeline | | `agent.py` | `GaiaAgent` class — self-consistency + verifier | | `tools.py` | 8 tools (search, browse, wiki, YT, file, table, ASR, VLM)| | `config.py` | **All non-secret settings** (model IDs, knobs) | | `requirements.txt` | Python deps | ## Secrets (Space → Settings → Variables and secrets) | Secret | Purpose | | ---------------- | -------------------------------------------------------- | | `HF_TOKEN` | HF Inference Providers (uses your Pro quota) | | `SERPER_API_KEY` | Web search via serper.dev | That's it. No model IDs in secrets — edit `config.py` for those. ## Tuning Open `config.py` and change values directly: - `AGENT_MODEL_ID` — the LLM brain. Default DeepSeek-V3. - `SELF_CONSISTENCY_N` — independent attempts per question. 3 = balanced, 5 = max. - `MAX_STEPS` — agent reasoning steps per attempt. - `VLM_MODEL_ID` — vision model for image questions. Any of the constants in `config.py` can also be overridden by a Space env var of the same name, but that's optional.