An intelligent agentic RAG (Retrieval-Augmented Generation) system for chess knowledge, running entirely locally using Ollama.
The following sections are just an example of what I would like to implement. Everything is a working process.
- Agentic Intelligence: ReAct pattern with multi-step reasoning
- Knowledge Base: Chess theory, openings, historical games, strategies
- Tool Integration: ELO fetcher, PGN parser, game search, Stockfish (optional)
- Local First: Runs 100% locally with Ollama
- REST API: FastAPI with WebSocket support for streaming
- LLM Backend: Ollama (DeepSeek, Qwen)
- RAG Framework: LlamaIndex
- Vector DB: ChromaDB
- API: FastAPI
- Tools: python-chess, requests, stockfish (optional)
- Clone the repository:
git clone https://github.com/silvano315/chess-agentic-rag.git
cd chess-agentic-rag- Install dependencies:
uv sync- Setup Ollama:
bash scripts/setup_ollama.sh- Configure environment:
cp .env.example .env
# Edit .env with your settings- Run the API:
uv run uvicorn src.api.main:app --reloadSee docs/ARCHITECTURE.md for detailed architecture.
- M0: Setup environment
- M1: Data pipeline
- M2: Vector store + Simple RAG
- M3: Tool implementation
- M4: Agentic orchestrator
- M5: Memory system
- M6: FastAPI interface
- M7: Advanced features
See docs/milestones/ for detailed milestone documentation.
# Run this command to install dev dependecies
uv sync --extra dev
# Run all tests
uv run pytest
# Run unit tests only
uv run pytest tests/unit
# Run with coverage
uv run pytest --cov=src --cov-report=htmlMIT License - see LICENSE file.