你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

JobOperations 类

启动 JobOperations 的实例

此类不应直接实例化。 请改用 MLClient 对象的 jobs 属性。

继承
azure.ai.ml._scope_dependent_operations._ScopeDependentOperations
JobOperations

构造函数

JobOperations(operation_scope: OperationScope, operation_config: OperationConfig, service_client_02_2023_preview: AzureMachineLearningWorkspaces, all_operations: OperationsContainer, credential: TokenCredential, **kwargs: Any)

参数

operation_scope
<xref:azure.ai.ml._scope_dependent_operations.OperationScope>
必需

MLClient 对象的操作类的范围变量。

operation_config
<xref:azure.ai.ml._scope_dependent_operations.OperationConfig>
必需

MLClient 对象的操作类的常见配置。

service_client_02_2023_preview
<xref:azure.ai.ml._restclient.v2023_02_01_preview.AzureMachineLearningWorkspaces>
必需

服务客户端,允许最终用户对 Azure 机器学习工作区资源进行操作。

all_operations
<xref:azure.ai.ml._scope_dependent_operations.OperationsContainer>
必需

MLClient 对象的所有操作类。

credential
TokenCredential
必需

用于身份验证的凭据。

方法

archive

存档作业。

begin_cancel

取消作业。

create_or_update

创建或更新作业。 如果环境或代码等实体是内联定义的,则会与作业一起创建它们。

download

下载作业的日志和输出。

get

获取作业资源。

list

列出工作区中的作业。

restore

还原存档的作业。

show_services

获取与作业节点关联的服务。

stream

流式传输正在运行的作业的日志。

validate

注意

这是一个实验性的方法,可能会在任何时候更改。 有关详细信息,请参阅 https://aka.ms/azuremlexperimental

在提交到服务之前验证 Job 对象。 如果存在内联定义的实体(如组件、环境和代码),则可能会创建匿名资产。 目前仅支持管道作业进行验证。

archive

存档作业。

archive(name: str) -> None

参数

name
str
必需

作业的名称。

例外

如果未找到具有给定名称的作业,则引发。

示例

存档作业。


   ml_client.jobs.archive(name=job_name)

begin_cancel

取消作业。

begin_cancel(name: str, **kwargs) -> LROPoller[None]

参数

name
str
必需

作业的名称。

返回

用于跟踪操作状态的轮询程序。

返回类型

例外

如果未找到具有给定名称的作业,则引发。

create_or_update

创建或更新作业。 如果环境或代码等实体是内联定义的,则会与作业一起创建它们。

create_or_update(job: Job, *, description: str | None = None, compute: str | None = None, tags: dict | None = None, experiment_name: str | None = None, skip_validation: bool = False, **kwargs) -> Job

参数

job
Job
必需

作业对象。

description
Optional[str]

作业说明。

compute
Optional[str]

作业的计算目标。

tags
Optional[dict]

作业的标记。

experiment_name
Optional[str]

将创建作业的试验的名称。 如果提供了 None,则会在试验“默认”下创建作业。

skip_validation
bool

指定在创建或更新作业之前是否跳过验证。 请注意,不会跳过对依赖资源(如匿名组件)的验证。 默认为 False。

返回

已创建或更新作业。

返回类型

Job

例外

Union

如果无法成功验证作业,则引发。 错误消息中将提供详细信息。

如果无法成功验证作业资产 (例如数据、代码、模型、环境) ,则引发此事件。 错误消息中将提供详细信息。

如果无法成功验证作业模型,则引发。 错误消息中将提供详细信息。

如果 Job 对象或属性的格式正确,则引发。 错误消息中将提供详细信息。

如果提供的本地路径指向空目录,则引发。

如果 Docker 引擎不可用于本地作业,则引发。

示例

创建新作业,然后更新其计算。


   from azure.ai.ml import load_job

   created_job = ml_client.jobs.create_or_update(
       name=job_name,
       job=load_job(
           "./sdk/ml/azure-ai-ml/tests/test_configs/command_job/command_job_test_local_env.yml",
           params_override=[{"name": job_name}, {"compute": "cpucluster"}],
       ),
   )

download

下载作业的日志和输出。

download(name: str, *, download_path: PathLike | str = '.', output_name: str | None = None, all: bool = False) -> None

参数

name
str
必需

作业的名称。

download_path
Union[<xref:PathLike>, str]

