執行 Gemini Enterprise Agent Platform 無伺服器訓練時,您必須指定要讓 Gemini Enterprise Agent Platform 執行的機器學習 (ML) 程式碼。如要這麼做,請為自訂容器或在預先建構的容器上執行的 Python 訓練應用程式,設定訓練容器設定。
如要決定使用自訂容器或預先建構的容器,請參閱訓練程式碼需求。
本文說明在上述任一情況下,您必須指定的 Agent Platform API 欄位。
指定容器設定的位置
在 WorkerPoolSpec 中指定設定詳細資料。視您執行無伺服器訓練的方式而定,請將這個 WorkerPoolSpec 放在下列其中一個 API 欄位中:
如要建立
CustomJob資源,�請在CustomJob.jobSpec.workerPoolSpecs中指定WorkerPoolSpec。如果使用 Google Cloud CLI,則可透過
gcloud ai custom-jobs create指令的--worker-pool-spec旗標或--config旗標,指定工作人員集區選項。進一步瞭解如何建立
CustomJob。如果您要建立
HyperparameterTuningJob資源,�請在HyperparameterTuningJob.trialJobSpec.workerPoolSpecs中指定WorkerPoolSpec。如果使用 gcloud CLI,則可在
gcloud ai hpt-tuning-jobs create指令中使用--config旗標,指定工作站集區選項。進一步瞭解如何建立
HyperparameterTuningJob。如要建立
TrainingPipeline資源,但不想進行超參數調整,請在TrainingPipeline.trainingTaskInputs.workerPoolSpecs中指定WorkerPoolSpec。進一步瞭解如何建立自訂
TrainingPipeline。如果您要建立含超參數調整功能的
TrainingPipeline,請在TrainingPipeline.trainingTaskInputs.trialJobSpec.workerPoolSpecs中指定WorkerPoolSpec。
如果您執行分散式訓練,可以為每個工作站集區使用不同的設定。
設定容器
視您使用的是預先建構的容器或自訂容器,您必須在 WorkerPoolSpec 中指定不同欄位。選取適用情境的分頁標籤:
預先建構的容器
選取支援您打算用於訓練的 ML 架構的預先建構容器。在
pythonPackageSpec.executorImageUri欄位中,指定其中一個容器映像檔的 URI。在
pythonPackageSpec.packageUris欄位中,指定 Python 訓練應用程式的 Cloud Storage URI。您也可以在「
pythonPackageSpec.args欄位」中,指定要傳遞至訓練應用程式進入點模組的指令列引數清單。
下列範例會標示出建立 CustomJob 時指定這些容器設定的位置:
控制台
在 Cloud de Confiance 控制台中,您無法直接建立 CustomJob。不過,您可以建立 TrainingPipeline,藉此建立 CustomJob。在 Cloud de Confiance 控制台中建立 TrainingPipeline 時,您可以在「訓練容器」步驟的特定欄位中指定預先建構的容器設定:
pythonPackageSpec.executorImageUri:使用「模型架構」和「模型架構版本」下拉式清單。pythonPackageSpec.packageUris:使用「套件位置」欄位。pythonPackageSpec.pythonModule:使用「Python module」(Python 模組) 欄位。pythonPackageSpec.args:使用「Arguments」欄位。
gcloud
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--python-package-uris=PYTHON_PACKAGE_URIS \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,executor-image-uri=PYTHON_PACKAGE_EXECUTOR_IMAGE_URI,python-module=PYTHON_MODULE
如需更多背景資訊,請參閱建立CustomJob的指南。
自訂容器
在
containerSpec.imageUri欄位中,指定自訂容器的 Artifact Registry 或 Docker Hub URI。如要覆寫容器中的
ENTRYPOINT或CMD指令,請指定containerSpec.command或containerSpec.args欄位。 這些欄位會根據下列規則影響容器的執行方式:如果兩個欄位都未指定:容器會根據
ENTRYPOINT指令和CMD指令 (如有) 執行。請參閱 Docker 說明文件,瞭解CMD和ENTRYPOINT如何互動。如果只指定
containerSpec.command:容器會執行containerSpec.command值,取代其ENTRYPOINT指示。如果容器有CMD指令,系統會忽略該指令。如果只指定
containerSpec.args:容器會根據ENTRYPOINT指示執行,且containerSpec.args的值會取代CMD指示。如果同時指定這兩個欄位:容器會執行,並以
containerSpec.command取代ENTRYPOINT指令,以及以containerSpec.args取代CMD指令。
以下範例著重說明建立 CustomJob 時,可指定部分容器設定的位置:
控制台
在 Cloud de Confiance 控制台中,您無法直接建立 CustomJob。不過,您可以建立 TrainingPipeline,藉此建立 CustomJob。在 Cloud de Confiance 控制台中建立TrainingPipeline時,您可以在「訓練容器」步驟的特定欄位中指定自訂容器設定:
containerSpec.imageUri:使用「容器映像檔」欄位。containerSpec.command:這個 API 欄位無法在Cloud de Confiance 控制台中設定。containerSpec.args:使用「Arguments」欄位。
gcloud
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,container-image-uri=CUSTOM_CONTAINER_IMAGE_URI
Java
在試用這個範例之前,請先按照「使用用戶端程式庫的 Agent Platform 快速入門導覽課程」中的 Java 設定說明操作。詳情請參閱 Agent Platform Java API 參考文件。
如要向 Agent Platform 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Node.js
在試用這個範例之前,請先按照「使用用戶端程式庫的 Agent Platform 快速入門導覽課程」中的 Node.js 設定說明操作。詳情請參閱 Agent Platform Node.js API 參考文件。
如要向 Agent Platform 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Python
如要瞭解如何安裝或更新 Vertex AI SDK for Python,請參閱「安裝 Vertex AI SDK for Python」。 詳情請參閱 Python API 參考文件。
如需更多背景資訊,請參閱建立CustomJob的指南。
後續步驟
- 瞭解如何建立
CustomJob,執行無伺服器訓練。