Невозможно развернуть с помощью пользовательского контейнера GCP
Мой образ составляет 11,4 ГБ. Я пробую следующую команду:
gcloud beta ai-platform versions create v1 \
--region=$REGION \
--model=$MODEL \
--machine-type=n1-highmem-2 \
--image=$REGION-docker.pkg.dev/$PROJECT_ID/$REPO_NAME/$IMAGE_NAME \
--ports=8000
и это не удается:
Error: model server never became ready. Please validate that your model file or container configuration are valid, Error details: model server never became ready: status: "False" last_transition_time { seconds: 1603932493 } reason: "ContainersNotReady" message: "containers with unready status: [online-prediction-be-test85b70d-v1fb1b0606]" type: "ContainersReady"
хотя я могу запустить изображение локально с помощью
docker run
. Что мне нужно изменить?
Когда я запускаю без указания региона и с уровнем детализации, установленным на DEBUG, я получаю:
RecursionError: maximum recursion depth exceeded while calling a Python object
ERROR: gcloud crashed (RecursionError): maximum recursion depth exceeded while calling a Python object
The Python stack trace is massive (last couple of lines):
File "/googlecloudsdk/core/log.py", line 484, in ShowStructuredOutput
show_messages = properties.VALUES.core.show_structured_logs.Get()
File "/googlecloudsdk/core/properties.py", line 2380, in Get
value = _GetProperty(self, named_configs.ActivePropertiesFile.Load(),
File "/googlecloudsdk/core/properties.py", line 2679, in _GetProperty
value = _GetPropertyWithoutDefault(prop, properties_file)
File "/google-cloud-sdk/lib/googlecloudsdk/core/properties.py", line 2711, in _GetPropertyWithoutDefault
value = _GetPropertyWithoutCallback(prop, properties_file)
File "/google-cloud-sdk/lib/googlecloudsdk/core/properties.py", line 2741, in _GetPropertyWithoutCallback
for value_flags in reversed(invocation_stack):
2 ответа
Укажите маршрут работоспособности на своем веб-сервере http и включите
--container-health-route=/healthz
при загрузке модели. Например, если вы используете веб-сервер Flask, обязательно добавьте следующее в свое приложение Flask.
@app.route('/healthz')
def healthz():
return "OK"
Платформа Vertex AI или google ai требует, чтобы вы указали процедуру проверки работоспособности на вашем http-сервере. Пожалуйста, обратитесь к этому, чтобы понять требования подробно.
Не могу понять ничего из этого сообщения об ошибке, но, я полагаю, gcloud не может запустить проверку работоспособности вашего контейнера, можете ли вы указать это с помощью:
--health-route
и увидеть?