Appearance
API 与 SDK 速查
端口
| 端口 | 协议 | 典型客户端 |
|---|---|---|
| 6333 | HTTP REST | curl、Python QdrantClient(url=...) |
| 6334 | gRPC | Java QdrantGrpcClient |
REST 路径(常见)
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /collections | 列出集合 |
| PUT | /collections/{name} | 创建集合 |
| DELETE | /collections/{name} | 删除集合 |
| POST | /collections/{name}/points | Upsert 等点操作 |
| POST | /collections/{name}/points/search | 向量搜索 |
完整列表见 https://api.qdrant.tech/
Python 速查
python
from qdrant_client import QdrantClient
from qdrant_client.models import Distance, VectorParams, PointStruct, Filter, FieldCondition, MatchValue
client = QdrantClient(url="http://localhost:6333")
client.create_collection(collection_name=name, vectors_config=VectorParams(size=384, distance=Distance.COSINE))
client.upsert(collection_name=name, points=[PointStruct(id=1, vector=[...], payload={})])
client.search(collection_name=name, query_vector=[...], limit=10, query_filter=Filter(...))
client.scroll(collection_name=name, limit=100, offset=...)
client.delete_collection(collection_name=name)Java 速查
java
// 连接
new QdrantClient(QdrantGrpcClient.newBuilder("localhost").build());
// 建表
client.createCollectionAsync(name, VectorParams.newBuilder().setSize(384).setDistance(Distance.Cosine).build()).get();
// 写入
client.upsertAsync(name, List.of(PointStruct.newBuilder().setId(id(1)).setVectors(vectors(...)).putAllPayload(...).build())).get();
// 搜索
client.searchAsync(SearchPoints.newBuilder().setCollectionName(name).addAllVector(...).setLimit(10).build()).get();依赖坐标
- Python:
pip install qdrant-client - Maven:
io.qdrant:client(版本见 Central)