user6377061
user6377061

Reputation: 65

Google Cloud AI Platform: I can't create a model version using the "--accelerator" parameter

In order to get online predictions, I'm creating a model version on the ai-platform. It works fine unless I want to use the --accelerator parameter.

Here is the command that works:

    gcloud alpha ai-platform versions create [...] --model [...] --origin=[...] --python-version=3.5 --runtime-version=1.14 --package-uris=[...] --machine-type=mls1-c4-m4 --prediction-class=[...]

Here is the parameter that makes it not work:

    --accelerator=^:^count=1:type=nvidia-tesla-k80

This is the error message I get:

    ERROR: (gcloud.alpha.ai-platform.versions.create) INVALID_ARGUMENT: Request contains an invalid argument.

I expect it to work, since 1) the parameter exists and uses these two keys (count and type), 2) I use the correct syntax for the parameter, any other syntaxes would return a syntax error, and 3) the "nvidia-tesla-k80" value exists (it is described in --help) and is available in the region in which the model is deployed.

Upvotes: 1

Views: 2271

Answers (2)

gogasca
gogasca

Reputation: 10058

Make sure you are using a recent version of the Google Cloud SDK.

Then you can use the following command:

gcloud beta ai-platform versions create $VERSION_NAME \
  --model $MODEL_NAME \
  --origin gs://$MODEL_DIRECTORY_URI \
  --runtime-version 1.15 \
  --python-version 3.7 \
  --framework tensorflow \
  --machine-type n1-standard-4 \
  --accelerator count=1,type=nvidia-tesla-t4

For reference you can enable logging during model creation:

gcloud beta ai-platform models create {MODEL_NAME} \
 --regions {REGION} 
 --enable-logging \
 --enable-console-logging

Upvotes: 2

Stefan G.
Stefan G.

Reputation: 938

The format for the --accelerator parameter as you can check in the official documentation is:

--accelerator=count=1,type=nvidia-tesla-k80

I think that might cause your issue, let me know.

Upvotes: 0

Related Questions