How gold-pps/python-learning works
This is a personal Python learning repository focused on Agent development, with notes-qa as its main product: a CLI accepts questions, runs an Agent with local-note tools, and returns cited answers through DeepSeek. The repository also contains a separate, optional RAG workflow: parse and chunk a corpus, build an incremental vector index, then evaluate retrieval and answer quality. Learning scripts demonstrate Agent concepts such as tools, memory, handoffs, guardrails, and evaluation. The graph reflects README capabilities; RAG-to-Agent integration is not established by the sampled source, so those flows remain separate.
Main entry points: index.py Index Builder · agent.py QA Agent · rag_answer_eval.py Answer Evaluation · main.py Interactive CLI
Components 22
Agent Learning
- Agent Exercises
agent-learning/04_multi_agent_handoff.py - Shared Setup
agent-learning/_common.py
Notes Assistant
- Interactive CLI
agent-learning/notes-qa/main.py - QA Agent
agent-learning/notes-qa/agent.py - Note Tools
agent-learning/notes-qa/tools.py - Model Configuration
agent-learning/notes-qa/config.py
RAG Retrieval
- RAG Corpus
- Document Parsers
agent-learning/notes-qa/rag/parsers.py - Chunking
agent-learning/notes-qa/rag/chunker.py - Embedding
agent-learning/notes-qa/rag/embedder.py - Index Builder
agent-learning/notes-qa/rag/index.py - RAG Index
- Hybrid Retriever
agent-learning/notes-qa/rag/retriever.py - LLM Reranker
agent-learning/notes-qa/rag/rerank.py
Evaluation
- Retrieval Cases
agent-learning/notes-qa/eval/retrieval_cases.py - Retrieval Evaluation
agent-learning/notes-qa/eval/rag_eval.py - Answer Evaluation
agent-learning/notes-qa/eval/rag_answer_eval.py - Answer Judge
agent-learning/notes-qa/eval/answer_judge.py
Other components
- Learner
- Questioner
- Markdown Notes
- DeepSeek API
Connections 23
- Learner → Agent Exercises: runs examples
- Agent Exercises → Shared Setup: imports setup
- Questioner → Interactive CLI: asks question
- Interactive CLI → QA Agent: runs Agent
- QA Agent → Note Tools: dispatches tools
- Note Tools → Markdown Notes: reads and searches
- Interactive CLI → Model Configuration: uses limits
- QA Agent → Model Configuration: uses model config
- Model Configuration → DeepSeek API: configures endpoint
- QA Agent → DeepSeek API: requests completion
- RAG Corpus → Document Parsers: provides documents
- Index Builder → Document Parsers: parses files
- Index Builder → Chunking: chunks parsed text
- Index Builder → Embedding: encodes chunks
- Index Builder → RAG Index: writes index files
- Hybrid Retriever → RAG Index: loads index
- Retrieval Cases → Retrieval Evaluation: supplies cases
- Retrieval Evaluation → Hybrid Retriever: measures search
- Retrieval Evaluation → LLM Reranker: optionally reranks
- Answer Evaluation → Hybrid Retriever: retrieves context
- Answer Evaluation → DeepSeek API: requests answers
- Answer Evaluation → Answer Judge: judges answers
- Retrieval Cases → Answer Evaluation: supplies cases