airflow.providers.google.cloud.hooks.mlengine
¶
此模組包含 Google ML Engine Hook。
模組內容¶
類別¶
Google ML Engine API 的 Hook。 |
|
用於取得 MLEngine 非同步 Hook 的類別。 |
屬性¶
- class airflow.providers.google.cloud.hooks.mlengine.MLEngineHook(gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]¶
基底:
airflow.providers.google.common.hooks.base_google.GoogleBaseHook
Google ML Engine API 的 Hook。
hook 中所有使用 project_id 的方法都必須使用關鍵字引數而非位置引數呼叫。
- get_conn()[source]¶
擷取與 MLEngine 的連線。
- 返回:
Google MLEngine 服務物件。
- 返回類型
googleapiclient.discovery.Resource
- create_job(job, project_id, use_existing_job_fn=None)[source]¶
啟動 MLEngine 工作並等待其達到終端狀態。
- 參數:
project_id (str) – 將在其中啟動 MLEngine 工作的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
job (dict) –
應該提供給 MLEngine API 的 MLEngine Job 物件,例如
{ 'jobId': 'my_job_id', 'trainingInput': { 'scaleTier': 'STANDARD_1', ... } }
use_existing_job_fn (Callable | None) – 如果已存在具有相同 job_id 的 MLEngine 工作,則此方法(如果提供)將決定是否應使用此現有工作,繼續等待其完成並傳回工作物件。它應接受 MLEngine 工作物件,並傳回布林值,指示是否可以重複使用現有工作。如果未提供 'use_existing_job_fn',我們預設會重複使用現有的 MLEngine 工作。
- 返回:
MLEngine 工作物件(如果工作成功達到終端狀態,可能是 FAILED 或 CANCELLED 狀態)。
- 返回類型
- create_job_without_waiting_result(body, project_id)[source]¶
啟動 MLEngine 工作並等待其達到終端狀態。
- 參數:
project_id (str) – 將在其中啟動 MLEngine 工作的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
body (dict) –
應該提供給 MLEngine API 的 MLEngine Job 物件,例如
{ 'jobId': 'my_job_id', 'trainingInput': { 'scaleTier': 'STANDARD_1', ... } }
- 返回:
MLEngine job_id 物件(如果工作成功達到終端狀態,可能是 FAILED 或 CANCELLED 狀態)。
- cancel_job(job_id, project_id)[source]¶
取消 MLEngine 工作。
- 參數:
project_id (str) – 將在其中取消 MLEngine 工作的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
job_id (str) – 要取消的 Google MLEngine 訓練工作的唯一 ID。
- 返回:
如果成功取消,則為空字典
- 引發:
googleapiclient.errors.HttpError
- 返回類型
- get_job(project_id, job_id)[source]¶
根據工作 ID 取得 MLEngine 工作。
- 參數:
project_id (str) – 工作所在的專案。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。(已套用範本)
job_id (str) – Google MLEngine 工作的唯一 ID。(已套用範本)
- 返回:
如果成功,則為 MLEngine 工作物件。
- 引發:
googleapiclient.errors.HttpError
- 返回類型
- create_version(model_name, version_spec, project_id)[source]¶
在 Google Cloud ML Engine 上建立版本。
- 參數:
version_spec (dict) – 包含版本相關資訊的字典。(已套用範本)
model_name (str) – 版本所屬的 Google Cloud ML Engine 模型名稱。(已套用範本)
project_id (str) – MLEngine 模型所屬的 Google Cloud 專案名稱。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。(已套用範本)
- 返回:
如果版本建立成功,則傳回操作。否則會引發錯誤。
- 返回類型
- set_default_version(model_name, version_name, project_id)[source]¶
將版本設定為預設版本。封鎖直到完成。
- 參數:
model_name (str) – 版本所屬的 Google Cloud ML Engine 模型名稱。(已套用範本)
version_name (str) – 要操作的版本名稱。(已套用範本)
project_id (str) – MLEngine 模型所屬的 Google Cloud 專案名稱。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。(已套用範本)
- 返回:
如果成功,則傳回 Version 的執行個體。否則會引發錯誤。
- 引發:
googleapiclient.errors.HttpError
- 返回類型
- delete_version(model_name, version_name, project_id)[source]¶
刪除模型的指定版本。封鎖直到完成。
- 參數:
model_name (str) – 版本所屬的 Google Cloud ML Engine 模型名稱。(已套用範本)
project_id (str) – MLEngine 模型所屬的 Google Cloud 專案名稱。
version_name (str) – 要操作的版本名稱。(已套用範本)
- 返回:
如果版本刪除成功,則傳回操作。否則會引發錯誤。
- 返回類型
- create_model(model, project_id)[source]¶
建立模型。封鎖直到完成。
- 參數:
model (dict) – 包含模型相關資訊的字典。
project_id (str) – MLEngine 模型所屬的 Google Cloud 專案名稱。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。(已套用範本)
- 返回:
如果版本建立成功,則傳回 Model 的執行個體。否則會引發錯誤。
- 引發:
googleapiclient.errors.HttpError
- 返回類型
- get_model(model_name, project_id)[source]¶
取得模型。封鎖直到完成。
- 參數:
model_name (str) – 模型名稱。
project_id (str) – MLEngine 模型所屬的 Google Cloud 專案名稱。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。(已套用範本)
- 返回:
如果模型存在,則傳回 Model 的執行個體。否則傳回 None。
- 引發:
googleapiclient.errors.HttpError
- 返回類型
dict | None
- delete_model(model_name, project_id, delete_contents=False)[source]¶
刪除模型。封鎖直到完成。
- 參數:
model_name (str) – 模型名稱。
delete_contents (bool) – 是否強制刪除,即使模型不是空的。如果設定為 True,將刪除資料集中的所有版本(如果有的話)。預設值為 False。
project_id (str) – MLEngine 模型所屬的 Google Cloud 專案名稱。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。(已套用範本)
- 引發:
googleapiclient.errors.HttpError
- class airflow.providers.google.cloud.hooks.mlengine.MLEngineAsyncHook(**kwargs)[source]¶
基底:
airflow.providers.google.common.hooks.base_google.GoogleBaseAsyncHook
用於取得 MLEngine 非同步 Hook 的類別。