Spaces:
Sleeping
Sleeping
A newer version of the Gradio SDK is available:
5.35.0
metadata
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
A general-purpose LLM agent built to solve the final assignment of the Hugging Face Agents course, which consists of 20 Level 1 questions from the GAIA benchmark.
The agent uses a variety of tools—web search, Wikipedia extraction, file parsing, audio transcription, and more—to gather evidence and reason through answers. It is built with LangGraph and LangChain, and all interactions are tracked with LangFuse.
🛠️ Technical Details
Component | Technology |
---|---|
Agent Framework | LangGraph + LangChain |
LLM | Meta LLaMA 4 Maverick 17B 128E Instruct via Groq |
Web Search | SerperAPI (Google Search), requests, Playwright for dynamic content rendering |
HTML Parsing | BeautifulSoup, markdownify to convert HTML to Markdown |
Wikipedia | Wikimedia API |
File Parsing | Unstructured (PDF, DOCX, PPTX), pandas (CSV, TSV, XLSX) |
Audio Transcription | OpenAI Whisper (base) |
Monitoring | LangFuse |
Frontend UI | Gradio, based on the Final Assignment Template |
🔐 Setup Instructions
- Clone the repository:
git clone https://github.com/phucdev/GAIA-agent.git cd GAIA-agent
- Install dependencies:
pip install -r requirements.txt
- Create API keys and set-up environment variables:
Use
env.example
to create a.env
file in the root directory and replace the placeholders with your actual API keys:GROQ_API_KEY=your_groq_api_key SERPER_API_KEY=your_serper_api_key ... (other API keys as needed)
- Optional: For rendering JS with Playwright, you may need some additional setup:
playwright install sudo apt-get install libgtk-3-0
- Run the app with:
python app.py