Module clients.dai_engine.dai_engine_client
Classes
DAIEngineClient
DAIEngineClient manages Driverless AI engines.
Initializes DAIEngineClient. Do not initialize manually, use h2o_engine_manager.login() instead.
Args
connection_config:ConnectionConfig- AIEM connection configuration object.
default_workspace_id:str- The default workspace ID which will client use to manipulate with DAI engines.
verify_ssl- Set to False to disable SSL certificate verification.
ssl_ca_cert- Path to a CA cert bundle with certificates of trusted CAs.
Methods
create_engine
Creates Driverless AI engine and initiates launch. Immediately returned engine had just begun launching.
Args
workspace_id:str, optional- The workspace ID where the engine is to be created. Defaults to DriverlessClients default value (
defaultif not set). engine_id:str, optional- The ID to use for the Driverless AI engine, which will become the final component of the engine's resource name. If left unspecified, the client will generate a random value. This value must: - contain 1-63 characters - contain only lowercase alphanumeric characters or hyphen ('-') - start with an alphabetic character - end with an alphanumeric character
cpu:int, optional- The amount of CPU units allocated for the engine. If not specified, a default value will be set by server.
gpu:int, optional- Number of nvidia.com/gpu Kubernetes resource units. If not specified, a default value will be set by server.
memory_bytes:str, optional- Quantity of bytes. If not specified, a default value will be set by server. Example
8G,16Gi. Detailed syntax: - [quantity] = [number][suffix] - [suffix] = [binarySI] | [decimalSI] - [binarySI] = Ki | Mi | Gi | Ti | Pi - [decimalSI] = k | M | G | T | P storage_bytes:str, optional- Quantity of bytes. Example
250G,2T. Same syntax applies asmemory_bytesparameter. If not specified, a default value will be set by server. max_idle_duration:str, optional- Maximum time an engine can be idle. When exceeded, the engine will pause. Must be specified as a number with
ssuffix. Example3600s. If not specified, a default value will be set by server. max_running_duration:str, optional- Maximum time na engine can be running. When exceeded, the engine will pause. Must be specified as a number with
ssuffix. Example36000s. If not specified, a default value will be set by server. display_name:str- Human-readable name of the DAIEngine. Must contain at most 63 characters. Does not have to be unique.
config:Dict[str, str], optional- Additional Driverless AI configuration.
annotations:Dict[str, str], optional- Additional arbitrary metadata associated with the DAIEngine. Annotations are key/value pairs. The key must: - be 63 characters or less - begin and end with an alphanumeric character ([a-z0-9A-Z]) - with dashes (-), underscores (_), dots (.), and alphanumerics between - regex used for validation is:
^[A-Za-z0-9]([-A-Za-z0-9_.]61[A-Za-z0-9])?$ validate_only:bool, optional- If set to True, server will validate the request, but no engine will be created. Defaults to False.
profile- resource name of the DAIEngineProfile that is used by this DAIEngine. Format: "workspace//daiEngineProfiles/". If unspecified, client will pick some profile.
dai_engine_version- DAIEngineVersion assigned to DAIEngine. Format: "workspaces//daiEngineVersions/". If unspecified, client will pick some version.
Returns
DAIEngine- Driverless AI engine.
generate_engine_id
get_engine
list_all_engines
Returns a list of all engines within a parent workspace.
Args
workspace_id:str, optional- ID of the workspace. Defaults to DriverlessClients default value (
defaultif not set). order_by:str, optional- Identical to the list_engines function order_by parameter.
filter:str, optional- Identical to the list_engines function filter parameter.
Returns
List[DAIEngine]- A list of Driverless AI engines.
list_engines
Returns a list of engines within a parent workspace.
Args
workspace_id:str, optional- ID of the workspace. Defaults to DAIEngineClient's default value (
defaultif not set). page_size:int, optional- Maximum number of DAIEngines to return in a response. If unspecified (or set to 0), at most 50 DAIEngines will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.
page_token:str, optional- Leave unset to receive the initial page. To list any subsequent pages use the value of 'next_page_token' returned from the DAIEnginesPage.
order_by:str, optionalUsed to specify the sorting order. When unset, DAIEngines are ordered by their time of creation in descending order. This is equivalent to "create_time desc". When specified, the value must be a comma separated list of supported fields. The supported fields are:
- name
- cpu
- gpu
- memory_bytes
- storage_bytes
- creator
- create_time
- update_time
- delete_time
- resume_time
- display_name
- max_idle_duration
- max_running_duration
- uid
The default sorting order is ascending. For example: "name" and "name asc" are equivalent values. To specify descending order for a field, append a " desc" suffix. For example: "name desc". Redundant space characters are insignificant. For example these values are all equal:
- " name, cpu desc"
- "name, cpu desc"
- "name , cpu desc "
Undefined (empty) time is interpreted as a zero time (0s since epoch, i.e. 1970-01-01T00:00:00Z). Undefined (empty) duration is interpreted as a zero duration (0 seconds).
filter:str, optionalUsed to filter DAIEngines. When unset, no filtering is applied. When specified, the filter string must follow this formatting rules:
- filter expression: [term] AND [term] AND [term] …
- term: [filter_field] [operator] [value]
- filter_field: (name|version|state|cpu|gpu|memory_bytes|storage_bytes|creator|create_time|update_time|delete_time|resume_time|reconciling|uid|display_name|max_idle_duration|max_running_duration|uid)
- operator: (=|!=|<=|<|>=|>)
- value: ([text]|[string])
- text: free-form set of characters without whitespace (WS) or . (DOT) within it. (e.g.
28,abc,@5_6_7$) - string: a quoted string. Text may contain whitespace (WS) or . (DOT) within it. (e.g.
"28","abc","@5_6_7$"," foo . ")
Filter expression is case sensitive. Additional constraints:
- You MUST use separator
<space>AND<space>between terms. - String value MUST NOT contain
<space>AND<space>.
Each field may support only some operators:
- string fields (name, version, creator, uid) support: =, !=, <=, <, >=, >
- number fields (cpu, gpu, memory_bytes, storage_bytes) support: =, !=, <=, <, >=, >
- bool fields (reconciling) support: =, !=
- enum fields (state) support: =, !=
- time fields (create_time) support: =, !=, <=, <, >=, >
Each field may expect values in a specified format:
- string fields expect: text or string. For example
foo,"f oo". For examplef oois invalid. - number fields expect: numbers (can be wrapped in parentheses). For example:
28,-100,56.8,"666" - integer number fields expect: integers. For example:
cpu = 10.5is invalid. - bool fields expect:
trueorfalseliterals. For example:reconciling = trueis valid.reconciling = 1orreconciling = TRUEis invalid. - enum fields expect: enum's string representation. For example
state = STATE_RUNNINGis valid.state = RUNNINGorstate = state_runningis invalid. - time fields expect: RFC-3339 formatted string. UTC offsets are supported. For example
2012-04-21T11:30:00-04:00is valid.2012-04-21is invalid.
Valid filter expression examples:
state = STATE_RUNNING AND cpu <= 5 AND gpu != 0 AND create_time > 2012-04-21T11:30:00-04:00state=STATE_RUNNING AND cpu<=5(there may be no whitespace between term parts:[filter_field][operator][value])
Invalid filter expression examples:
state = STATE_RUNNING AND cpu <= 5(invalid separator between terms)state = STATE_RUNNING OR cpu <= 5(unsupported logical operator)(state = STATE_RUNNING) AND (cpu <= 5)(unsupported parentheses)
Returns
DAIEnginesPage- A list of Driverless AI engines together with a next_page_token for the next page.
set_default_workspace_id
Sets default workspace for subsequest requests made by the client. Value can be overwritten by optional arguments of individual functions.
Args
default_workspace_id:str- The workspace resource id to be used in subsequent requests.
- Submit and view feedback for this page
- Send feedback about AI Engine Manager to cloud-feedback@h2o.ai