JobOperations 類別
起始 JobOperations 的實例
此類別不應該直接具現化。 請改用 MLClient 物件的 jobs 屬性。
- 繼承
-
azure.ai.ml._scope_dependent_operations._ScopeDependentOperationsJobOperations
建構函式
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 Machine Learning 工作區資源上操作。
- all_operations
- <xref:azure.ai.ml._scope_dependent_operations.OperationsContainer>
MLClient 物件的所有作業類別。
方法
archive |
封存作業。 |
begin_cancel |
取消作業。 |
create_or_update |
建立或更新作業。 如果內嵌定義環境或程式碼等實體,則會與作業一起建立。 |
download |
下載作業的記錄和輸出。 |
get |
取得作業資源。 |
list |
列出工作區中的作業。 |
restore |
還原封存的工作。 |
show_services |
取得與作業節點相關聯的服務。 |
stream |
串流執行中作業的記錄。 |
validate |
注意 這是實驗性方法,隨時可能會變更。 請參閱 https://aka.ms/azuremlexperimental 以取得詳細資訊。 在提交至服務之前,先驗證 Job 物件。 如果有內嵌定義的實體,例如元件、環境和程式碼,可能會建立匿名資產。 目前僅支援管線作業進行驗證。 |
archive
封存作業。
archive(name: str) -> None
參數
例外狀況
如果找不到具有指定名稱的作業,則引發 。
範例
封存作業。
ml_client.jobs.archive(name=job_name)
begin_cancel
取消作業。
begin_cancel(name: str, **kwargs) -> LROPoller[None]
參數
傳回
用來追蹤作業狀態的輪詢器。
傳回類型
例外狀況
如果找不到具有指定名稱的作業,則引發 。
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
參數
- skip_validation
- bool
指定建立或更新作業之前,是否要略過驗證。 請注意,將不會略過匿名元件等相依資源的驗證。 預設為 False。
傳回
已建立或更新的作業。
傳回類型
例外狀況
如果無法成功驗證 Job,則引發 。 錯誤訊息中將會提供詳細資料。
如果無法成功驗證作業資產 (例如資料、程式碼、模型、環境) ,則引發。 錯誤訊息中將會提供詳細資料。
如果無法成功驗證作業模型,就會引發 。 錯誤訊息中將會提供詳細資料。
如果 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
參數
- all
- bool
指定是否應該下載所有記錄和具名輸出。 預設為 False。
例外狀況
如果 Job 尚未處於終端機狀態,則引發。 錯誤訊息中將會提供詳細資料。
如果無法成功下載記錄和輸出,就會引發 。 錯誤訊息中將會提供詳細資料。
範例
將作業 「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 參數不是字串,則會引發 。
範例
擷取名為 「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]
參數
- list_view_type
- ListViewType
包含/排除封存工作的檢視類型。 預設為 ~azure.mgt.machinelearningservices.models.ListViewType.ACTIVE_ONLY,不包括封存的作業。
傳回
類似 Iterator 的 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
參數
例外狀況
如果找不到具有指定名稱的作業,則引發 。
範例
還原封存的工作。
ml_client.jobs.restore(name=job_name)
show_services
取得與作業節點相關聯的服務。
show_services(name: str, node_index: int = 0) -> Dict[str, ServiceInstance]
參數
傳回
與指定節點之作業相關聯的服務。
傳回類型
例外狀況
如果找不到具有指定名稱的作業,則引發 。
範例
擷取與作業第 1 個節點相關聯的服務。
job_services = ml_client.jobs.show_services(job_name)
stream
串流執行中作業的記錄。
stream(name: str) -> None
參數
例外狀況
如果找不到具有指定名稱的作業,則引發 。
範例
串流執行中的作業。
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
參數
- 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)