Итак, у меня есть модель тензорного потока в Python 3.5, зарегистрированная на движке ML, и я хочу запустить задание пакетного прогнозирования, используя его.Тело моего запроса API выглядит следующим образом:
{
"versionName": "XXXXX/v8_0QSZ",
"dataFormat": "JSON",
"inputPaths": [
"XXXXX"
],
"outputPath": "XXXXXX",
"region": "us-east1",
"runtimeVersion": "1.12",
"accelerator": {
"count": "1",
"type": "NVIDIA_TESLA_P100"
}
}
Затем задание пакетного прогнозирования запускается и возвращает «Задание успешно выполнено», однако оно было полностью неудачным и последовательно выдавало следующую ошибку для каждого ввода:
Exception during running the graph: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above. [[node convolution_layer/conv1d/conv1d/Conv2D (defined at /usr/local/lib/python2.7/dist-packages/google/cloud/ml/prediction/frameworks/tf_prediction_lib.py:210) = Conv2D[T=DT_FLOAT, data_format="NCHW", dilations=[1, 1, 1, 1], padding="VALID", strides=[1, 1, 1, 1], use_cudnn_on_gpu=true, _device="/job:localhost/replica:0/task:0/device:GPU:0"](convolution_layer/conv1d/conv1d/Conv2D-0-TransposeNHWCToNCHW-LayoutOptimizer, convolution_layer/conv1d/conv1d/ExpandDims_1)]] [[{{node Cast_6/_495}} = _Recv[client_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:localhost/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_789_Cast_6", tensor_type=DT_INT64, _device="/job:localhost/replica:0/task:0/device:CPU:0"]()]]
Мои вопросы:
- Почему пакетное задание сообщает об успехе, когда в действительности оно полностью провалилось?
- В приведенном выше исключении упоминается Python 2.7 ...тем не менее, модель зарегистрирована как python 3.5, и нет возможности указать версию python с помощью API.Почему пакетное прогнозирование с использованием 2.7?
- Что вообще я могу сделать, чтобы эта работа работала?
- Это имеет какое-либо отношение к моему варианту ускорителя?