You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Azure Python SDK v2获取至少完成一个成功作业的AzureML计划

使用Azure Python SDK v2检索AzureML中已触发且至少有一个作业成功的计划

前置准备

  • 安装AzureML SDK v2:pip install azure-ai-ml
  • 完成Azure身份认证(可通过az login命令或服务主体方式)

代码实现

from azure.ai.ml import MLClient
from azure.identity import DefaultAzureCredential

# 初始化工作区客户端
ml_client = MLClient(
    credential=DefaultAzureCredential(),
    subscription_id="你的订阅ID",
    resource_group_name="你的资源组名称",
    workspace_name="你的工作区名称"
)

# 获取工作区内所有计划
all_schedules = ml_client.schedules.list()

qualified_schedules = []
for schedule in all_schedules:
    # 跳过未正常部署的计划
    if schedule.provisioning_state != "Succeeded":
        continue
    
    # 获取该计划触发的所有作业实例
    job_runs = ml_client.jobs.list(parent_name=schedule.name, parent_type="schedule")
    
    # 检查是否存在成功完成的作业
    has_successful_run = any(job.status == "Completed" for job in job_runs)
    if has_successful_run:
        qualified_schedules.append(schedule)

# 输出结果
print("已触发且至少有一个作业成功的计划:")
for sched in qualified_schedules:
    print(f"名称: {sched.name}, 触发类型: {sched.trigger.type}, 最后修改时间: {sched.last_modified_at}")

关键说明

  • ml_client.schedules.list():枚举工作区中所有计划资源
  • 过滤provisioning_state为Succeeded的计划,确保计划已正常配置并可触发
  • 通过parent_name和parent_type参数关联计划与它触发的作业,获取所有执行历史
  • 作业状态Completed代表成功完成,若需包含其他成功状态(如Succeeded,依AzureML配置而定)可调整判断条件

内容的提问来源于stack exchange,提问作者Jau A

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 07:12:36