syntax = "proto3"; import "points.proto"; package arc_vector; import "google/protobuf/struct.proto"; service Points { /* Perform insert + updates on points. If a point with a given ID already exists - it will be overwritten. */ rpc Upsert (UpsertPoints) returns (PointsOperationResponse) {} /* Delete points */ rpc Delete (DeletePoints) returns (PointsOperationResponse) {} /* Retrieve points */ rpc Get (GetPoints) returns (GetResponse) {} /* Update named vectors for point */ rpc UpdateVectors (UpdatePointVectors) returns (PointsOperationResponse) {} /* Delete named vectors for points */ rpc DeleteVectors (DeletePointVectors) returns (PointsOperationResponse) {} /* Set payload for points */ rpc SetPayload (SetPayloadPoints) returns (PointsOperationResponse) {} /* Overwrite payload for points */ rpc OverwritePayload (SetPayloadPoints) returns (PointsOperationResponse) {} /* Delete specified key payload for points */ rpc DeletePayload (DeletePayloadPoints) returns (PointsOperationResponse) {} /* Remove all payload for specified points */ rpc ClearPayload (ClearPayloadPoints) returns (PointsOperationResponse) {} /* Create index for field in collection */ rpc CreateFieldIndex (CreateFieldIndexCollection) returns (PointsOperationResponse) {} /* Delete field index for collection */ rpc DeleteFieldIndex (DeleteFieldIndexCollection) returns (PointsOperationResponse) {} /* Retrieve closest points based on vector similarity and given filtering conditions */ rpc Search (SearchPoints) returns (SearchResponse) {} /* Retrieve closest points based on vector similarity and given filtering conditions */ rpc SearchBatch (SearchBatchPoints) returns (SearchBatchResponse) {} /* Retrieve closest points based on vector similarity and given filtering conditions, grouped by a given field */ rpc SearchGroups (SearchPointGroups) returns (SearchGroupsResponse) {} /* Iterate over all or filtered points points */ rpc Scroll (ScrollPoints) returns (ScrollResponse) {} /* Look for the points which are closer to stored positive examples and at the same time further to negative examples. */ rpc Recommend (RecommendPoints) returns (RecommendResponse) {} /* Look for the points which are closer to stored positive examples and at the same time further to negative examples. */ rpc RecommendBatch (RecommendBatchPoints) returns (RecommendBatchResponse) {} /* Look for the points which are closer to stored positive examples and at the same time further to negative examples, grouped by a given field */ rpc RecommendGroups (RecommendPointGroups) returns (RecommendGroupsResponse) {} /* Count points in collection with given filtering conditions */ rpc Count (CountPoints) returns (CountResponse) {} }