Repository navigation
Module 10 RAG OpenSearch and LiteLLM
Retrieval done properly — chunking, hybrid search, reranking, and an evaluation gate.
Module 10 of 16 · track Ground · Estimated time: 8–10 hours · Prerequisites: Module 02. Module 06 or 08 for the agentic RAG labs.
The largest module, and the one with the most production value. Naive RAG is easy and usually bad. This module walks the whole pipeline — corpus, chunking, lexical and dense retrieval, fusion, reranking, context packing, evaluation — with a reusable ragkit library you can lift into your own work.
Open the module on GitHub ↗: the slides, notebooks, exercises and solutions are there. This page is the reading order, with the tutorial and the workbench alongside.
The lesson that frames this module is Is 82% Good Enough? How to Prove an AI Agent Meets Its Bar (6 min): the evaluation gate retrieval has to pass. Then try the acceptance bar calculator in the workbench: the same decision, with your numbers.
- Build RAG by hand before using any managed service
- Choose a chunking strategy from document structure rather than habit
- Combine lexical and dense retrieval with reciprocal rank fusion
- Add reranking and measure whether it actually helped
- Gate a RAG release on evaluation metrics, not impressions
- Route across model providers with LiteLLM and fail over cleanly
| Portable GenAI concepts | AWS-specific surface |
|---|---|
| Chunking | Amazon OpenSearch Serverless |
| Embeddings | Bedrock Knowledge Bases |
| Lexical vs dense retrieval | Bedrock embeddings |
| Hybrid search and RRF | Bedrock Runtime |
| Reranking | |
| Context packing | |
| RAG evaluation | |
| Model routing |
Portable concepts transfer to any stack. The AWS column is where this module touches the cloud — see docs/concepts/portability-matrix.md.
📖 read 💻 run ✏️ practise 📊 workbook 🔖 reference
Worked solutions live in solutions/. Attempt every exercise closed-book first — the solutions are written to be read after you have a wrong answer to compare against.
labs/rag-labs/ragkit is a complete, reusable retrieval library — chunking, fusion, reranking, evaluation, cost. Lift it into your own projects.
- Chunking by character count because it was the default. Structure beats size.
- Reranking added without measurement — it costs latency and may not help your corpus.
- Evaluating RAG on vibes. Build the golden set first.
Every error anyone has hit in this course is in the Error Index, by the exact string. Model access and region problems are in Model and Region Notes. If it is a question rather than an error, check the answered ones first, then ask in Q&A.
Frameworks
- Grounding Triangle — The three sides most systems confuse
- Context Budget Ledger — Pack to a token budget, not a top-k
- Evidence Ladder — Why the golden set must be frozen first
Quick reference
- RAG pipeline — Stage by stage, with the failure decoder
- Model selection — Routing and provider portability
Recipes and procedures
- Runbook · stale knowledge base — Index freshness as a gate check
← Module 09 · LLM Memory Mechanics · All modules · Module 11 · Amazon Bedrock AgentCore →
✏️ This page is generated from modules/10-rag-opensearch-litellm/README.md. To change it, edit the module README: an edit made here is replaced at the next sync.
This wiki is the connective layer. The repository is canonical and versioned; these pages are the cross-surface maps and the notes that change too often to live in a reviewed file. Anyone can edit — see Editing this wiki.
▶ Start here · 55 lessons, on the site ↗
- Getting started · 2
- Agentic PDLC fundamentals · 9
- Methods decoded · 7
- Running delivery · 13
- By role · 9
- Teams and organisation · 4
- Practice · 4
- Interviews and careers · 7
The method
The Agentic PDLC
The Eight Loops
Gates & Governance
The Evidence Pack
The journey · end to end
Product manager
Solution architect
Engineering lead
QA lead
DevOps & platform
The method · by role
Product manager
Solution architect
Engineering lead
QA lead
DevOps and platform
Sponsor
How to
Run an NFR workshop
Design an agent on paper
Build, buy or borrow
Cut sprints into bolts
Review by risk band
Prove the bar
Control the token bill
Hold the security boundary
Run a missing-control postmortem
Reference
Mental Models
Glossary
Formulas & Calculators
Decision Trees
Scenario Library
Exercises & Answers
Anti-Patterns
Sources & Confidence
Where do I find…?
The 16 modules
- Agentic Foundations
- LLM Intuition and the AWS Bridge
- Amazon Bedrock Essentials
- Amazon Bedrock Agents
- Agent Builder, Knowledge Bases and Guardrails
- The Agent Loop: No Framework to Strands
- Strands Foundations: Tools, Memory and MCP
- Multi-Agent Patterns with Strands
- LangChain and LangGraph
- LLM Memory Mechanics
- RAG, OpenSearch and LiteLLM
- Amazon Bedrock AgentCore
- A2A and A2UI: Agent Interoperability
- Agentic QA and Evaluation
- End-to-End Production Pipeline
- Agentic Product Lifecycle
Learning paths · Field guide
Study Plans
Eight sessions
Living notes
Error Index
Community Answers
Field Notes
Model & Region Notes
Cost Log
Scoreboard 🧪
The project
Roadmap
Editing this wiki
Maintainer Runbook
📘 The manual · live
🛫 Ninety Days, the simulator
🧰 The workbench
👔 For leadership
🧠 Mental models
Templates · Prompts
Frameworks & acronyms
The repository · Setup
Pinned discussions
Discussion map — where to post what
Exercise & lab index
Simulator Arena — get a lab graded
Pitch an idea
All discussions →