diff options
Diffstat (limited to '.venv/lib/python3.12/site-packages/azure/ai/ml/_internal/entities/scope.py')
-rw-r--r-- | .venv/lib/python3.12/site-packages/azure/ai/ml/_internal/entities/scope.py | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/azure/ai/ml/_internal/entities/scope.py b/.venv/lib/python3.12/site-packages/azure/ai/ml/_internal/entities/scope.py new file mode 100644 index 00000000..9965d69f --- /dev/null +++ b/.venv/lib/python3.12/site-packages/azure/ai/ml/_internal/entities/scope.py @@ -0,0 +1,131 @@ +# --------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# --------------------------------------------------------- + +from typing import List, Union + +from marshmallow import Schema + +from ..._schema import PathAwareSchema +from .._schema.component import NodeType +from ..entities.node import InternalBaseNode + + +class Scope(InternalBaseNode): + """Node of scope components in pipeline with specific run settings.""" + + def __init__(self, **kwargs): + kwargs.pop("type", None) + super(Scope, self).__init__(type=NodeType.SCOPE, **kwargs) + self._init = True + self._adla_account_name = kwargs.pop("adla_account_name", None) + self._scope_param = kwargs.pop("scope_param", None) + self._custom_job_name_suffix = kwargs.pop("custom_job_name_suffix", None) + self._priority = kwargs.pop("priority", None) + self._auto_token = kwargs.pop("auto_token", None) + self._tokens = kwargs.pop("tokens", None) + self._vcp = kwargs.pop("vcp", None) + self._init = False + + @property + def adla_account_name(self) -> str: + """The ADLA account name to use for the scope job. + + :return: ADLA account name + :rtype: str + """ + return self._adla_account_name + + @adla_account_name.setter + def adla_account_name(self, value: str): + self._adla_account_name = value + + @property + def scope_param(self) -> str: + """nebula command used when submit the scope job. + + :return: The nebula command + :rtype: str + """ + return self._scope_param + + @scope_param.setter + def scope_param(self, value: str): + self._scope_param = value + + @property + def custom_job_name_suffix(self) -> str: + """Optional string to append to scope job name. + + :return: The custom suffix + :rtype: str + """ + return self._custom_job_name_suffix + + @custom_job_name_suffix.setter + def custom_job_name_suffix(self, value: str): + self._custom_job_name_suffix = value + + @property + def priority(self) -> int: + """scope job priority. + + If set priority in scope_param, will override this setting. + + :return: The job priority + :rtype: int + """ + return self._priority + + @priority.setter + def priority(self, value: int): + self._priority = value + + @property + def auto_token(self) -> int: + """A predictor for estimating the peak resource usage of scope job. + + :return: auto token + :rtype: int + """ + return self._auto_token + + @auto_token.setter + def auto_token(self, value: int): + self._auto_token = value + + @property + def tokens(self) -> int: + """Standard token allocation. + + :return: The token allocation + :rtype: int + """ + return self._tokens + + @tokens.setter + def tokens(self, value: int): + self._tokens = value + + @property + def vcp(self) -> float: + """Standard VC percent allocation; should be a float between 0 and 1. + + :return: The VC allocation + :rtype: float + """ + return self._vcp + + @vcp.setter + def vcp(self, value: float): + self._vcp = value + + @classmethod + def _picked_fields_from_dict_to_rest_object(cls) -> List[str]: + return ["custom_job_name_suffix", "scope_param", "adla_account_name", "priority", "auto_token", "tokens", "vcp"] + + @classmethod + def _create_schema_for_validation(cls, context) -> Union[PathAwareSchema, Schema]: + from .._schema.node import ScopeSchema + + return ScopeSchema(context=context) |