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.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
- Then you can run the app with:
python app.py