qdrant-model-migration
Installation
SKILL.md
What to Do When Changing Embedding Models
Vectors from different models are incompatible. You cannot mix old and new embeddings in the same vector space. On v1.18+, you can add or delete named vector fields on an existing collection — migration no longer always requires a new collection. On v1.17 or earlier, all named vectors must be defined at collection creation time.
- Understand collection aliases before choosing a strategy Collection aliases
Can I Avoid Re-embedding?
Use when: looking for shortcuts before committing to full migration.
You MUST re-embed if: changing model provider (OpenAI to Cohere), changing architecture (CLIP to BGE), or switching to a model with a different dimension count.
You do NOT need to re-embed existing dense vectors if:
- Adding sparse vectors for hybrid search: generate only the sparse vectors. On v1.18+, add the sparse field to the existing collection and backfill it with
UpdateVectors. On v1.17 or earlier, copy the dense vectors into the new collection instead of recomputing them Update vectors - Using Matryoshka models: use the
dimensionsparameter to output lower-dimensional embeddings (some recall loss, good for 100M+ datasets) - Changing quantization (binary to scalar): Qdrant re-quantizes automatically Quantization