RAG Pipeline Architect
Rag architect

Use when the user asks to design a RAG pipeline, choose a chunking strategy or embedding model, pick a vector database, or evaluate retrieval quality (precision@k, recall@k, NDCG). Examples: 'design a RAG system for our docs', 'what…
--- name: "rag-architect" description: "Use when the user asks to design a RAG pipeline, choose a chunking strategy or embedding model, pick a vector database, or evaluate retrieval quality (precision@k, recall@k, NDCG). Examples: 'design a RAG system for our docs', 'what chunk size should I use for this corpus', 'evaluate my retriever against ground truth'. NOT for general LLM cost tuning (use llm-cost-optimizer) or agent loops over retrieval (use agenthub)." --- # RAG Architect Design, tune, and evaluate production RAG pipelines with three deterministic tools. Run the tools against the actual corpus and requirements — do not pick chunk sizes or databases by intuition. ## Hard rules 1. **Never present model names or vendor prices as current facts.** Embedding models and vector-DB pricing rot in months. Recommend a *tier* (see table below), name a current-generation candidate, and tell the user to verify against the provider's live pricing page. 2. **Every design ends with an evaluation run.** A RAG design without `retrieval_evaluator.py` numbers is a hypothesis, not a deliverable. 3. **Chunking is corpus-driven.** Run `chunking_optimizer.py` on the real documents before choosing a strategy. ## Embedding model tiers (pattern, not price list) | Tier | Current-generation examples (verify before use) | When |
Overview
Design, tune, and evaluate production RAG pipelines with three deterministic tools. Run the tools against the actual corpus and requirements — do not pick chunk sizes or databases by intuition.
Manual install (npx, ZIP)
npx skills add alirezarezvani/claude-skills --skill rag-architect -g -a claude-codemkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/alirezarezvani/claude-skills/tar.gz/19392f7a0826 \
| tar -xz -C ~/.claude/skills --strip-components=3 claude-skills-19392f7a0826/engineering/skills/rag-architectNew-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/fa145efc46bb4fa19d49/rag-architect.zip" -OutFile "$env:TEMP\rag-architect.zip"; Expand-Archive "$env:TEMP\rag-architect.zip" -DestinationPath "$HOME\.claude\skills" -ForceConnects with Agent Alley MCP · agentalley.io/mcp
Files included
SKILL.md4.4 KBchunking_optimizer.py28.8 KBrag_pipeline_designer.py27.6 KBretrieval_evaluator.py23.0 KBreferences/3 files · 37.2 KB
Read the files here
alirezarezvani/
Show the full text72 lines
RAG Architect
Design, tune, and evaluate production RAG pipelines with three deterministic tools. Run the tools against the actual corpus and requirements — do not pick chunk sizes or databases by intuition.
Hard rules
- Never present model names or vendor prices as current facts. Embedding models and vector-DB pricing rot in months. Recommend a tier (see table below), name a current-generation candidate, and tell the user to verify against the provider's live pricing page.
- Every design ends with an evaluation run. A RAG design without
retrieval_evaluator.pynumbers is a hypothesis, not a deliverable. - Chunking is corpus-driven. Run
chunking_optimizer.pyon the real documents before choosing a strategy.
Embedding model tiers (pattern, not price list)
| Tier | Current-generation examples (verify before use) | When |
|---|---|---|
| Fast / self-hosted | all-MiniLM-L6-v2, bge-small |
Cost-sensitive, small scale, real-time |
| Balanced open | all-mpnet-base-v2, bge-large, e5-large |
Quality without API dependency |
| Quality API | text-embedding-3-large, voyage-3-large |
Accuracy-priority general retrieval |
| Code | voyage-code-3, CodeBERT-family |
Code search corpora |
Pricing discipline: build the cost model with a placeholder table — columns model | $/1M tokens (verify) | dims | as-of date — and have the user fill in live numbers. Same for vector DBs (Pinecone/Weaviate/Qdrant/Chroma/pgvector): the selection criteria (managed vs self-hosted, scale, filtering, existing Postgres) are durable; the dollar figures are not.
Workflow
All paths relative to this skill folder. Outputs chain: corpus analysis → design → evaluation.
1. Analyze the corpus and pick chunking
python3 chunking_optimizer.py /path/to/docs --extensions .md .txt -o chunking.json
Emits chunking.json with corpus_info, per-strategy strategy_results, a recommendation, and sample_chunks. Use recommendation.strategy and its config; show the user 2-3 sample_chunks so they can sanity-check boundaries.
2. Design the pipeline from requirements
Write a requirements JSON with these keys (all required): document_types[], document_count, avg_document_size (chars), queries_per_day, query_patterns[], latency_requirement, budget_monthly, accuracy_priority (0-1), cost_priority (0-1), maintenance_complexity.
python3 rag_pipeline_designer.py requirements.json -o design.json
Emits design.json with chunking, embedding, vector_db, retrieval, reranking, evaluation, total_cost, architecture_diagram (mermaid), and config_templates. Present the diagram; label every cost_monthly figure as an estimate to verify (rule 1).
3. Evaluate retrieval quality
Prepare queries.json (list of {id, text} or {"queries": [...]}) and ground_truth.json ({query_id: [relevant_doc_ids]}), then:
python3 retrieval_evaluator.py queries.json /path/to/docs ground_truth.json --k-values 3 5 10 -o eval.json
Reports precision@k, recall@k, MRR, NDCG@k, plus poor_precision_examples / poor_recall_examples for failure analysis.
4. Verification loop
The design is done only when:
eval.jsonmeets targets — typical floors: precision@5 ≥ 0.8, recall@10 ≥ 0.85 (set per use case with the user).- If below target: inspect the poor-example lists, then change one variable (chunking strategy → re-run step 1; embedding tier; add reranking; hybrid retrieval) and re-run step 3. Repeat.
- Every recommended model/price in the deliverable carries a "verify current pricing/model availability" note with an as-of date.
References
references/chunking_strategies_comparison.md— strategy trade-offs the optimizer implementsreferences/embedding_model_benchmark.md— benchmark methodology (dated snapshot; staleness warning at top)references/rag_evaluation_framework.md— metric definitions (faithfulness, relevance, precision/recall/NDCG)
| 1 | |
| 2 | name "rag-architect" |
| 3 | description "Use when the user asks to design a RAG pipeline, choose a chunking strategy or embedding model, pick a vector database, or evaluate retrieval quality (precision@k, recall@k, NDCG). Examples: 'design a RAG system for our docs', 'what chunk size should I use for this corpus', 'evaluate my retriever against ground truth'. NOT for general LLM cost tuning (use llm-cost-optimizer) or agent loops over retrieval (use agenthub)." |
| 4 | |
| 5 | |
| 6 | # RAG Architect |
| 7 | |
| 8 | Design, tune, and evaluate production RAG pipelines with three deterministic tools. Run the tools against the actual corpus and requirements — do not pick chunk sizes or databases by intuition. |
| 9 | |
| 10 | ## Hard rules |
| 11 | |
| 12 | **Never present model names or vendor prices as current facts.** Embedding models and vector-DB pricing rot in months. Recommend a *tier* (see table below), name a current-generation candidate, and tell the user to verify against the provider's live pricing page. |
| 13 | **Every design ends with an evaluation run.** A RAG design without `retrieval_evaluator.py` numbers is a hypothesis, not a deliverable. |
| 14 | **Chunking is corpus-driven.** Run `chunking_optimizer.py` on the real documents before choosing a strategy. |
| 15 | |
| 16 | ## Embedding model tiers (pattern, not price list) |
| 17 | |
| 18 | | Tier | Current-generation examples (verify before use) | When | |
| 19 | |---|---|---| |
| 20 | | Fast / self-hosted | `all-MiniLM-L6-v2`, `bge-small` | Cost-sensitive, small scale, real-time | |
| 21 | | Balanced open | `all-mpnet-base-v2`, `bge-large`, `e5-large` | Quality without API dependency | |
| 22 | | Quality API | `text-embedding-3-large`, `voyage-3-large` | Accuracy-priority general retrieval | |
| 23 | | Code | `voyage-code-3`, CodeBERT-family | Code search corpora | |
| 24 | |
| 25 | **Pricing discipline:** build the cost model with a placeholder table — columns `model | $/1M tokens (verify) | dims | as-of date` — and have the user fill in live numbers. Same for vector DBs (Pinecone/Weaviate/Qdrant/Chroma/pgvector): the selection criteria (managed vs self-hosted, scale, filtering, existing Postgres) are durable; the dollar figures are not. |
| 26 | |
| 27 | ## Workflow |
| 28 | |
| 29 | All paths relative to this skill folder. Outputs chain: corpus analysis → design → evaluation. |
| 30 | |
| 31 | ### 1. Analyze the corpus and pick chunking |
| 32 | |
| 33 | |
| 34 | python3 chunking_optimizer.py /path/to/docs --extensions .md .txt -o chunking.json |
| 35 | |
| 36 | |
| 37 | Emits `chunking.json` with `corpus_info`, per-strategy `strategy_results`, a `recommendation`, and `sample_chunks`. Use `recommendation.strategy` and its config; show the user 2-3 `sample_chunks` so they can sanity-check boundaries. |
| 38 | |
| 39 | ### 2. Design the pipeline from requirements |
| 40 | |
| 41 | Write a requirements JSON with these keys (all required): `document_types[]`, `document_count`, `avg_document_size` (chars), `queries_per_day`, `query_patterns[]`, `latency_requirement`, `budget_monthly`, `accuracy_priority` (0-1), `cost_priority` (0-1), `maintenance_complexity`. |
| 42 | |
| 43 | |
| 44 | python3 rag_pipeline_designer.py requirements.json -o design.json |
| 45 | |
| 46 | |
| 47 | Emits `design.json` with `chunking`, `embedding`, `vector_db`, `retrieval`, `reranking`, `evaluation`, `total_cost`, `architecture_diagram` (mermaid), and `config_templates`. Present the diagram; label every `cost_monthly` figure as an estimate to verify (rule 1). |
| 48 | |
| 49 | ### 3. Evaluate retrieval quality |
| 50 | |
| 51 | Prepare `queries.json` (list of `{id, text}` or `{"queries": [...]}`) and `ground_truth.json` (`{query_id: [relevant_doc_ids]}`), then: |
| 52 | |
| 53 | |
| 54 | python3 retrieval_evaluator.py queries.json /path/to/docs ground_truth.json --k-values 3 5 10 -o eval.json |
| 55 | |
| 56 | |
| 57 | Reports precision@k, recall@k, MRR, NDCG@k, plus `poor_precision_examples` / `poor_recall_examples` for failure analysis. |
| 58 | |
| 59 | ### 4. Verification loop |
| 60 | |
| 61 | The design is done only when: |
| 62 | |
| 63 | `eval.json` meets targets — typical floors: precision@5 ≥ 0.8, recall@10 ≥ 0.85 (set per use case with the user). |
| 64 | If below target: inspect the poor-example lists, then change **one** variable (chunking strategy → re-run step 1; embedding tier; add reranking; hybrid retrieval) and re-run step 3. Repeat. |
| 65 | Every recommended model/price in the deliverable carries a "verify current pricing/model availability" note with an as-of date. |
| 66 | |
| 67 | ## References |
| 68 | |
| 69 | `references/chunking_strategies_comparison.md` — strategy trade-offs the optimizer implements |
| 70 | `references/embedding_model_benchmark.md` — benchmark *methodology* (dated snapshot; staleness warning at top) |
| 71 | `references/rag_evaluation_framework.md` — metric definitions (faithfulness, relevance, precision/recall/NDCG) |
| 72 |
Details
- Updated
- Aug 30, 2026
- License
- MIT
- Stars on the repo
- ★ 26,349
- Checked
- Source
- alirezarezvani/claude-skills ↗
- Creator
- alirezarezvani · 363 listings
Similar skills
See all →
SkillGenome Query: 1000 Genomes
SkillBayesian Modeling Framework
SkillStatistical Modeling Library
SkillHugging Face Transformers
SkillWaypoint Microbiome Models
SkillTrading Backtest FrameworkMore from alirezarezvani
SkillExperiment Resume Tool
SkillExperiment Dashboard Viewer
SkillAutonomous Experiment Runner
SkillSingle Experiment Iterator
SkillAutoresearch Experiment Setup
SkillExecutive Boardroom Deliberator