SDKs clients Qdrant
Qdrant dispose des SDKs clients officiellement supportés suivants :
- Python — qdrant-client · Installation :
pip install qdrant-client[fastembed] - JavaScript / TypeScript — qdrant-js · Installation :
npm install @qdrant/js-client-rest - Rust — rust-client · Installation :
cargo add qdrant-client - Go — go-client · Installation :
go get github.com/qdrant/go-client - .NET — qdrant-dotnet · Installation :
dotnet add package Qdrant.Client - Java — java-client · Disponible sur Maven Central : https://central.sonatype.com/artifact/io.qdrant/client
Référence API
Toute interaction avec Qdrant peut se faire via l'API REST ou l'API gRPC. Nous recommandons d'utiliser l'API REST si vous découvrez Qdrant pour la première fois ou si vous travaillez sur un prototype.
- REST API - Référence OpenAPI - GitHub
- gRPC API - Définitions protobuf gRPC
Exemples de code
Pour obtenir des exemples de code pour un client et un cas d'usage spécifique, vous pouvez envoyer une requête de recherche à la bibliothèque de snippets de code organisés pour le client Qdrant.
curl -X GET "https://snippets.qdrant.tech/search?language=python&query=how+to+upload+points"
Langages disponibles : python, typescript, rust, java, go, csharp
Exemple de réponse :
## Snippet 1
*qdrant-client* (latest) — https://search.qdrant.tech/md/documentation/manage-data/points/
Télécharge plusieurs points vectoriels incorporés vers une collection Qdrant en utilisant le qdrant_client Python (PointStruct) avec un id, une payload (par exemple, color), et un vecteur de type 3D pour la recherche de similarité. Il supporte les téléchargements parallèles (parallel=4) et une politique de retry (max_retries=3) pour un indexation robuste. L'opération est idempotente : retélécharger avec le même id écrase les points existants ; si les ids ne sont pas fournis, Qdrant génère automatiquement des UUIDs.
client.upload_points(
collection_name="{collection_name}",
points=[
models.PointStruct(
id=1,
payload={
"color": "red",
},
vector=[0.9, 0.1, 0.1],
),
models.PointStruct(
id=2,
payload={
"color": "green",
},
vector=[0.1, 0.9, 0.1],
),
],
parallel=4,
max_retries=3,
)
Le format de réponse par défaut est markdown, si une sortie de snippet en format JSON est requise, vous pouvez ajouter &format=json à la chaîne de requête.