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
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.
Alerts
Smart alerting patterns for AI agents - deduplication, routing, escalation, and fatigue prevention