qdrant-client  by qdrant

Python SDK for Qdrant vector search engine

created 4 years ago
1,050 stars

Top 36.5% on sourcepulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

This Python client library provides a comprehensive interface for interacting with the Qdrant vector search engine, catering to developers and researchers building AI-powered applications. It simplifies vector database operations by offering type-hinted API calls, support for both synchronous and asynchronous requests, and an integrated local mode for development and testing without a running Qdrant server.

How It Works

The client supports both REST and gRPC protocols, allowing users to choose based on performance needs. A key feature is its integration with fastembed, enabling efficient vector embedding generation directly within the client, with optional GPU acceleration via CUDA. This streamlines the workflow from data to vector search. The library also includes helper methods for common tasks like collection creation and data uploading, abstracting away some of the lower-level API complexities.

Quick Start & Requirements

  • Install: pip install qdrant-client
  • Optional fastembed (CPU): pip install qdrant-client[fastembed]
  • Optional fastembed (GPU): pip install qdrant-client[fastembed-gpu] (requires CUDA)
  • Local mode: QdrantClient(":memory:") or QdrantClient(path="path/to/db")
  • Server mode: QdrantClient(host="localhost", port=6333) or QdrantClient(url="http://localhost:6333")
  • Qdrant Cloud: QdrantClient(url="...", api_key="...")
  • Documentation: python-client.qdrant.tech

Highlighted Details

  • Supports both synchronous and asynchronous API calls.
  • Offers a local, in-memory or file-based mode for development and testing.
  • Integrates with fastembed for efficient, on-device embedding generation (CPU/GPU).
  • Supports both REST and gRPC communication protocols with the Qdrant server.

Maintenance & Community

The project appears actively maintained, with frequent updates and clear examples. Community resources are likely available through Qdrant's broader ecosystem.

Licensing & Compatibility

The README does not explicitly state the license. Compatibility for commercial use or closed-source linking would depend on the actual license.

Limitations & Caveats

The README does not specify the project's license, which is crucial for determining commercial usability. The fastembed-gpu and fastembed packages are mutually exclusive, requiring careful environment management.

Health Check
Last commit

2 days ago

Responsiveness

1 day

Pull Requests (30d)
20
Issues (30d)
4
Star History
101 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.