Spaces:
Sleeping
Sleeping
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 LLM agent designed to solve the final assignment of the HuggingFace Agents course. The assignment consists of 20 level 1 questions of the GAIA benchmark. This agent is built with LangGraph, LangChain, and is tracked using LangFuse. It uses real-time web search, Wikipedia lookups, file parsing, image analysis, audio transcription to provide accurate answers.
π οΈ Technical Details
| Component/ Tool | Tech Used |
|---|---|
| Agent framework | LangGraph + LangChain |
| LLM | Meta LLaMA 4 Maverick 17B 128e via Groq |
| Web search | SerperAPI, requests, Playwright for rendering JSON |
| HTML parsing | BeautifulSoup, markdownify for converting HTML to Markdown |
| Wikipedia | Wikimedia API |
| File parsing | Unstructured (for PDFs, PowerPoint, Word), pandas (for CSV, TSV, Excel) |
| Audio transcription | OpenAI Whisper base |
| Agent monitoring | LangFuse |
| UI / API | 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.exampleto create a.envfile 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 - Then you can run the app with:
python app.py