Remove course plan

This commit is contained in:
Kacper Łukawski
2026-01-22 14:20:40 +01:00
parent 2c16194df4
commit 3d5fa5da35
@@ -1,40 +0,0 @@
# Qdrant Multi-Vector Search Course
This document is a proposal for another Qdrant course. I suggest covering both text and multi-modal multi-vector representations, focusing on making them usable in Qdrant.
# Outline
1. **Module 0:** Setting up dependencies
2. **Module 1:** Multi-vector representations for textual data
* ColBERT basics
* Comparison to regular dense embedding models
* Examples when multi-vectors may work better than single vectors
* MaxSim distance
3. **Module 2:** Multi-vector representations for multi-modal data (image \+ text)
* ColPali family
* Inner workings of the ColPali models
* Visual interpretability of ColPali representations
* Setting up Qdrant for multi-vector embeddings
4. **Module 3:** Scalability issues caused by multi-vector representations
* The implications of high memory usage and ways to solve it
* Vector quantization: scalar, binary, \+1.5/2-bit
* Pooling techniques: row/column pooling, hierarchical token pooling
* Incompatibility with HNSW due to MaxSim asymmetry
* MUVERA
* Combining multiple optimizations in multi-stage retrieval via Universal Query API
* Evaluating different search pipelines in terms of cost and latency
## Project
I suggest having just one project. It should start with a set of PDFs or even scanned documents for which the participants are supposed to create a two-stage ColPali retrieval system using both MUVERA for fast retrieval and some memory optimization (or multiple ones, like SQ \+ token pooling) for reduced memory usage.
## Supplementary content
To keep the momentum, I suggest publishing a few related blog posts in the upcoming weeks:
1. **The asymmetry of MaxSim**
We suggest disabling HNSW for MaxSim, but it is never discussed why it doesn’t make sense. It’s not worth an article, but a short explanation with some examples would make things clearer.
2. **A review of modern multi-vector retrievers for visual data**
There’s been a lot of excitement around ModernVBERT, so it would make sense to present how to use it with Qdrant, even though we don’t support it in FastEmbed.
3. **FastEmbed: implementation of different pooling techniques for multi-vectors**
E.g., row/column pooling (if possible), hierarchical token pooling. Techniques might be implemented in the library itself, but we should also create a blog post about it.