Spaces:
Sleeping
Sleeping
File size: 3,349 Bytes
287a0bc |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 |
syntax = "proto3";
package chroma;
option go_package = "github.com/chroma/chroma-coordinator/internal/proto/coordinatorpb";
import "chromadb/proto/chroma.proto";
import "google/protobuf/empty.proto";
message CreateDatabaseRequest {
string id = 1;
string name = 2;
string tenant = 3;
}
message GetDatabaseRequest {
string name = 1;
string tenant = 2;
}
message GetDatabaseResponse {
Database database = 1;
Status status = 2;
}
message CreateTenantRequest {
string name = 2; // Names are globally unique
}
message GetTenantRequest {
string name = 1;
}
message GetTenantResponse {
Tenant tenant = 1;
Status status = 2;
}
message CreateSegmentRequest {
Segment segment = 1;
}
message DeleteSegmentRequest {
string id = 1;
}
message GetSegmentsRequest {
optional string id = 1;
optional string type = 2;
optional SegmentScope scope = 3;
optional string topic = 4;
optional string collection = 5; // Collection ID
}
message GetSegmentsResponse {
repeated Segment segments = 1;
Status status = 2;
}
message UpdateSegmentRequest {
string id = 1;
oneof topic_update {
string topic = 2;
bool reset_topic = 3;
}
oneof collection_update {
string collection = 4;
bool reset_collection = 5;
}
oneof metadata_update {
UpdateMetadata metadata = 6;
bool reset_metadata = 7;
}
}
message CreateCollectionRequest {
string id = 1;
string name = 2;
optional UpdateMetadata metadata = 3;
optional int32 dimension = 4;
optional bool get_or_create = 5;
string tenant = 6;
string database = 7;
}
message CreateCollectionResponse {
Collection collection = 1;
bool created = 2;
Status status = 3;
}
message DeleteCollectionRequest {
string id = 1;
string tenant = 2;
string database = 3;
}
message GetCollectionsRequest {
optional string id = 1;
optional string name = 2;
optional string topic = 3;
string tenant = 4;
string database = 5;
}
message GetCollectionsResponse {
repeated Collection collections = 1;
Status status = 2;
}
message UpdateCollectionRequest {
string id = 1;
optional string topic = 2;
optional string name = 3;
optional int32 dimension = 4;
oneof metadata_update {
UpdateMetadata metadata = 5;
bool reset_metadata = 6;
}
}
message Notification {
int64 id = 1;
string collection_id = 2;
string type = 3;
string status = 4;
}
service SysDB {
rpc CreateDatabase(CreateDatabaseRequest) returns (ChromaResponse) {}
rpc GetDatabase(GetDatabaseRequest) returns (GetDatabaseResponse) {}
rpc CreateTenant(CreateTenantRequest) returns (ChromaResponse) {}
rpc GetTenant(GetTenantRequest) returns (GetTenantResponse) {}
rpc CreateSegment(CreateSegmentRequest) returns (ChromaResponse) {}
rpc DeleteSegment(DeleteSegmentRequest) returns (ChromaResponse) {}
rpc GetSegments(GetSegmentsRequest) returns (GetSegmentsResponse) {}
rpc UpdateSegment(UpdateSegmentRequest) returns (ChromaResponse) {}
rpc CreateCollection(CreateCollectionRequest) returns (CreateCollectionResponse) {}
rpc DeleteCollection(DeleteCollectionRequest) returns (ChromaResponse) {}
rpc GetCollections(GetCollectionsRequest) returns (GetCollectionsResponse) {}
rpc UpdateCollection(UpdateCollectionRequest) returns (ChromaResponse) {}
rpc ResetState(google.protobuf.Empty) returns (ChromaResponse) {}
}
|