Vertex AI模型监控任务查询及新版本启用技术咨询
1. 根据显示名称列出Vertex AI上的所有模型监控任务
使用Vertex AI Python SDK,可遍历所有模型监控作业并筛选匹配显示名称的任务,示例代码如下:
from google.cloud import aiplatform # 初始化Vertex AI客户端 aiplatform.init(project="你的项目ID", location="你的区域") # 获取所有模型监控作业 monitoring_jobs = aiplatform.ModelMonitoringJob.list() # 筛选匹配目标显示名称的任务 target_display_name = "你要查找的显示名称" matching_jobs = [job for job in monitoring_jobs if job.display_name == target_display_name] # 输出筛选结果 for job in matching_jobs: print(f"监控任务资源名: {job.name}") print(f"监控任务显示名: {job.display_name}") print(f"关联端点: {job.endpoint}\n")
若需模糊匹配,可将判断条件改为target_display_name in job.display_name。
2. 为新模型版本启用模型监控任务
当新模型版本部署到已开启监控的同一端点时,监控不会自动对新版本生效,需手动通过Python SDK配置。具体操作如下:
步骤1:获取目标端点与新模型版本
# 获取目标端点 endpoint = aiplatform.Endpoint("端点资源名称或ID") # 获取端点内的最新模型部署(即新模型版本) new_deployment = endpoint.list_model_deployments()[-1] new_model_version_id = new_deployment.model_version_id
步骤2:构建监控配置
可复用原有监控配置,或新建配置(以特征漂移监控为例):
from google.cloud.aiplatform_v1.types import ModelMonitoringConfig # 构建监控配置 monitoring_config = ModelMonitoringConfig( objective_configs=[ ModelMonitoringConfig.ObjectiveConfig( training_dataset=ModelMonitoringConfig.ObjectiveConfig.TrainingDataset( gcs_source=ModelMonitoringConfig.GcsSource(uris=["gs://你的训练数据存储路径"]), data_format="csv" ), target_field="预测目标字段名", feature_drift_detection_config=ModelMonitoringConfig.ObjectiveConfig.FeatureDriftDetectionConfig( threshold=0.3 ) ) ], schedule_config=ModelMonitoringConfig.ScheduleConfig( monitor_interval=ModelMonitoringConfig.ScheduleConfig.Interval(seconds=3600) # 每小时执行一次监控 ), logging_sampling_strategy=ModelMonitoringConfig.LoggingSamplingStrategy(sample_rate=0.5) # 50%日志采样率 )
步骤3:为新模型版本创建监控任务
# 基于新模型版本创建监控作业 monitoring_job = aiplatform.ModelMonitoringJob.create( display_name="新模型版本监控任务", endpoint=endpoint.resource_name, model_deployment_monitoring_config=monitoring_config, model_version_id=new_model_version_id ) # 若已有对应端点的监控作业,可直接更新覆盖的模型版本 # existing_job = aiplatform.ModelMonitoringJob("现有监控作业ID") # existing_job.update(model_version_ids=[new_model_version_id, "原有模型版本ID"])
若需监控端点内所有模型版本,在创建或更新监控作业时,将model_version_ids设置为包含所有目标版本ID的列表即可。
内容的提问来源于stack exchange,提问作者Shadab Hussain
相关产品推荐
相关产品推荐

