Notebooks
Q
Qdrant
Pooling Techniques

Pooling Techniques

course-multi-vector-searchqdrant-examplesmodule-3

Module 3: Pooling Techniques

Load the ColPali model for generating multi-vector image embeddings.

[3]
Downloading (incomplete total...): 0.00B [00:00, ?B/s]
Fetching 7 files:   0%|          | 0/7 [00:00<?, ?it/s]

Spatial pooling: reshape the 1024 patch embeddings into a 32×32 grid and average along rows or columns. This reduces 1024 vectors to just 32, achieving a 32× memory reduction.

[4]
Original shape: (1030, 128)
Original: 263,680 bytes (257 KB)
Row pooled: 8,192 bytes (8 KB)
Reduction: 32×

Hierarchical pooling: use k-means clustering to group similar patch embeddings, then average within each cluster. This approach is content-aware and lets you choose any compression ratio.

[5]
k= 16: 1030 → 16 vectors (64× reduction)
k= 32: 1030 → 32 vectors (32× reduction)
k= 64: 1030 → 64 vectors (16× reduction)
k=128: 1030 → 128 vectors (8× reduction)