GCP 顶点 - 获取已部署模型 ID 的直接方法

问题描述 投票:0回答:2

有没有办法直接通过

gcloud ai models upload
命令获取型号ID?

无论是使用JSON输出还是数值输出,都需要通过拆分和提取来进行操作。如果有方法可以直接获取型号ID而不需要操作,请指教。

output = !gcloud ai models upload \
  --region=$REGION \
  --display-name=$JOB_NAME \
  --container-image-uri=us-docker.pkg.dev/vertex-ai/prediction/tf2-cpu.2-8:latest \
  --artifact-uri=$GCS_URL_FOR_SAVED_MODEL \
  --format="value(model)"

output
-----
['Using endpoint [https://us-central1-aiplatform.googleapis.com/]',
 'projects/xxxxxxxx/locations/us-central1/models/1961937762277916672',
 'Waiting for operation [8951184153827606528]...',
 '...................................done.']
google-cloud-platform gcloud google-cloud-vertex-ai
2个回答
3
投票

由于您已经有了

$REGION
$JOB_NAME
的值,因此您可以在上传模型后使用执行
gcloud ai models list
来以最少的操作获取模型 id。

参见下面的命令:

export REGION=us-central1
export JOB_NAME=test_training
export PROJECT_ID=your-project-name

gcloud ai models list --region=$REGION --filter="DISPLAY_NAME: $JOB_NAME" | grep "MODEL_ID" | cut -f2 -d: | sed 's/\s//'

输出:


如果您想形成

gcloud ai models upload
返回的实际字符串,您只需连接变量即可。

MODEL_ID=$(gcloud ai models list --region=$REGION --filter="DISPLAY_NAME: $JOB_NAME" | grep "MODEL_ID" | cut -f2 -d: | sed 's/\s//')

echo projects/${PROJECT_ID}/locations/${REGION}/models/${MODEL_ID}

输出:


0
投票

gcloud ai models describe $MODEL_NAME
的输出包括已部署的ModelId。

因此,如果您有 MODEL_NAME,则只需提取已部署的ModelId:

MODEL_ID=$(gcloud ai models describe $MODEL_NAME --project=$PROJECT --region=$REGION  --flatten="deployedModels[0]" --format="csv[no-heading](deployedModelId)")

如果您部署的版本很多并且需要选择一个,则需要细化。

© www.soinside.com 2019 - 2024. All rights reserved.