Qdrant
Build vector search with Qdrant using collections, payloads, filtering, and optimized indexing for semantic similarity.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/ivangdavila/qdrantWhen to Use
User needs vector similarity search, semantic search, or recommendation systems. Agent handles collection design, point insertion, filtered queries, and index optimization.
Quick Reference
| Topic | File |
|---|---|
| Query patterns | queries.md |
| Performance tuning | performance.md |
Core Rules
1. Collection Setup
- Set vector dimension to match embedding model (e.g., OpenAI ada-002 = 1536)
- Choose distance metric deliberately:
Cosinefor normalized embeddings,Dotfor raw scores,Euclidfor absolute distance - Wrong dimension = silent failures with zero results
2. Payload Strategy
- Store filterable metadata as payload fields
- Index payload fields used in filters:
create_payload_index - Don't store large blobs in payloads — use external storage + reference ID
3. Batch Operations
- Insert points in batches of 100-1000, not one by one
- Use
upsertto handle duplicates by ID - Parallel uploads with
wait=falsethen verify with collection info
4. Filtering vs Post-Filtering
| When | Use |
|---|---|
| Known constraints | Filter in query (pre-filter) |
| Score threshold | score_threshold parameter |
| Complex logic | Combine must, should, must_not |
- Pre-filtering reduces search space = faster
- Post-filtering on results = slower, may miss relevant items
5. Search vs Scroll
| Need | Use |
|---|---|
| Top-K similar | search |
| All matching | scroll with filter |
| Paginated results | scroll with offset |
| Export/backup | scroll all with pagination |
6. Index Optimization
- HNSW parameters: increase
mfor recall, increaseef_constructfor index quality - Default
m=16, ef_construct=100works for most cases - For millions of vectors: enable
on_diskstorage - Use quantization (
scalarorproduct) to reduce memory 4-8x
7. Multi-Tenancy
- Payload field for tenant ID + filter on every query
- Or separate collections per tenant (simpler isolation, harder to manage)
- Never expose one tenant's data to another
Common Traps
- Creating collection with wrong vector size → all searches return empty
- Forgetting
wait=trueon insert → querying before data indexed - Using scroll without limit → memory exhaustion on large collections
- Not indexing payload fields → filter queries scan entire collection
- Storing embeddings in payload instead of vector field → defeats purpose
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-ivangdavila-qdrant": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
Animations
Create performant web animations with proper accessibility and timing.
Arduino
Develop Arduino projects avoiding common wiring, power, and code pitfalls.
Bulgarian
Write Bulgarian that sounds human. Not formal, not robotic, not AI-generated.
Arabic
Write Arabic that sounds human. Not formal, not robotic, not AI-generated.
Assistant
Manage tasks, communications, and scheduling with proactive and organized support.