无法在 GCP AI 平台上部署 CNN 模型
Posted
技术标签:
【中文标题】无法在 GCP AI 平台上部署 CNN 模型【英文标题】:Unable to deploy a CNN model on GCP AI platform 【发布时间】:2022-01-18 09:26:51 【问题描述】:我正在尝试将模型部署到 GCP AI 平台,但没有成功,我知道以前有人问过类似的问题,但我无法弄清楚我做错了什么,任何帮助将不胜感激。我正在使用 jupyter notebook 进行开发。
MODEL_NAME='CLASSIFIER'
VERSION_NAME='v1'
RUNTIME_VERSION='1.13'
REGION='europe-west1'
!gcloud ai-platform models create MODEL_NAME --regions REGION
模型在全局端点创建
!gcloud beta ai-platform versions create VERSION_NAME \
--model MODEL_NAME \
--origin gs://BUCKET/MODEL_DIR \
--python-version 3.7 \
--runtime-version RUNTIME_VERSION \
--package-uris gs://BUCKET/PACKAGES_DIR/sentiment_classifier-0.1.tar.gz \
--prediction-class=model_prediction.CustomPrediction \
--machine-type mls1-c4-m4
但是当我尝试创建版本时,它会尝试在区域端点创建它并失败,或者我认为
使用端点 [https://us-central1-ml.googleapis.com/] 错误:(gcloud.beta.ai-platform.versions.create) INVALID_ARGUMENT:机器类型在此端点上不可用。
【问题讨论】:
我认为 mls1-c4-m4 有 alpha 版本,而不是 beta 版本Using endpoint [https://us-central1-ml.googleapis.com/]
端点似乎在美国,而您在欧洲有一个模型。由于 mls1-c4-m4 是旧版和 beta 机器类型,因此它只能在 use-cetnral1 中可用,而在欧洲不可用。尝试使用我们的模型,或使用其他机器类型
我在official documentation找不到机器类型我同意guillaume,你应该尝试在同一地区创建模型(默认我们)并使用官方可用的机器类型。跨度>
我确实尝试在 us-central1 区域使用不同的机器类型以及文档创建模型和版本,但遗憾的是没有运气。
使用 GCP UI,在 ai platform->models->version
下,您是否创建了模型,并且您的存储中是否有包含模型信息的现有 model_dir?另外,你在看教程吗??如果有,能否提供一下链接。
【参考方案1】:
我能够毫无问题地运行该命令。为此,我使用现有的sample 来复制命令的执行。
作为备注,两个模型都指向https://ml.googleapis.com
,因为该区域接受执行 beta 命令作为用于这种情况的命令。您可以在link 下的--region
上查看它的详细信息。请注意,您可以选择不同的主要区域,但请记住,它应该支持执行 beta 命令,并且两者(模型和版本)都指向相同的 endpoint。
型号
MODEL_NAME = 'CensusPredictor'
VERSION_NAME = 'v1'
REGION = "global"
! gcloud ai-platform models create $MODEL_NAME \
--regions $REGION
输出
WARNING: To specify a region where the model will deployed on the global endpoint, please use `--regions` and do not specify `--region`. Using [us-central1] by default on https://ml.googleapis.com. Please note that your model will be inaccessible from https://us-central1-ml.googelapis.com
Learn more about regional endpoints and see a list of available regions: https://cloud.google.com/ai-platform/prediction/docs/regional-endpoints
Using endpoint [https://ml.googleapis.com/]
Created ai platform model [projects/<my-project-id>/models/CensusPredictor].
beta ai 平台版本创建
! gcloud beta ai-platform versions create $VERSION_NAME --model $MODEL_NAME \
--origin gs://$BUCKET_NAME/custom_pipeline_tutorial/model/ \
--runtime-version 1.13 \
--python-version 3.5 \
--framework SCIKIT_LEARN \
--package-uris gs://$BUCKET_NAME/custom_pipeline_tutorial/code/census_package-1.0.tar.gz \
--region $REGION \
--machine-type mls1-c1-m2
输出
Using endpoint [https://ml.googleapis.com/]
Creating version (this might take a few minutes)......done.
【讨论】:
你好@J1ten。这是answer your question吗?以上是关于无法在 GCP AI 平台上部署 CNN 模型的主要内容,如果未能解决你的问题,请参考以下文章