要用作下载目标的本地路径。 默认为“.”。

output_name
Optional[str]

要下载的输出的名称。 默认值为“None”。

all
bool

指定是否应下载所有日志和命名输出。 默认为 False。

例外

如果作业尚未处于终端状态,则引发。 错误消息中将提供详细信息。

如果无法成功下载日志和输出,则引发。 错误消息中将提供详细信息。

示例

将作业“job-1”的所有日志和命名输出下载到本地目录“job-1-logs”。


   ml_client.jobs.download(name=job_name, download_path="./job-1-logs", all=True)

get

获取作业资源。

get(name: str) -> Job

参数

name
str
必需

作业的名称。

返回

从服务检索到的作业对象。

返回类型

Job

例外

如果未找到具有给定名称的作业,则引发。

如果 name 参数不是字符串,则引发。

示例

检索名为“iris-dataset-job-1”的作业。


   retrieved_job = ml_client.jobs.get(job_name)

list

列出工作区中的作业。

list(*, parent_job_name: str | None = None, list_view_type: ListViewType = ListViewType.ACTIVE_ONLY, **kwargs) -> Iterable[Job]

参数

parent_job_name
Optional[str]

如果提供,则仅返回属于命名作业的子级的作业。 默认为“无”,列出工作区中的所有作业。

list_view_type
ListViewType

用于包括/排除存档作业的视图类型。 默认为 ~azure.mgt.machinelearningservices.models.ListViewType.ACTIVE_ONLY,不包括存档作业。

返回

类似于 Job 对象的迭代器实例。

返回类型

例外

如果未找到具有给定名称的作业,则引发。

示例

检索工作区中具有名为“iris-dataset-jobs”的父作业的已存档作业的列表。


   from azure.ai.ml._restclient.v2023_04_01_preview.models import ListViewType

   list_of_jobs = ml_client.jobs.list(parent_job_name=job_name, list_view_type=ListViewType.ARCHIVED_ONLY)

restore

还原存档的作业。

restore(name: str) -> None

参数

name
str
必需

作业的名称。

例外

如果未找到具有给定名称的作业,则引发。

示例

还原存档作业。


   ml_client.jobs.restore(name=job_name)

show_services

获取与作业节点关联的服务。

show_services(name: str, node_index: int = 0) -> Dict[str, ServiceInstance]

参数

name
str
必需

作业的名称。

node_index
int
必需

节点的索引 (从零开始的) 。 默认值为 0。

返回

与给定节点的作业关联的服务。

返回类型

例外

如果未找到具有给定名称的作业,则引发。

示例

检索与作业的第一个节点关联的服务。


   job_services = ml_client.jobs.show_services(job_name)

stream

流式传输正在运行的作业的日志。

stream(name: str) -> None

参数

name
str
必需

作业的名称。

例外

如果未找到具有给定名称的作业,则引发。

示例

流式处理正在运行的作业。


   running_job = ml_client.jobs.create_or_update(
       load_job(
           "./sdk/ml/azure-ai-ml/tests/test_configs/command_job/command_job_test_local_env.yml",
           params_override=[{"name": job_name}, {"compute": "cpucluster"}],
       )
   )
   ml_client.jobs.stream(running_job.name)

validate

注意

这是一个实验性的方法,可能会在任何时候更改。 有关详细信息,请参阅 https://aka.ms/azuremlexperimental

在提交到服务之前验证 Job 对象。 如果存在内联定义的实体(如组件、环境和代码),则可能会创建匿名资产。 目前仅支持管道作业进行验证。

validate(job: Job, *, raise_on_failure: bool = False, **kwargs) -> ValidationResult

参数

job
Job
必需

要验证的作业对象。

raise_on_failure
bool

指定在验证失败时是否应引发错误。 默认为 False。

返回

包含所有找到的错误的 ValidationResult 对象。

返回类型

例外

如果未找到具有给定名称的作业,则引发。

示例

验证 PipelineJob 对象并打印出找到的错误。


   from azure.ai.ml import load_job
   from azure.ai.ml.entities import PipelineJob

   pipeline_job: PipelineJob = load_job(
       "./sdk/ml/azure-ai-ml/tests/test_configs/pipeline_jobs/invalid/combo.yml",
       params_override=[{"name": job_name}, {"compute": "cpucluster"}],
   )
   print(ml_client.jobs.validate(pipeline_job).error_messages)