Skip to main content

Overview

The Points service provides gRPC methods for all vector operations including CRUD, search, recommendations, and advanced queries.

Service Definition

From points_service.proto:8-103:

Upsert Points

Insert or update points with vectors and payload:

Python Example

Batch Upsert (High Performance)

Named Vectors

Find nearest neighbors using vector similarity:

Search with Filters

Search Parameters

Recommend

Find similar points based on positive and negative examples:

Recommend with Vectors

Query API (Universal)

The Query API unifies search, recommend, discover, and more:

Recommendation Query

Hybrid Search (Fusion)

Get Points

Retrieve points by ID:

Scroll

Iterate through all points:

Scroll with Filter

Update Operations

Update Vectors

Set Payload

Overwrite Payload

Delete Payload Keys

Clear Payload

Delete Points

Delete by IDs

Delete by Filter

Payload Indexing

Create indexes for faster filtering:

Count Points

Facet Counts

Get value distribution for a field:

Consistency & Ordering

Write Consistency

From points.proto:11-20:

Read Consistency

Shard Key Selection

For custom-sharded collections:

Batch Operations

Perform multiple operations in a single request:

Performance Tips

Optimize throughput:
  • Use batch operations for bulk inserts (100-1000 points per batch)
  • Set wait=False for async mode (10x faster)
  • Use parallel uploads with upload_points() method
  • Enable gRPC with prefer_grpc=True for 30-50% speedup
Search performance:
  • Create payload indexes before filtering on fields
  • Use score_threshold to reduce result processing
  • Lower hnsw_ef for faster search (trade-off with recall)
  • Consider quantization for large collections (>1M vectors)

Next Steps

Collections

Collection management API

Python Client

Full Python client reference