forked from rai-project/dlframework
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathregistry.proto
192 lines (174 loc) · 7.35 KB
/
registry.proto
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
syntax = "proto3";
// MLModelScope
//
// MLModelScope is a hardware/software agnostic platform to
// facilitate the evaluation, measurement, and introspection
// of ML models within AI pipelines. MLModelScope aids application
// developers in discovering and experimenting with models, data
// scientists developers in replicating and evaluating for
// publishing models, and system architects in understanding
// the performance of AI workloads.
package mlmodelscope.org.dlframework;
import "google/api/annotations.proto";
import "gogoproto/gogo.proto";
option (gogoproto.goproto_registration) = true;
option (gogoproto.gostring_all) = true;
option (gogoproto.equal_all) = true;
option (gogoproto.verbose_equal_all) = true;
option (gogoproto.goproto_stringer_all) = false;
option (gogoproto.stringer_all) = true;
option (gogoproto.populate_all) = true;
option (gogoproto.testgen_all) = true;
option (gogoproto.benchgen_all) = true;
option (gogoproto.marshaler_all) = true;
option (gogoproto.sizer_all) = true;
option (gogoproto.unmarshaler_all) = true;
option go_package = "dlframework";
message ErrorStatus {
option (gogoproto.description) = true;
bool ok = 1 [ (gogoproto.moretags) = "yaml:\"ok,omitempty\"" ];
string message = 2 [ (gogoproto.moretags) = "yaml:\"message,omitempty\"" ];
}
message ContainerHardware {
option (gogoproto.description) = true;
string gpu = 1 [ (gogoproto.moretags) = "yaml:\"gpu,omitempty\"" ];
string cpu = 2 [ (gogoproto.moretags) = "yaml:\"cpu,omitempty\"" ];
}
message FrameworkManifest {
option (gogoproto.description) = true;
string name = 1 [ (gogoproto.moretags) = "yaml:\"name,omitempty\"" ];
string version = 2 [ (gogoproto.moretags) = "yaml:\"version,omitempty\"" ];
map<string, ContainerHardware> container = 3
[ (gogoproto.moretags) = "yaml:\"container,omitempty\"" ];
}
message ModelManifest {
message Type {
message Parameter {
string value = 1 [ (gogoproto.moretags) = "yaml:\",inline\"" ];
}
string type = 1 [ (gogoproto.moretags) = "yaml:\"type,omitempty\"" ];
string description = 2
[ (gogoproto.moretags) = "yaml:\"description,omitempty\"" ];
map<string, Parameter> parameters = 3
[ (gogoproto.moretags) = "yaml:\"parameters,omitempty\"" ];
}
message Model {
string base_url = 1
[ (gogoproto.moretags) = "yaml:\"base_url,omitempty\"" ];
string weights_path = 2
[ (gogoproto.moretags) = "yaml:\"weights_path,omitempty\"" ];
string graph_path = 3
[ (gogoproto.moretags) = "yaml:\"graph_path,omitempty\"" ];
bool is_archive = 4
[ (gogoproto.moretags) = "yaml:\"is_archive,omitempty\"" ];
string weights_checksum = 5
[ (gogoproto.moretags) = "yaml:\"weights_checksum,omitempty\"" ];
string graph_checksum = 6
[ (gogoproto.moretags) = "yaml:\"graph_checksum,omitempty\"" ];
string features_path = 7
[ (gogoproto.moretags) = "yaml:\"features_path,omitempty\"" ];
string features_checksum = 8
[ (gogoproto.moretags) = "yaml:\"features_checksum,omitempty\"" ];
}
string name = 1 [ (gogoproto.moretags) = "yaml:\"name,omitempty\"" ];
string version = 2 [ (gogoproto.moretags) = "yaml:\"version,omitempty\"" ];
FrameworkManifest framework = 3
[ (gogoproto.moretags) = "yaml:\"framework,omitempty\"" ];
map<string, ContainerHardware> container = 4
[ (gogoproto.moretags) = "yaml:\"container,omitempty\"" ];
string description = 5
[ (gogoproto.moretags) = "yaml:\"description,omitempty\"" ];
repeated string reference = 6
[ (gogoproto.moretags) = "yaml:\"references,omitempty\"" ];
string license = 7 [ (gogoproto.moretags) = "yaml:\"license,omitempty\"" ];
repeated Type inputs = 8
[ (gogoproto.moretags) = "yaml:\"inputs,omitempty\"" ];
repeated Type outputs = 9
[ (gogoproto.moretags) = "yaml:\"outputs,omitempty\"" ];
string before_preprocess = 10
[ (gogoproto.moretags) = "yaml:\"before_preprocess,omitempty\"" ];
string preprocess = 11
[ (gogoproto.moretags) = "yaml:\"preprocess,omitempty\"" ];
string after_preprocess = 12
[ (gogoproto.moretags) = "yaml:\"after_preprocess,omitempty\"" ];
string before_postprocess = 13
[ (gogoproto.moretags) = "yaml:\"before_postprocess,omitempty\"" ];
string postprocess = 14
[ (gogoproto.moretags) = "yaml:\"postprocess,omitempty\"" ];
string after_postprocess = 15
[ (gogoproto.moretags) = "yaml:\"after_postprocess,omitempty\"" ];
Model model = 16 [ (gogoproto.moretags) = "yaml:\"model,omitempty\"" ];
map<string, string> attributes = 17
[ (gogoproto.moretags) = "yaml:\"attributes,omitempty\"" ];
bool hidden = 18 [ (gogoproto.moretags) = "yaml:\"hidden,omitempty\"" ];
string modality = 19 [ (gogoproto.moretags) = "yaml:\"modality,omitempty\"" ];
}
message FrameworkRequest {
option (gogoproto.description) = true;
string framework_name = 1
[ (gogoproto.moretags) = "yaml:\"framework_name,omitempty\"" ];
string framework_version = 2
[ (gogoproto.moretags) = "yaml:\"framework_version,omitempty\"" ];
}
message FrameworkManifestsResponse {
option (gogoproto.description) = true;
repeated FrameworkManifest manifests = 1
[ (gogoproto.moretags) = "yaml:\"manifests,omitempty\"" ];
}
message Agent {
option (gogoproto.description) = true;
string host = 1 [ (gogoproto.moretags) = "yaml:\"host,omitempty\"" ];
string port = 2 [ (gogoproto.moretags) = "yaml:\"port,omitempty\"" ];
string hostname = 3 [ (gogoproto.moretags) = "yaml:\"hostname,omitempty\"" ];
string architecture = 4 [ (gogoproto.moretags) = "yaml:\"architecture,omitempty\"" ];
bool hasgpu = 5 [ (gogoproto.moretags) = "yaml:\"hasgpu,omitempty\"" ];
string cpuinfo = 6 [ (gogoproto.moretags) = "yaml:\"cpuinfo,omitempty\"" ];
string gpuinfo = 7 [ (gogoproto.moretags) = "yaml:\"gpuinfo,omitempty\"" ];
repeated FrameworkManifest frameworks = 8 [ (gogoproto.moretags) = "yaml:\"frameworks,omitempty\"" ];
map<string, string> metadata = 9
[ (gogoproto.moretags) = "yaml:\"metadata,omitempty\"" ];
}
message Agents {
option (gogoproto.description) = true;
repeated Agent agents = 1
[ (gogoproto.moretags) = "yaml:\"agents,omitempty\"" ];
}
message ModelRequest {
option (gogoproto.description) = true;
string framework_name = 1
[ (gogoproto.moretags) = "yaml:\"framework_name,omitempty\"" ];
string framework_version = 2
[ (gogoproto.moretags) = "yaml:\"framework_version,omitempty\"" ];
string model_name = 3
[ (gogoproto.moretags) = "yaml:\"model_name,omitempty\"" ];
string model_version = 4
[ (gogoproto.moretags) = "yaml:\"model_version,omitempty\"" ];
}
message ModelManifestsResponse {
option (gogoproto.description) = true;
repeated ModelManifest manifests = 1
[ (gogoproto.moretags) = "yaml:\"manifests,omitempty\"" ];
}
service Registry {
rpc FrameworkManifests(FrameworkRequest)
returns (FrameworkManifestsResponse) {
option (google.api.http) = {
get : "/registry/frameworks/manifest",
};
}
rpc FrameworkAgents(FrameworkRequest) returns (Agents) {
option (google.api.http) = {
get : "/registry/frameworks/agent",
};
}
rpc ModelManifests(ModelRequest) returns (ModelManifestsResponse) {
option (google.api.http) = {
get : "/registry/models/manifest",
};
}
rpc ModelAgents(ModelRequest) returns (Agents) {
option (google.api.http) = {
get : "/registry/models/agent",
};
}
}