swh:1:snp:e77894886b450c6109aac4a3cdd519d6ed38b51f
Tip revision: 255bf37f5e1470c235f59dcfa2e17c5642fb0f34 authored by jdplatt on 01 April 2019, 11:17:06 UTC
Merge branch 'master' into python_migration
Merge branch 'master' into python_migration
Tip revision: 255bf37
api.swagger.json
{
"swagger": "2.0",
"info": {
"title": "api.proto",
"version": "version not set"
},
"schemes": [
"http",
"https"
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"paths": {
"/api/Manager/CreateStudy": {
"post": {
"summary": "*\nCreate a Study from Study Config.\nGenerate a unique ID and store the Study to DB.",
"operationId": "CreateStudy",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiCreateStudyReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiStudyConfig"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/CreateTrial": {
"post": {
"summary": "*\nCreate a Trial from Trial Config.\nGenerate a unique ID and store the Trial to DB.",
"operationId": "CreateTrial",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiCreateTrialReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiTrial"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/DeleteStudy/{study_id}": {
"get": {
"summary": "* \nDelete a Study from DB by Study ID.",
"operationId": "DeleteStudy",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiDeleteStudyReply"
}
}
},
"parameters": [
{
"name": "study_id",
"in": "path",
"required": true,
"type": "string"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetEarlyStoppingParameterList/{study_id}": {
"get": {
"operationId": "GetEarlyStoppingParameterList",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetEarlyStoppingParameterListReply"
}
}
},
"parameters": [
{
"name": "study_id",
"in": "path",
"required": true,
"type": "string"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetEarlyStoppingParameters/{param_id}": {
"get": {
"operationId": "GetEarlyStoppingParameters",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetEarlyStoppingParametersReply"
}
}
},
"parameters": [
{
"name": "param_id",
"in": "path",
"required": true,
"type": "string"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetMetrics": {
"post": {
"summary": "*\nGet metrics of workers.\nYou can get all logs of metrics since start of the worker.",
"operationId": "GetMetrics",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetMetricsReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiGetMetricsRequest"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetSavedModels": {
"get": {
"operationId": "GetSavedModels",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetSavedModelsReply"
}
}
},
"parameters": [
{
"name": "study_name",
"in": "query",
"required": false,
"type": "string"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetSavedStudies": {
"get": {
"operationId": "GetSavedStudies",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetSavedStudiesReply"
}
}
},
"tags": [
"Manager"
]
}
},
"/api/Manager/GetStudy/{study_id}": {
"get": {
"summary": "* \nGet a Study Config from DB by ID of Study.",
"operationId": "GetStudy",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetStudyReply"
}
}
},
"parameters": [
{
"name": "study_id",
"in": "path",
"required": true,
"type": "string"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetStudyList": {
"get": {
"summary": "*\nGet all Study Configs from DB.",
"operationId": "GetStudyList",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetStudyListReply"
}
}
},
"tags": [
"Manager"
]
}
},
"/api/Manager/GetSuggestionParameterList/{study_id}": {
"get": {
"summary": "*\nGet all suggestion parameter sets from DB.",
"operationId": "GetSuggestionParameterList",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetSuggestionParameterListReply"
}
}
},
"parameters": [
{
"name": "study_id",
"in": "path",
"required": true,
"type": "string"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetSuggestionParameters/{param_id}": {
"get": {
"summary": "*\nGet suggestion parameter set from DB specified.",
"operationId": "GetSuggestionParameters",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetSuggestionParametersReply"
}
}
},
"parameters": [
{
"name": "param_id",
"in": "path",
"required": true,
"type": "string"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetSuggestions": {
"post": {
"summary": "* \nGet Suggestions from a Suggestion service.",
"operationId": "GetSuggestions",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetSuggestionsReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiGetSuggestionsRequest"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetTrial/{trial_id}": {
"get": {
"summary": "*\nGet a Trial Configuration from DB by ID of Trial.",
"operationId": "GetTrial",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetTrialReply"
}
}
},
"parameters": [
{
"name": "trial_id",
"in": "path",
"required": true,
"type": "string"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetTrials/GetShouldStopWorkers": {
"post": {
"operationId": "GetShouldStopWorkers",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetShouldStopWorkersReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiGetShouldStopWorkersRequest"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetTrials/{study_id}": {
"get": {
"summary": "* \nGet a Trial Configs from DB by ID of Study.",
"operationId": "GetTrials",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetTrialsReply"
}
}
},
"parameters": [
{
"name": "study_id",
"in": "path",
"required": true,
"type": "string"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetWorkerFullInfo": {
"get": {
"summary": "* \nGet full information related to specified Workers.\nIt includes Worker Config, HyperParameters and Metrics Logs.",
"operationId": "GetWorkerFullInfo",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetWorkerFullInfoReply"
}
}
},
"parameters": [
{
"name": "study_id",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "trial_id",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "worker_id",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "only_latest_log",
"in": "query",
"required": false,
"type": "boolean",
"format": "boolean"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/GetWorkers": {
"get": {
"summary": "* \nGet a Worker Configs and Status from DB by ID of Study, Trial or Worker.",
"operationId": "GetWorkers",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiGetWorkersReply"
}
}
},
"parameters": [
{
"name": "study_id",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "trial_id",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "worker_id",
"in": "query",
"required": false,
"type": "string"
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/RegisterWorker": {
"post": {
"summary": "*\nCreate a Worker from Worker Config.\nGenerate a unique ID and store the Worker to DB.",
"operationId": "RegisterWorker",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiRegisterWorkerReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiWorker"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/ReportMetricsLogs": {
"post": {
"summary": "*\nReport a logs of metrics for workers.\nThe logs for each worker must have timestamp and must be ordered in time series.\nWhen the log you reported are already reported before, it will be dismissed and get no error.",
"operationId": "ReportMetricsLogs",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiReportMetricsLogsReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiReportMetricsLogsRequest"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/SaveModel": {
"post": {
"operationId": "SaveModel",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiSaveModelReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiSaveModelRequest"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/SaveStudy": {
"post": {
"operationId": "SaveStudy",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiSaveStudyReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiSaveStudyRequest"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/SetEarlyStoppingParameters": {
"post": {
"operationId": "SetEarlyStoppingParameters",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiSetEarlyStoppingParametersReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiSetEarlyStoppingParametersRequest"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/SetSuggestionParameters": {
"post": {
"summary": "*\nCreate or Update parameter set for a suggestion service.\nIf you specify an ID of parameter set, it will update the parameter set by your request.\nIf you don't specify an ID, it will create a new parameter set for corresponding study and suggestion service.\nThe parameters are key-value format.",
"operationId": "SetSuggestionParameters",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiSetSuggestionParametersReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiSetSuggestionParametersRequest"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/UpdateWorkerState": {
"put": {
"summary": "* \nUpdate a Status of Worker.",
"operationId": "UpdateWorkerState",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiUpdateWorkerStateReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiUpdateWorkerStateRequest"
}
}
],
"tags": [
"Manager"
]
}
},
"/api/Manager/ValidateSuggestionParameters": {
"post": {
"summary": "* \nValidate Suggestion Parameters from Study Job.",
"operationId": "ValidateSuggestionParameters",
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/apiValidateSuggestionParametersReply"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/apiValidateSuggestionParametersRequest"
}
}
],
"tags": [
"Manager"
]
}
}
},
"definitions": {
"NasConfigOperations": {
"type": "object",
"properties": {
"operation": {
"type": "array",
"items": {
"$ref": "#/definitions/apiOperation"
}
}
}
},
"apiCreateStudyReply": {
"type": "object",
"properties": {
"study_id": {
"type": "string"
}
},
"description": "*\nReturn generated StudyID."
},
"apiCreateTrialReply": {
"type": "object",
"properties": {
"trial_id": {
"type": "string"
}
},
"description": "*\nReturn generated TrialID."
},
"apiDataSetInfo": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"path": {
"type": "string"
}
}
},
"apiDeleteStudyReply": {
"type": "object",
"properties": {
"study_id": {
"type": "string"
}
},
"description": "*\nReturn deleted Study ID."
},
"apiEarlyStoppingParameter": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"description": "*\nParameter for EarlyStopping service. Key-value format."
},
"apiEarlyStoppingParameterSet": {
"type": "object",
"properties": {
"param_id": {
"type": "string"
},
"early_stopping_algorithm": {
"type": "string"
},
"early_stopping_parameters": {
"type": "array",
"items": {
"$ref": "#/definitions/apiEarlyStoppingParameter"
}
}
}
},
"apiFeasibleSpace": {
"type": "object",
"properties": {
"max": {
"type": "string"
},
"min": {
"type": "string"
},
"list": {
"type": "array",
"items": {
"type": "string"
}
},
"step": {
"type": "string"
}
},
"description": "*\nFeasible space for optimization.\nInt and Double type use Max/Min.\nDiscrete and Categorical type use List."
},
"apiGetEarlyStoppingParameterListReply": {
"type": "object",
"properties": {
"early_stopping_parameter_sets": {
"type": "array",
"items": {
"$ref": "#/definitions/apiEarlyStoppingParameterSet"
}
}
}
},
"apiGetEarlyStoppingParametersReply": {
"type": "object",
"properties": {
"early_stopping_parameters": {
"type": "array",
"items": {
"$ref": "#/definitions/apiEarlyStoppingParameter"
}
}
}
},
"apiGetMetricsReply": {
"type": "object",
"properties": {
"metrics_log_sets": {
"type": "array",
"items": {
"$ref": "#/definitions/apiMetricsLogSet"
}
}
}
},
"apiGetMetricsRequest": {
"type": "object",
"properties": {
"study_id": {
"type": "string"
},
"worker_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"metrics_names": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"apiGetSavedModelsReply": {
"type": "object",
"properties": {
"models": {
"type": "array",
"items": {
"$ref": "#/definitions/apiModelInfo"
}
}
}
},
"apiGetSavedStudiesReply": {
"type": "object",
"properties": {
"studies": {
"type": "array",
"items": {
"$ref": "#/definitions/apiStudyOverview"
}
}
}
},
"apiGetShouldStopWorkersReply": {
"type": "object",
"properties": {
"should_stop_worker_ids": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"apiGetShouldStopWorkersRequest": {
"type": "object",
"properties": {
"study_id": {
"type": "string"
},
"early_stopping_algorithm": {
"type": "string"
},
"param_id": {
"type": "string"
}
}
},
"apiGetStudyListReply": {
"type": "object",
"properties": {
"study_overviews": {
"type": "array",
"items": {
"$ref": "#/definitions/apiStudyOverview"
}
}
},
"description": "* \nReturn a overview list of Studies."
},
"apiGetStudyReply": {
"type": "object",
"properties": {
"study_config": {
"$ref": "#/definitions/apiStudyConfig"
}
},
"description": "*\nReturn a config of specified Study."
},
"apiGetSuggestionParameterListReply": {
"type": "object",
"properties": {
"suggestion_parameter_sets": {
"type": "array",
"items": {
"$ref": "#/definitions/apiSuggestionParameterSet"
}
}
}
},
"apiGetSuggestionParametersReply": {
"type": "object",
"properties": {
"suggestion_parameters": {
"type": "array",
"items": {
"$ref": "#/definitions/apiSuggestionParameter"
}
}
}
},
"apiGetSuggestionsReply": {
"type": "object",
"properties": {
"trials": {
"type": "array",
"items": {
"$ref": "#/definitions/apiTrial"
}
}
}
},
"apiGetSuggestionsRequest": {
"type": "object",
"properties": {
"study_id": {
"type": "string"
},
"suggestion_algorithm": {
"type": "string"
},
"request_number": {
"type": "integer",
"format": "int32"
},
"log_worker_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"param_id": {
"type": "string"
}
}
},
"apiGetTrialReply": {
"type": "object",
"properties": {
"trial": {
"$ref": "#/definitions/apiTrial"
}
},
"title": "*\nReturn a trial configuration by specified trial ID"
},
"apiGetTrialsReply": {
"type": "object",
"properties": {
"trials": {
"type": "array",
"items": {
"$ref": "#/definitions/apiTrial"
}
}
},
"description": "*\nReturn a trial list in specified Study."
},
"apiGetWorkerFullInfoReply": {
"type": "object",
"properties": {
"worker_full_infos": {
"type": "array",
"items": {
"$ref": "#/definitions/apiWorkerFullInfo"
}
}
}
},
"apiGetWorkersReply": {
"type": "object",
"properties": {
"workers": {
"type": "array",
"items": {
"$ref": "#/definitions/apiWorker"
}
}
},
"description": "*\nReturn a Worker list by specified condition."
},
"apiGraphConfig": {
"type": "object",
"properties": {
"num_layers": {
"type": "integer",
"format": "int32"
},
"input_size": {
"type": "array",
"items": {
"type": "integer",
"format": "int32"
}
},
"output_size": {
"type": "array",
"items": {
"type": "integer",
"format": "int32"
}
}
},
"title": "*\nGraphConfig contains a config of DAG"
},
"apiMetrics": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"title": "*\nMetrics of a worker"
},
"apiMetricsLog": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"values": {
"type": "array",
"items": {
"$ref": "#/definitions/apiMetricsValueTime"
}
}
},
"title": "*\nMetrics logs of a worker"
},
"apiMetricsLogSet": {
"type": "object",
"properties": {
"worker_id": {
"type": "string"
},
"metrics_logs": {
"type": "array",
"items": {
"$ref": "#/definitions/apiMetricsLog"
}
},
"worker_status": {
"$ref": "#/definitions/apiState"
}
},
"description": "*\nLogs of metrics for a worker."
},
"apiMetricsValueTime": {
"type": "object",
"properties": {
"time": {
"type": "string"
},
"value": {
"type": "string"
}
},
"title": "*\nMetrics of a worker with timestamp"
},
"apiModelInfo": {
"type": "object",
"properties": {
"study_name": {
"type": "string"
},
"worker_id": {
"type": "string"
},
"parameters": {
"type": "array",
"items": {
"$ref": "#/definitions/apiParameter"
}
},
"metrics": {
"type": "array",
"items": {
"$ref": "#/definitions/apiMetrics"
}
},
"model_path": {
"type": "string"
}
}
},
"apiNasConfig": {
"type": "object",
"properties": {
"graph_config": {
"$ref": "#/definitions/apiGraphConfig"
},
"operations": {
"$ref": "#/definitions/NasConfigOperations"
}
},
"title": "*\nNasConfig contains a config of NAS job"
},
"apiOperation": {
"type": "object",
"properties": {
"operationType": {
"type": "string"
},
"parameter_configs": {
"$ref": "#/definitions/apiOperationParameterConfigs"
}
},
"title": "*\nConfig for operations in DAG"
},
"apiOperationParameterConfigs": {
"type": "object",
"properties": {
"configs": {
"type": "array",
"items": {
"$ref": "#/definitions/apiParameterConfig"
}
}
},
"title": "* \nList of ParameterConfig"
},
"apiOptimizationType": {
"type": "string",
"enum": [
"UNKNOWN_OPTIMIZATION",
"MINIMIZE",
"MAXIMIZE"
],
"default": "UNKNOWN_OPTIMIZATION",
"description": "*\nDirection of optimization. Minimize or Maximize."
},
"apiParameter": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"parameter_type": {
"$ref": "#/definitions/apiParameterType"
},
"value": {
"type": "string"
}
},
"description": "*\nValue of a Hyper parameter.\nThis will be created from a correcponding Config."
},
"apiParameterConfig": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"parameter_type": {
"$ref": "#/definitions/apiParameterType"
},
"feasible": {
"$ref": "#/definitions/apiFeasibleSpace"
}
},
"description": "*\nConfig for a Hyper parameter.\nKatib will create each Hyper parameter from this config."
},
"apiParameterType": {
"type": "string",
"enum": [
"UNKNOWN_TYPE",
"DOUBLE",
"INT",
"DISCRETE",
"CATEGORICAL"
],
"default": "UNKNOWN_TYPE",
"description": "*\nTypes of value for HyperParameter."
},
"apiRegisterWorkerReply": {
"type": "object",
"properties": {
"worker_id": {
"type": "string"
}
},
"description": "*\nReturn generated WorkerID."
},
"apiReportMetricsLogsReply": {
"type": "object"
},
"apiReportMetricsLogsRequest": {
"type": "object",
"properties": {
"study_id": {
"type": "string"
},
"metrics_log_sets": {
"type": "array",
"items": {
"$ref": "#/definitions/apiMetricsLogSet"
}
}
}
},
"apiSaveModelReply": {
"type": "object"
},
"apiSaveModelRequest": {
"type": "object",
"properties": {
"model": {
"$ref": "#/definitions/apiModelInfo"
},
"data_set": {
"$ref": "#/definitions/apiDataSetInfo"
},
"tensor_board": {
"type": "boolean",
"format": "boolean"
}
}
},
"apiSaveStudyReply": {
"type": "object"
},
"apiSaveStudyRequest": {
"type": "object",
"properties": {
"study_name": {
"type": "string"
},
"owner": {
"type": "string"
},
"description": {
"type": "string"
}
}
},
"apiSetEarlyStoppingParametersReply": {
"type": "object",
"properties": {
"param_id": {
"type": "string"
}
}
},
"apiSetEarlyStoppingParametersRequest": {
"type": "object",
"properties": {
"study_id": {
"type": "string"
},
"early_stopping_algorithm": {
"type": "string"
},
"param_id": {
"type": "string"
},
"early_stopping_parameters": {
"type": "array",
"items": {
"$ref": "#/definitions/apiEarlyStoppingParameter"
}
}
}
},
"apiSetSuggestionParametersReply": {
"type": "object",
"properties": {
"param_id": {
"type": "string"
}
}
},
"apiSetSuggestionParametersRequest": {
"type": "object",
"properties": {
"study_id": {
"type": "string"
},
"suggestion_algorithm": {
"type": "string"
},
"param_id": {
"type": "string"
},
"suggestion_parameters": {
"type": "array",
"items": {
"$ref": "#/definitions/apiSuggestionParameter"
}
}
}
},
"apiState": {
"type": "string",
"enum": [
"PENDING",
"RUNNING",
"COMPLETED",
"KILLED",
"ERROR"
],
"default": "PENDING",
"description": "*\nStatus code for worker.\nThis value is stored as TINYINT in MySQL."
},
"apiStudyConfig": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"owner": {
"type": "string"
},
"optimization_type": {
"$ref": "#/definitions/apiOptimizationType"
},
"optimization_goal": {
"type": "number",
"format": "double"
},
"parameter_configs": {
"$ref": "#/definitions/apiStudyConfigParameterConfigs"
},
"access_permissions": {
"type": "array",
"items": {
"type": "string"
}
},
"tags": {
"type": "array",
"items": {
"$ref": "#/definitions/apiTag"
}
},
"objective_value_name": {
"type": "string"
},
"metrics": {
"type": "array",
"items": {
"type": "string"
}
},
"jobId": {
"type": "string"
},
"nas_config": {
"$ref": "#/definitions/apiNasConfig"
},
"job_type": {
"type": "string"
}
},
"description": "*\nConfig of a Study. Study represents a single optimization run over a feasible space. \nEach Study contains a configuration describing the feasible space, as well as a set of Trials.\nIt is assumed that objective function f(x) does not change in the course of a Study."
},
"apiStudyConfigParameterConfigs": {
"type": "object",
"properties": {
"configs": {
"type": "array",
"items": {
"$ref": "#/definitions/apiParameterConfig"
}
}
},
"title": "* \nList of ParameterConfig"
},
"apiStudyOverview": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"owner": {
"type": "string"
},
"id": {
"type": "string"
},
"description": {
"type": "string"
}
},
"description": "*\nOverview of a study. For UI."
},
"apiSuggestionParameter": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"description": "*\nParameter for Suggestion service. Key-value format."
},
"apiSuggestionParameterSet": {
"type": "object",
"properties": {
"param_id": {
"type": "string"
},
"suggestion_algorithm": {
"type": "string"
},
"suggestion_parameters": {
"type": "array",
"items": {
"$ref": "#/definitions/apiSuggestionParameter"
}
}
}
},
"apiTag": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"description": "*\nTag for each resource."
},
"apiTrial": {
"type": "object",
"properties": {
"trial_id": {
"type": "string"
},
"study_id": {
"type": "string"
},
"parameter_set": {
"type": "array",
"items": {
"$ref": "#/definitions/apiParameter"
}
},
"objective_value": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/definitions/apiTag"
}
},
"create_time": {
"type": "string"
}
},
"title": "*\nA set of Hyperparameter.\nIn a study, multiple trials are evaluated by workers.\nSuggestion service will generate next trials.\nCreate time will be filled in the server automatically side even user set the value"
},
"apiUpdateWorkerStateReply": {
"type": "object"
},
"apiUpdateWorkerStateRequest": {
"type": "object",
"properties": {
"worker_id": {
"type": "string"
},
"status": {
"$ref": "#/definitions/apiState"
}
},
"description": "* \nUpdate a Status of Worker."
},
"apiValidateSuggestionParametersReply": {
"type": "object",
"title": "*\nReturn 1 if Suggestion Parameters is Valid, 0 if not"
},
"apiValidateSuggestionParametersRequest": {
"type": "object",
"properties": {
"study_config": {
"$ref": "#/definitions/apiStudyConfig"
},
"suggestion_algorithm": {
"type": "string"
},
"suggestion_parameters": {
"type": "array",
"items": {
"$ref": "#/definitions/apiSuggestionParameter"
}
}
}
},
"apiWorker": {
"type": "object",
"properties": {
"worker_id": {
"type": "string"
},
"study_id": {
"type": "string"
},
"trial_id": {
"type": "string"
},
"Type": {
"type": "string"
},
"status": {
"$ref": "#/definitions/apiState"
},
"TemplatePath": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/definitions/apiTag"
}
}
},
"description": "* \nA process of evaluation for a trial.\nTypes of worker supported by Katib are k8s Job, TF-Job, and Pytorch-Job."
},
"apiWorkerFullInfo": {
"type": "object",
"properties": {
"Worker": {
"$ref": "#/definitions/apiWorker"
},
"parameter_set": {
"type": "array",
"items": {
"$ref": "#/definitions/apiParameter"
}
},
"metrics_logs": {
"type": "array",
"items": {
"$ref": "#/definitions/apiMetricsLog"
}
}
}
}
}
}