AI-powered tutoring platform with checkpoint-based learning, adaptive assessment, and intelligent concept simplification.
# 1. Install Ollama (ollama.com) and pull model
ollama pull llama3.1
# 2. Activate environment and install dependencies
source .venv/Scripts/activate # Windows
pip install -r requirements.txt
# 3. Launch web app
streamlit run app.py # → http://localhost:8501CLI Mode: python -m src.multi_checkpoint
- Checkpoint Learning - Sequential milestone progression
- AI Assessment - Auto-generated contextual questions
- Adaptive Teaching - Feynman Technique simplification
- Document Upload - PDF, DOCX, MD, TXT support
- Custom Topics - Create personalized paths
- 70% Threshold - Mastery-based advancement
- Launch app → Select/create topic
- Upload materials (optional)
- Answer AI questions
- Score ≥70% → Next checkpoint
- Score <70% → Simplified teaching → Retry
Ollama Error:
ollama serve
ollama list && ollama pull llama3.1Environment:
OLLAMA_MODEL=llama3.1:latest
LANGCHAIN_API_KEY=your_key # Optional
```────────────┐
│Evaluate M1 │◀───│ Process Context │◀───│ Generate Questions│
└─────────────┘ └──────────────────┘ └───────────────────┘
│ │ │
▼ ▼ ▼
┌─────────────┐ ┌──────────────────┐ ┌───────────────────┐
│Process Cont.│───▶│ Generate Questions│───▶│ Verify Understanding│
└─────────────┘ └──────────────────┘ └───────────────────┘
│
▼
┌─────────────┐ ┌────────────────┐
│Check Thresh.│◀────────│ │
└─────────────┘ └────────────────┘
│
┌────────────┴─────────────┐
▼ ▼
┌─────────────┐ ┌─────────────────┐
│Complete │ │Feynman Teaching │
│Checkpoint │ │(Milestone 3) │
│(≥70%) │ │(<70%) │
└─────────────┘ └─────────────────┘learning_agent.py # Complete unified system (main file)
quick_setup.py # Automated setup script
README.md # This documentation
requirements-milestone2.txt # All dependencies
goal.json # Project goals
LICENSE # MIT License
# Auto-generated during execution:
learning_agent.log # Detailed execution logs
chroma_db/ # Vector database (ChromaDB)
config.json # Runtime configuration
The system uses sensible defaults but can be customized:
# Configure in .env file:
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=llama3.1
EMBEDDING_MODEL=sentence-transformers/all-MiniLM-L6-v2
THRESHOLD=0.7 # 70% threshold for checkpoint completion
# LangSmith Integration (Optional)
LANGCHAIN_API_KEY=your_langsmith_api_key
LANGCHAIN_ENDPOINT=https://eu.api.smith.langchain.com
LANGCHAIN_PROJECT=default
ENABLE_LANGSMITH=trueThe system includes comprehensive LangSmith integration for monitoring:
📖 Complete Technical Documentation - Architecture, API reference, workflows, development guide
MIT License - See LICENSE
Built with: LangGraph • Ollama • Streamlit • ChromaDB