Created complete working examples for all 4 vector databases with RAG adaptors: Weaviate Example: - Comprehensive README with hybrid search guide - 3 Python scripts (generate, upload, query) - Sample outputs and query results - Covers hybrid search, filtering, schema design Chroma Example: - Simple, local-first approach - In-memory and persistent storage options - Semantic search and metadata filtering - Comparison with Weaviate FAISS Example: - Facebook AI Similarity Search integration - OpenAI embeddings generation - Index building and persistence - Performance-focused for scale Qdrant Example: - Advanced filtering capabilities - Production-ready features - Complex query patterns - Rust-based performance Each example includes: - Detailed README with setup and troubleshooting - requirements.txt with dependencies - 3 working Python scripts - Sample outputs directory Total files: 20 (4 examples × 5 files each) Documentation: 4 comprehensive READMEs (~800 lines total) Phase 2 of optional enhancements complete. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Qdrant Vector Database Example
Qdrant is a vector similarity search engine with extended filtering support. Built in Rust for maximum performance.
Quick Start
# 1. Start Qdrant (Docker)
docker run -p 6333:6333 qdrant/qdrant:latest
# 2. Install dependencies
pip install -r requirements.txt
# 3. Generate and upload
python 1_generate_skill.py
python 2_upload_to_qdrant.py
# 4. Query
python 3_query_example.py
What Makes Qdrant Special?
- Advanced Filtering: Rich payload queries with AND/OR/NOT
- High Performance: Rust-based, handles billions of vectors
- Production Ready: Clustering, replication, persistence built-in
- Flexible Storage: In-memory or on-disk, cloud or self-hosted
Key Features
Rich Payload Filtering
# Complex filters
collection.search(
query_vector=vector,
query_filter=models.Filter(
must=[
models.FieldCondition(
key="category",
match=models.MatchValue(value="api")
)
],
should=[
models.FieldCondition(
key="type",
match=models.MatchValue(value="reference")
)
]
),
limit=5
)
Hybrid Search
Combine vector similarity with payload filtering:
- Filter first (fast): Narrow by metadata, then search
- Search first: Find similar, then filter results
Production Features
- Snapshots: Point-in-time backups
- Replication: High availability
- Sharding: Horizontal scaling
- Monitoring: Prometheus metrics
Files
1_generate_skill.py- Package for Qdrant2_upload_to_qdrant.py- Upload to Qdrant3_query_example.py- Query examples
Resources
- Qdrant Docs: https://qdrant.tech/documentation/
- API Reference: https://qdrant.tech/documentation/quick-start/
- Cloud: https://cloud.qdrant.io/
Note: Qdrant excels at production deployments with complex filtering needs. For simpler use cases, try ChromaDB.