Files
yusyus 53d37e61dd docs: Add 4 comprehensive vector database examples (Weaviate, Chroma, FAISS, Qdrant)
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>
2026-02-07 22:38:15 +03:00

83 lines
2.0 KiB
Markdown

# Qdrant Vector Database Example
Qdrant is a vector similarity search engine with extended filtering support. Built in Rust for maximum performance.
## Quick Start
```bash
# 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
```python
# 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 Qdrant
- `2_upload_to_qdrant.py` - Upload to Qdrant
- `3_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.