Google Cloud AutoML 運算子¶
警告
AutoML API 已棄用。計劃移除日期為 2025 年 9 月 30 日,但根據文件和棄用警告,某些運算子可能會提前刪除!替換建議可在棄用警告或以下文件中找到。請注意,AutoML 翻譯 API 功能已移至高階翻譯服務,相關運算子可在 airflow.providers.google.cloud.operators.translate 模組中找到。
Google Cloud AutoML 即使您對機器學習瞭解有限,也能讓您利用機器學習的強大功能。您可以使用 AutoML 基於 Google 的機器學習能力建立針對您的業務需求量身定製的自定義機器學習模型,然後將這些模型整合到您的應用程式和網站中。
先決任務¶
要使用這些運算子,您必須執行一些操作
使用 Cloud Console 選擇或建立 Cloud Platform 專案。
為您的專案啟用結算功能,如Google Cloud 文件中所述。
啟用 API,如Cloud Console 文件中所述。
透過 pip 安裝 API 庫。
pip install 'apache-airflow[google]'有關詳細資訊,請參閱安裝。
建立資料集¶
要建立 Google AutoML 資料集,您可以使用 AutoMLCreateDatasetOperator。該運算子在 XCom 中以 dataset_id 鍵返回資料集 ID。
該運算子在執行文字、影片和影像預測時已棄用,並將於 2025 年 9 月 30 日之後移除。傳統 AutoML 自然語言、影像、影片智慧的所有功能以及新功能均已在 Vertex AI 平臺中提供。請使用 CreateDatasetOperator TranslateCreateDatasetOperator。
建立資料集後,您可以使用 AutoMLImportDataOperator 匯入一些資料。
要更新資料集,您可以使用 AutoMLTablesUpdateDatasetOperator。
警告
該運算子在執行文字、影片和影像預測時已棄用,並將很快移除。傳統 AutoML 自然語言、影像、影片智慧的所有功能以及新功能均已在 Vertex AI 平臺中提供。請使用 UpdateDatasetOperator
tests/system/google/cloud/vertex_ai/example_vertex_ai_dataset.py
update_dataset_job = UpdateDatasetOperator(
task_id="update_dataset",
project_id=PROJECT_ID,
region=REGION,
dataset_id=create_video_dataset_job.output["dataset_id"],
dataset=DATASET_TO_UPDATE,
update_mask=TEST_UPDATE_MASK,
)
列出表格和列規範¶
要列出表格規範,您可以使用 AutoMLTablesListTableSpecsOperator。
要列出列規範,您可以使用 AutoMLTablesListColumnSpecsOperator。
與 AutoML Tables 相關的運算子已棄用。請使用相關的 Vertex AI Tabular 運算子。
模型操作¶
要建立 Google AutoML 模型,您可以使用 AutoMLTrainModelOperator。該運算子將等待操作完成。此外,該運算子在 XCom 中以 model_id 鍵返回模型 ID。
警告
該運算子在執行文字、影片和影像預測時已棄用,並將於 2025 年 9 月 30 日之後移除。傳統 AutoML 自然語言、影像、影片智慧的所有功能以及新功能均已在 Vertex AI 平臺中提供。請使用 CreateAutoMLTabularTrainingJobOperator, CreateAutoMLVideoTrainingJobOperator, CreateAutoMLImageTrainingJobOperator, SupervisedFineTuningTrainOperator, TranslateCreateModelOperator。
執行用於訓練資料的 Vertex AI 運算子時,請確保您的資料正確儲存在 Vertex AI 資料集中。要建立資料集並匯入資料,請使用 CreateDatasetOperator 和 ImportDataOperator
對於 AutoML 翻譯,請使用 TranslateTextOperator 或 TranslateTextBatchOperator。
要獲取現有模型,可以使用 AutoMLGetModelOperator。
該運算子已棄用,適用於表格、影片智慧、影像和自然語言,將於 2024 年 3 月 31 日之後移除。請改用 GetModelOperator。您可以在此處找到如何使用 VertexAI 運算子的示例
tests/system/google/cloud/vertex_ai/example_vertex_ai_model_service.py
get_model = GetModelOperator(
task_id="get_model", region=REGION, project_id=PROJECT_ID, model_id=model_id_v1
)
模型建立後,可以使用 AutoMLDeployModelOperator 進行部署。
該運算子已棄用,適用於表格、影片智慧、影像和自然語言,將於 2024 年 3 月 31 日之後移除。請改用 airflow.providers.google.cloud.operators.vertex_ai.endpoint_service.DeployModelOperator。您可以在此處找到如何使用 VertexAI 運算子的示例
tests/system/google/cloud/vertex_ai/example_vertex_ai_endpoint.py
deploy_model = DeployModelOperator(
task_id="deploy_model",
endpoint_id=create_endpoint.output["endpoint_id"],
deployed_model=DEPLOYED_MODEL,
traffic_split={"0": 100},
region=REGION,
project_id=PROJECT_ID,
)
如果您希望刪除模型,可以使用 AutoMLDeleteModelOperator。
該運算子已棄用,適用於表格、影片智慧、影像和自然語言,將於 2024 年 3 月 31 日之後移除。請改用 airflow.providers.google.cloud.operators.vertex_ai.model_service.DeleteModelOperator。您可以在此處找到如何使用 VertexAI 運算子的示例
tests/system/google/cloud/vertex_ai/example_vertex_ai_model_service.py
delete_model = DeleteModelOperator(
task_id="delete_model",
project_id=PROJECT_ID,
region=REGION,
model_id=upload_model.output["model_id"],
trigger_rule=TriggerRule.ALL_DONE,
)
進行預測¶
要從 Google Cloud AutoML 模型獲取預測結果,您可以使用 AutoMLPredictOperator。首先,必須部署該模型。
對於表格、影片智慧、影像和自然語言,您可以使用以下運算子
airflow.providers.google.cloud.operators.vertex_ai.batch_prediction_job.CreateBatchPredictionJobOperator, airflow.providers.google.cloud.operators.vertex_ai.batch_prediction_job.GetBatchPredictionJobOperator, airflow.providers.google.cloud.operators.vertex_ai.batch_prediction_job.ListBatchPredictionJobsOperator, airflow.providers.google.cloud.operators.vertex_ai.batch_prediction_job.DeleteBatchPredictionJobOperator。您可以在此處找到如何使用 VertexAI 運算子的示例
tests/system/google/cloud/vertex_ai/example_vertex_ai_batch_prediction_job.py
create_batch_prediction_job = CreateBatchPredictionJobOperator(
task_id="create_batch_prediction_job",
job_display_name=JOB_DISPLAY_NAME,
model_name="{{ti.xcom_pull('auto_ml_forecasting_task')['name']}}",
predictions_format="csv",
bigquery_source=BIGQUERY_SOURCE,
gcs_destination_prefix=GCS_DESTINATION_PREFIX,
model_parameters=MODEL_PARAMETERS,
region=REGION,
project_id=PROJECT_ID,
)
tests/system/google/cloud/vertex_ai/example_vertex_ai_batch_prediction_job.py
list_batch_prediction_job = ListBatchPredictionJobsOperator(
task_id="list_batch_prediction_jobs",
region=REGION,
project_id=PROJECT_ID,
)
tests/system/google/cloud/vertex_ai/example_vertex_ai_batch_prediction_job.py
delete_batch_prediction_job = DeleteBatchPredictionJobOperator(
task_id="delete_batch_prediction_job",
batch_prediction_job_id=create_batch_prediction_job.output["batch_prediction_job_id"],
region=REGION,
project_id=PROJECT_ID,
trigger_rule=TriggerRule.ALL_DONE,
)
列出和刪除資料集¶
您可以使用 AutoMLListDatasetOperator 獲取 AutoML 資料集列表。該運算子在 XCom 中以 dataset_id_list 鍵返回資料集 ID 列表。
該運算子已棄用,適用於表格、影片智慧、影像和自然語言,將於 2024 年 3 月 31 日之後移除。請改用 ListDatasetsOperator, TranslateDatasetsListOperator。您可以在此處找到如何使用 VertexAI 運算子的示例
tests/system/google/cloud/vertex_ai/example_vertex_ai_dataset.py
list_dataset_job = ListDatasetsOperator(
task_id="list_dataset",
region=REGION,
project_id=PROJECT_ID,
)
要刪除資料集,您可以使用 AutoMLDeleteDatasetOperator。該刪除運算子還允許傳遞要刪除的資料集 ID 列表或逗號分隔的字串。
該運算子已棄用,適用於表格、影片智慧、影像和自然語言,將於 2024 年 3 月 31 日之後移除。請改用 airflow.providers.google.cloud.operators.vertex_ai.dataset.DeleteDatasetOperator。您可以在此處找到如何使用 VertexAI 運算子的示例
tests/system/google/cloud/vertex_ai/example_vertex_ai_dataset.py
delete_dataset_job = DeleteDatasetOperator(
task_id="delete_dataset",
dataset_id=create_text_dataset_job.output["dataset_id"],
region=REGION,
project_id=PROJECT_ID,
)
參考¶
有關更多資訊,請查閱