This project explores how AI agents can be implemented using three different frameworks. Each framework has its own folder with independent logic and tools, allowing for clear comparisons and modular experimentation.
.
├── smolagents/ # Agents built with Smol Agents framework
├── llamaindex/ # Agents built with LlamaIndex for document interaction
├── langgraph/ # Agents built with LangGraph's node/edge system
├── requirements.txt # dependencies
└── README.md
This project uses the following local LLMs served through Ollama:
- Qwen2.5 7B – used in Smol Agents
- LLaMA 3.1 8B – used in LlamaIndex-based agents
- Mistral – used in LangGraph-based email workflow
These models are configured via wrappers like LiteLLMModel
, Ollama
, or ChatOllama
depending on the framework.
This playground serves as a learning and experimentation space to:
- Compare agent frameworks
- Understand how tools, memory, context, and flow are handled
- Build reusable patterns for future projects
- Lightweight, tool-based agent system
- Focuses on modularity and simplicity
- Index and query over documents
- Useful for RAG and data-aware agents
- Graph-based agent flow with custom edges
- Great for visualizing and managing complex agent logic
python -m venv .venv
Windows:
.venv\Scripts\activate
macOS/Linux:
source .venv/bin/activate
pip install -r requirements.txt
ollama serve
- Unified design for testing and comparing agents
- Simple folder-based separation
- Extendable and beginner-friendly codebase
- More examples and benchmarking might be added later
- Each folder is standalone and self-documented
A big thank you to Hugging Face for their incredible AI Agents course, which served as the inspiration and learning foundation for this project.
The concepts, workflows, and code explored here were directly influenced by the hands-on lessons and guidance provided throughout the course. Massive respect to the instructors and contributors for making advanced agent tooling approachable and practical.
Check out the individual
README.md
in each folder for detailed documentation and usage examples.