A comprehensive engineering playground demonstrating the evolution from basic LLM API calls to complex, autonomous Multi-Agent Systems.
This repository serves as a practical implementation of modern AI engineering concepts, including Tool Use (Function Calling), Retrieval-Augmented Generation (RAG), and State Machine Orchestration.
- Frameworks: LangGraph (Enterprise State Machines), CrewAI (Multi-Agent Orchestration)
- Memory & RAG: ChromaDB (Vector Database)
- Models: Google Gemini API (
gemini-2.5-flash,gemini-embedding-001) - Observability: LangSmith (Tracing & Debugging)
- Infrastructure: Docker, VS Code DevContainers (Isolated reproducible environment)
The repository is structured to show the progression of Agentic AI capabilities:
agent.py(ReAct Loop & Tool Use): A custom-built autonomous loop where the LLM decides when to use a terminal execution tool, parses the output, and reflects on the result.crew_demo.py(Multi-Agent Collaboration): A CrewAI implementation where multiple AI personas (Analyst & Writer) collaborate, delegate tasks, and use tools to generate technical documentation.custom_graph.py(LangGraph State Machine): A deterministic, graph-based agent architecture providing strict control over the execution flow and tool routing, fully integrated with LangSmith for observability.full_rag.py(Vector Memory & RAG): Implementation of semantic search using ChromaDB and Google Embeddings. Includes a Similarity Score Threshold to prevent LLM hallucinations when queried with out-of-context information.forgejo_agent.py&webhook_server.py(Autonomous DevOps Agent): The capstone project of this playground. It features a full-cycle AI developer that:
- Listens to Webhooks: Uses FastAPI to receive real-time events from a self-hosted Forgejo (Git) server.
- Self-Healing & Coding: Automatically analyzes new Issues, writes Python code, and performs local execution tests before committing.
- Automated Management: Updates repository files and closes tasks autonomously upon successful completion.
- Resilience: Implements exponential backoff (Tenacity) to handle API rate limits.
This project uses a DevContainer to ensure a clean, isolated environment with Docker-outside-of-Docker (DooD) capabilities. You don't need to install Python or dependencies on your local machine.
- Clone the repository.
- Open the folder in VS Code (requires the Dev Containers extension).
- Click "Reopen in Container" when prompted. The environment will build automatically.
- Create a
.envfile in the root directory and add your API keys:GEMINI_API_KEY=your_google_api_key LANGCHAIN_TRACING_V2=true LANGCHAIN_API_KEY=your_langsmith_key LANGCHAIN_PROJECT="Agentic_Architecture_Lab"
- Run any of the modules, e.g.,
python full_rag.py.
This repository is a self-directed engineering project. The architecture and learning path were heavily inspired by the syllabus of the "Multi-Agent Systems" course by RobotDreams. It represents a hands-on implementation of their theoretical concepts regarding LLM limitations, attention mechanisms, vector embeddings, and agentic orchestration.