Katib
Reference documentation for Katib
This is the legacy gRPC API reference for Katib v1alpha3 version.
Corresponding Katib documentation can be found in
1.0 Kubeflow documentation.
Table of Contents
Top
api.proto
Katib API v1alpha3
AlgorithmSetting
AlgorithmSpec
DeleteObservationLogReply
DeleteObservationLogRequest
Field |
Type |
Label |
Description |
trial_name |
string |
|
|
EarlyStoppingSpec
TODO: This feature is not yet fully implemented.
Experiment
Field |
Type |
Label |
Description |
name |
string |
|
Name of Experiment. This is unique in DB. |
spec |
ExperimentSpec |
|
|
ExperimentSpec
Spec of a Experiment. Experiment represents a single optimization run over a feasible space.
Each Experiment contains a configuration describing the feasible space, as well as a set of Trials.
It is assumed that objective function f(x) does not change in the course of a Experiment.
ExperimentSpec.ParameterSpecs
List of ParameterSpec
FeasibleSpace
Feasible space for optimization.
Int and Double type use Max/Min.
Discrete and Categorical type use List.
Field |
Type |
Label |
Description |
max |
string |
|
Max Value |
min |
string |
|
Minimum Value |
list |
string |
repeated |
List of Values. |
step |
string |
|
Step for double or int parameter |
GetObservationLogReply
GetObservationLogRequest
Field |
Type |
Label |
Description |
trial_name |
string |
|
|
metric_name |
string |
|
|
start_time |
string |
|
The start of the time range. RFC3339 format |
end_time |
string |
|
The end of the time range. RFC3339 format |
GetSuggestionsReply
GetSuggestionsReply.ParameterAssignments
GetSuggestionsRequest
Field |
Type |
Label |
Description |
experiment |
Experiment |
|
|
trials |
Trial |
repeated |
all completed trials owned by the experiment. |
request_number |
int32 |
|
The number of Suggestion you request at one time. When you set 3 to request_number, you can get three Suggestions at one time. |
GraphConfig
GraphConfig contains a config of DAG
Field |
Type |
Label |
Description |
num_layers |
int32 |
|
Number of layers |
input_sizes |
int32 |
repeated |
Dimensions of input size |
output_sizes |
int32 |
repeated |
Dimensions of output size |
Metric
MetricLog
Field |
Type |
Label |
Description |
time_stamp |
string |
|
RFC3339 format |
metric |
Metric |
|
|
NasConfig
NasConfig contains a config of NAS job
NasConfig.Operations
Field |
Type |
Label |
Description |
operation |
Operation |
repeated |
|
ObjectiveSpec
Field |
Type |
Label |
Description |
type |
ObjectiveType |
|
|
goal |
double |
|
|
objective_metric_name |
string |
|
|
additional_metric_names |
string |
repeated |
This can be empty if we only care about the objective metric. |
Observation
Field |
Type |
Label |
Description |
metrics |
Metric |
repeated |
|
ObservationLog
Field |
Type |
Label |
Description |
metric_logs |
MetricLog |
repeated |
|
Operation
Config for operations in DAG
Operation.ParameterSpecs
List of ParameterSpec
ParameterAssignment
ParameterSpec
Config for a Hyper parameter.
Katib will create each Hyper parameter from this config.
Field |
Type |
Label |
Description |
name |
string |
|
Name of the parameter. |
parameter_type |
ParameterType |
|
Type of the parameter. |
feasible_space |
FeasibleSpace |
|
FeasibleSpace for the parameter. |
ReportObservationLogReply
ReportObservationLogRequest
Trial
TrialSpec
TrialSpec.ParameterAssignments
List of ParameterAssignment
TrialStatus
ValidateAlgorithmSettingsReply
Return INVALID_ARGUMENT Error if Algorithm Settings are not Valid
ValidateAlgorithmSettingsRequest
Field |
Type |
Label |
Description |
experiment |
Experiment |
|
|
ObjectiveType
Direction of optimization. Minimize or Maximize.
Name |
Number |
Description |
UNKNOWN |
0 |
Undefined type and not used. |
MINIMIZE |
1 |
Minimize |
MAXIMIZE |
2 |
Maximize |
ParameterType
Types of value for HyperParameter.
Name |
Number |
Description |
UNKNOWN_TYPE |
0 |
Undefined type and not used. |
DOUBLE |
1 |
Double float type. Use "Max/Min". |
INT |
2 |
Int type. Use "Max/Min". |
DISCRETE |
3 |
Discrete number type. Use "List" as float. |
CATEGORICAL |
4 |
Categorical type. Use "List" as string. |
TrialStatus.TrialConditionType
Name |
Number |
Description |
CREATED |
0 |
|
RUNNING |
1 |
|
SUCCEEDED |
2 |
|
KILLED |
3 |
|
FAILED |
4 |
|
UNKNOWN |
5 |
|
EarlyStopping
TODO: This feature is not yet fully implemented.
Method Name |
Request Type |
Response Type |
Description |
Manager
Service for Main API for Katib
For each RPC service, we define mapping to HTTP REST API method.
The mapping includes the URL path, query parameters and request body.
https://cloud.google.com/service-infrastructure/docs/service-management/reference/rpc/google.api#http
Suggestion
Scalar Value Types
.proto Type |
Notes |
C++ Type |
Java Type |
Python Type |
double |
|
double |
double |
float |
float |
|
float |
float |
float |
int32 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. |
int32 |
int |
int |
int64 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. |
int64 |
long |
int/long |
uint32 |
Uses variable-length encoding. |
uint32 |
int |
int/long |
uint64 |
Uses variable-length encoding. |
uint64 |
long |
int/long |
sint32 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. |
int32 |
int |
int |
sint64 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. |
int64 |
long |
int/long |
fixed32 |
Always four bytes. More efficient than uint32 if values are often greater than 2^28. |
uint32 |
int |
int |
fixed64 |
Always eight bytes. More efficient than uint64 if values are often greater than 2^56. |
uint64 |
long |
int/long |
sfixed32 |
Always four bytes. |
int32 |
int |
int |
sfixed64 |
Always eight bytes. |
int64 |
long |
int/long |
bool |
|
bool |
boolean |
boolean |
string |
A string must always contain UTF-8 encoded or 7-bit ASCII text. |
string |
String |
str/unicode |
bytes |
May contain any arbitrary sequence of bytes. |
string |
ByteString |
str |