Prepare course structrure

This commit is contained in:
Kacper Łukawski
2025-12-15 13:37:54 +01:00
parent 549d59b4df
commit 95223d42e5
18 changed files with 369 additions and 1 deletions
@@ -0,0 +1,21 @@
---
title: "Installing Dependencies"
description: Install Python dependencies including FastEmbed and Qdrant client.
weight: 2
---
{{< date >}} Module 0 {{< /date >}}
# Installing Dependencies
To work with multi-vector search in Qdrant, you'll need several Python libraries: Qdrant client for search and FastEmbed for multi-vector embeddings.
We'll set up a clean Python environment and install everything you need to start experimenting with multi-vector representations.
---
TBD
---
With your environment set up, you're ready to explore multi-vector representations for textual data in Module 1.
@@ -0,0 +1,53 @@
---
title: "Qdrant Setup"
description: Set up Qdrant for multi-vector search. Learn how to create a collection and configure it for multi-vector embeddings.
weight: 1
---
{{< date >}} Module 0 {{< /date >}}
# Qdrant Setup
Before diving into multi-vector search, you need a running Qdrant instance. Whether you choose Qdrant Cloud for a managed solution or a local deployment, this lesson will get you up and running.
Multi-vector search requires specific collection configurations that differ from traditional single-vector setups. We'll cover the essentials to prepare your environment.
---
## Qdrant Cloud Setup
<!-- TODO: Add instructions for setting up Qdrant Cloud account -->
<!-- TODO: Include screenshot of Cloud dashboard -->
<!-- TODO: Add cluster creation steps -->
## Local Qdrant Installation
<!-- TODO: Add Docker installation instructions -->
```bash
# TODO: Add Docker command to run Qdrant locally
```
<!-- TODO: Add alternative installation methods (pip, binary) -->
## Creating Your First Multi-Vector Collection
<!-- TODO: Explain multi-vector collection requirements -->
<!-- TODO: Add Python code example for creating a collection -->
```python
# TODO: Add example code for creating a multi-vector collection
```
## Verifying Your Setup
<!-- TODO: Add steps to verify Qdrant is running correctly -->
<!-- TODO: Add simple query example to test connection -->
```python
# TODO: Add verification code
```
---
Next, you'll install the Python dependencies needed to work with multi-vector embeddings.
@@ -19,6 +19,7 @@ Dive into multi-vector text representations and discover how ColBERT changes the
2. MaxSim Distance Metric
3. Use Cases for Multi-Vector Search
4. Problems of Multi-Vector Search
5. Multi-Vector Embeddings in Qdrant
You'll understand when multi-vector representations outperform traditional single-vector embeddings, and what kind of
problems to expect when you start working with multi-vector search at scale.
@@ -0,0 +1,21 @@
---
title: "Late Interaction Basics"
description: Understand the late interaction paradigm and how it differs from traditional dense embeddings for text search.
weight: 1
---
{{< date >}} Module 1 {{< /date >}}
# Late Interaction Basics
Traditional dense embedding models compress entire documents into single vectors. The late interaction paradigm takes a different approach: it represents documents as sets of token-level vectors and delays the interaction computation until search time.
This fundamental shift enables more nuanced matching between queries and documents, capturing fine-grained semantic relationships that single vectors might miss.
---
TBD
---
Next, you'll learn about MaxSim, the distance metric that powers late interaction search.
@@ -0,0 +1,21 @@
---
title: "MaxSim Distance Metric"
description: Learn about the MaxSim distance metric used in multi-vector search and how it computes similarity between multi-vector representations.
weight: 2
---
{{< date >}} Module 1 {{< /date >}}
# MaxSim Distance Metric
MaxSim (Maximum Similarity) is the core distance metric for late interaction models. Unlike traditional vector similarity metrics that operate on pairs of single vectors, MaxSim computes similarity between sets of vectors.
Understanding MaxSim is crucial for working with multi-vector search effectively and understanding its performance characteristics.
---
TBD
---
Now that you understand how multi-vector search works technically, let's explore when it excels compared to traditional approaches.
@@ -0,0 +1,21 @@
---
title: "Multi-Vector Embeddings in Qdrant"
description: Configure Qdrant collections for multi-vector embeddings and learn how to index and query multi-vector data.
weight: 4
---
{{< date >}} Module 2 {{< /date >}}
# Multi-Vector Embeddings in Qdrant
Qdrant provides first-class support for multi-vector embeddings through its multi-vector configuration. This lesson covers creating collections, indexing documents, and querying with MaxSim distance.
By the end, you'll have a working multi-modal search system powered by ColPali and Qdrant.
---
TBD
---
You now have the tools to build multi-modal search systems. In Module 3, we'll tackle the scalability challenges and optimize for production deployment.
@@ -0,0 +1,21 @@
---
title: "Problems of Multi-Vector Search"
description: Understand the challenges and limitations of multi-vector search at scale, including memory and performance considerations.
weight: 4
---
{{< date >}} Module 1 {{< /date >}}
# Problems of Multi-Vector Search
Multi-vector search delivers impressive retrieval quality, but it comes with significant challenges. Before deploying multi-vector search in production, you need to understand these limitations and plan accordingly.
The good news: Module 3 covers optimization techniques that address many of these challenges.
---
TBD
---
Understanding these challenges is crucial. In Module 2, we'll extend multi-vector search to multi-modal data, and in Module 3, we'll tackle these scalability issues head-on with optimization techniques.
@@ -0,0 +1,21 @@
---
title: "Use Cases for Multi-Vector Search"
description: Discover scenarios where multi-vector search outperforms single-vector embeddings and provides better retrieval quality.
weight: 3
---
{{< date >}} Module 1 {{< /date >}}
# Use Cases for Multi-Vector Search
Multi-vector search isn't always the right choice, but in certain scenarios it significantly outperforms traditional single-vector embeddings. Understanding these use cases helps you decide when the added complexity and cost are worth it.
Let's explore situations where multi-vector representations shine.
---
TBD
---
While multi-vector search has clear advantages, it also comes with challenges. Let's explore them next.
@@ -18,6 +18,5 @@ Extend multi-vector representations beyond text to unlock powerful multi-modal s
1. How ColPali Models Work
2. ColPali Family Overview
3. Visual Interpretability of ColPali
4. Multi-Vector Embeddings in Qdrant
You'll learn to build multi-modal search systems that understand both images and text.
@@ -0,0 +1,21 @@
---
title: "ColPali Family Overview"
description: Explore the ColPali model family and their capabilities for multi-modal document understanding and retrieval.
weight: 2
---
{{< date >}} Module 2 {{< /date >}}
# ColPali Family Overview
The ColPali family includes several models optimized for different use cases, from general document retrieval to specialized domain applications. Choosing the right model depends on your accuracy requirements, performance constraints, and document types.
Let's explore what each model offers and when to use it.
---
TBD
---
Now that you know which model to use, let's learn how to interpret what ColPali "sees" in your documents.
@@ -0,0 +1,21 @@
---
title: "How ColPali Models Work"
description: Understand the inner workings of ColPali models and how they generate multi-vector representations for images and documents.
weight: 1
---
{{< date >}} Module 2 {{< /date >}}
# How ColPali Models Work
ColPali extends the late interaction paradigm from text to visual documents. It can process PDFs, images, and scanned documents, generating multi-vector representations that capture both textual and visual information.
Understanding ColPali's architecture helps you leverage its full potential for multi-modal document retrieval.
---
TBD
---
Next, we'll explore the different models in the ColPali family and their specific use cases.
@@ -0,0 +1,21 @@
---
title: "Visual Interpretability of ColPali"
description: Learn how to visualize and interpret ColPali embeddings to understand what the model focuses on in images.
weight: 3
---
{{< date >}} Module 2 {{< /date >}}
# Visual Interpretability of ColPali
One of ColPali's powerful features is visual interpretability. You can see exactly which parts of a document the model focuses on during retrieval, helping you debug search results and understand model behavior.
This transparency is invaluable for building trust in multi-modal search systems and improving retrieval quality.
---
TBD
---
With a solid understanding of ColPali, let's start building a real application in Module 2.
@@ -0,0 +1,21 @@
---
title: "Evaluating Search Pipelines"
description: Learn how to evaluate different search configurations in terms of cost, latency, and retrieval quality.
weight: 6
---
{{< date >}} Module 3 {{< /date >}}
# Evaluating Search Pipelines
With so many optimization techniques available, how do you choose the right configuration? The answer lies in systematic evaluation across three dimensions: cost, latency, and quality.
This lesson provides a framework for making data-driven decisions about your multi-vector search deployment.
---
TBD
---
Congratulations! You now have the knowledge to build, optimize, and deploy production-ready multi-vector search systems with Qdrant.
@@ -0,0 +1,21 @@
---
title: "Memory Usage Implications"
description: Understand the memory challenges of multi-vector search and overview of optimization techniques.
weight: 1
---
{{< date >}} Module 3 {{< /date >}}
# Memory Usage Implications
Multi-vector search can consume 10-100x more memory than single-vector search. Before deploying to production, you need to understand why this happens and what you can do about it.
This lesson sets the stage for the optimization techniques we'll explore in the rest of Module 3.
---
TBD
---
Let's start optimizing. First up: vector quantization techniques to reduce memory usage.
@@ -0,0 +1,21 @@
---
title: "Multi-Stage Retrieval with Universal Query API"
description: Combine multiple optimization techniques in multi-stage retrieval pipelines using Qdrant's Universal Query API.
weight: 5
---
{{< date >}} Module 3 {{< /date >}}
# Multi-Stage Retrieval with Universal Query API
The most effective production deployments combine multiple optimization techniques in multi-stage pipelines. Fast approximate methods retrieve candidates, which are then reranked with higher-quality methods.
Qdrant's Universal Query API makes it easy to build sophisticated multi-stage retrieval systems.
---
TBD
---
Finally, let's learn how to evaluate and compare different search pipeline configurations.
@@ -0,0 +1,21 @@
---
title: "MUVERA"
description: Understand MUVERA and how it enables HNSW indexing for multi-vector search despite MaxSim asymmetry.
weight: 4
---
{{< date >}} Module 3 {{< /date >}}
# MUVERA
MUVERA (Multi-Vector Retrieval with Approximation) solves a fundamental problem: MaxSim's asymmetry makes traditional indexing methods like HNSW ineffective. MUVERA enables fast approximate search for multi-vector representations.
Understanding MUVERA is key to scaling multi-vector search to millions of documents.
---
TBD
---
Next, we'll learn to combine all these optimizations in multi-stage retrieval pipelines using Qdrant's Universal Query API.
@@ -0,0 +1,21 @@
---
title: "Pooling Techniques"
description: Reduce the number of vectors per document using row/column pooling and hierarchical token pooling strategies.
weight: 3
---
{{< date >}} Module 3 {{< /date >}}
# Pooling Techniques
While quantization reduces the size of each vector, pooling reduces the number of vectors per document. By intelligently combining token embeddings, you can achieve significant memory savings while preserving retrieval quality.
Pooling is particularly effective when combined with quantization for maximum memory efficiency.
---
TBD
---
Now let's tackle the indexing challenge with MUVERA, enabling fast approximate search for multi-vector representations.
@@ -0,0 +1,21 @@
---
title: "Vector Quantization Techniques"
description: Learn how to reduce memory usage with scalar quantization, binary quantization, and other compression methods.
weight: 2
---
{{< date >}} Module 3 {{< /date >}}
# Vector Quantization Techniques
Vector quantization compresses vectors by reducing the precision of each component. Qdrant supports several quantization methods that can reduce memory usage by 4-32x with minimal quality loss.
Choosing the right quantization method depends on your quality requirements and memory constraints.
---
TBD
---
Next, we'll explore pooling techniques that reduce the number of vectors per document.