Beginners course module 3#2496
Conversation
Module 1-3 pages don't exist yet, so the syllabus links to them were 404ing the lychee internal link checker.
✅ Deploy Preview for condescending-goldwasser-91acf0 ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
kanungle
left a comment
There was a problem hiding this comment.
Looks okay. More is needed on IVF, BM25, SPLADE, miniCOIL, as well as how sparse vectors are encoded differently: mostly zeros (only non-zero values are entered). I also think filtering needs to be broken out as a separate "optional" part of this. Filtering is applicable on dense and sparse retrieval too, not just hybrid.
|
|
||
| # Sparse vs Dense vs Hybrid Search | ||
|
|
||
| Understand dense vs sparse search, when each fails, and how hybrid systems combine them. |
There was a problem hiding this comment.
Replace with:
Understand dense versus sparse retrieval, their strengths, and how a hybrid approach can combine them.
|
|
||
| ## 1. Where We Left Off | ||
|
|
||
| In Module 2, you built a complete ingestion and retrieval pipeline: raw text → vector → store → top-K query. Dense-only search works well for natural language. It breaks immediately on structured identifiers. |
There was a problem hiding this comment.
Dense-only search works well for natural language. It breaks immediately on structured identifiers.
Replace with:
Dense-only retrieval is best for semantic and contextual search. It struggles on structured identifiers.
| | Query | SKU-48291 | | ||
| |-------|-----------| | ||
| | **The user wants exactly this product. No synonyms. No paraphrasing.** | | | ||
|
|
||
| **Dense search returns** | ||
|
|
||
| | SKU-48292 | (0.91) | ← wrong | | ||
| |----------|--------|---------| | ||
| | SKU-48291 | (0.89) | ← correct | | ||
| | SKU-48290 | (0.87) | ← wrong | |
There was a problem hiding this comment.
Thierry used to do an "iPhone" search example where the wrong model was retrieved for a ecommerce query. I think that works better than SKUs
| 🖼️ | ||
| **Images** | ||
| "red dress" → visually similar products | ||
| CLIP, SigLIP embed images and text into the same space | ||
|
|
||
| 🎬 | ||
| **Video** | ||
| "factory fire" → matching video scenes | ||
| Frames are sampled, embedded, stored as named vectors | ||
|
|
||
| 🎧 | ||
| **Audio** | ||
| Hum a melody → matching songs | ||
| Audio fingerprints or spectrogram embeddings | ||
|
|
||
| 📝 | ||
| **Text** | ||
| "cheap flights NYC" → semantic docs | ||
| Sentence transformers, OpenAI embeddings, etc. |
There was a problem hiding this comment.
I don't think we want emojis
| Next, we'll explore: | ||
|
|
||
| - Real enterprise architectures - Tripadvisor, HubSpot, and OpenTable in depth | ||
| - Production patterns: multi-tenancy, agent memory, and RAG pipelines | ||
| - Deployment options: Cloud, Hybrid Cloud, Edge, and self-hosted | ||
| - Formula queries - when RRF and DBSF aren't enough |
There was a problem hiding this comment.
Do not use real customer use cases in the course
PREVIEW
This PR is still work in progress. Formatting and images will be added soon