How decodingai-magazine/second-brain-ai-assistant-course works
This repository is a hands-on Second Brain AI course with offline knowledge processing, an online agentic assistant, and a standalone RAG workshop implementation. The user-facing workflow is to collect and prepare personal documents, index them for retrieval, then ask questions or request summaries through an assistant. The graph preserves the documented data, retrieval, agent, evaluation, and workshop capabilities. Several subsystems are represented from the README and file tree; their internal connections are left unverified where source was not sampled.
Main entry points: ingestion.py Workshop ingestion · app.py Assistant app · service.py Document database · compute_rag_vector_index.py Vector indexing
Components 20
Offline knowledge pipeline
- Notion collection
apps/second-brain-offline/src/second_brain_offline/infrastructure/notion - Document crawling
apps/second-brain-offline/src/second_brain_offline/application/crawlers/crawl4ai.py - Quality scoring
apps/second-brain-offline/steps/etl/add_quality_score.py - Document database
apps/second-brain-offline/src/second_brain_offline/infrastructure/mongo/service.py - Vector indexing
apps/second-brain-offline/pipelines/compute_rag_vector_index.py - Dataset generation
apps/second-brain-offline/steps/generate_dataset
Online assistant
- Assistant app
apps/second-brain-online/tools/app.py - Agent workflows
apps/second-brain-online/src/second_brain_online/application/agents/agents.py - Agent tools
apps/second-brain-online/src/second_brain_online/application/agents/tools - RAG evaluation
apps/second-brain-online/src/second_brain_online/application/evaluation
RAG components
- Offline RAG tools
apps/second-brain-offline/tools/rag.py - Online retrieval
apps/second-brain-online/src/second_brain_online/application/rag/retrievers.py - Embedding models
apps/second-brain-online/src/second_brain_online/application/rag/embeddings.py
RAG workshop
- Workshop ingestion
workshops/rag/solution/src/rag_workshop/ingestion.py - Workshop quality
workshops/rag/solution/src/rag_workshop/quality.py - Workshop retriever
workshops/rag/solution/src/rag_workshop/retrievers.py - Workshop MongoDB
workshops/rag/solution/src/rag_workshop/mongodb.py - RAG answer generation
workshops/rag/solution/src/rag_workshop/generation.py
Other components
- Assistant user
- Workshop user
Connections 17
- Assistant user → Assistant app: asks
README.md - Assistant app → Agent workflows: starts
apps/second-brain-online/tools/app.py - Agent workflows → Agent tools: uses tools
- Agent tools → Online retrieval: retrieves context
- Online retrieval → Embedding models: creates embeddings
apps/second-brain-online/src/second_brain_online/application/rag/retrievers.py - Assistant app → RAG evaluation: evaluates responses
- Notion collection → Document crawling: supplies documents
- Document crawling → Quality scoring: normalizes content
README.md - Quality scoring → Document database: ingests documents
README.md - Vector indexing → Document database: fetches documents
apps/second-brain-offline/pipelines/compute_rag_vector_index.py - Vector indexing → Offline RAG tools: builds index
- Document database → Dataset generation: provides documents
- Workshop user → RAG answer generation: asks questions
- RAG answer generation → Workshop retriever: retrieves context
workshops/rag/solution/src/rag_workshop/generation.py - Workshop ingestion → Workshop quality: scores documents
workshops/rag/solution/src/rag_workshop/ingestion.py - Workshop ingestion → Workshop retriever: creates retriever
workshops/rag/solution/src/rag_workshop/ingestion.py - Workshop ingestion → Workshop MongoDB: stores documents
workshops/rag/solution/src/rag_workshop/ingestion.py