Player not loading? Watch on YouTube
This Python tutorial introduces Qdrant as a vector store for retrieval with metadata filtering. The speaker starts with handwritten two-dimensional vectors, creates a collection, inserts points with payloads and queries the nearest matches. The examples compare Euclidean distance, dot product and cosine similarity to show how the chosen measure changes the ranking.
The next example uses OpenAI's text-embedding-3-small to embed programming language names into 1,536-dimensional vectors. It requires an API key loaded from a .env file through python-dotenv. A query for C# first returns unfiltered matches, then a payload filter restricts results to languages labeled interpreted. The speaker mentions local embedding models as an option, but demonstrates the OpenAI API, so this example is not an offline workflow.
For storage, the tutorial first uses a directory on disk, then connects to a self-hosted Qdrant Docker container through localhost on port 6333. The container setup maps ports 6333 and 6334 and mounts storage for persistence. The initial disk example deletes its storage directory between runs to simplify repeated demonstrations.
The speaker also demonstrates Latent Assets, an image search project that prioritizes exact tag matches and fills remaining results with semantic search. He recommends Qdrant for applications centered on retrieval and filtering, while preferring PGVector when RAG is a secondary feature. These are his recommendations, rather than benchmark results.