Прогноз acl-платформы gcloud: неизвестная ошибка - PullRequest
0 голосов
/ 13 апреля 2020

Когда я пытаюсь сделать онлайн-прогноз, я получаю следующую ошибку в качестве ответа:

{
"error": "Prediction failed: unknown error."
}

Я загрузил пользовательскую процедуру прогнозирования. Прежде чем попробовать пользовательский код, я успешно выполнил простое предсказание без пользовательского кода, поэтому я предполагаю, что формат входных данных правильный.

Мой предиктор выглядит так:

import numpy as np
from tensorflow import keras

class MyPredictor(object):

    def __init__(self, model):
        self._model = model

    def process_array(self, image_array, expand=True):
        ...

    def process_output(self, output_tensor):
        ...

    def predict(self, instances, **kwargs):
        inputs = np.asarray(instances) # Mhpws np.array?
        preprocessed_inputs = self.process_array(inputs)
        outputs = self._model.predict(preprocessed_inputs)[0]
        processed_outputs = self.process_output(outputs)
        return processed_outputs.tolist()

    @classmethod
    def from_path(cls, model_dir):
        model = keras.models.load_model(model_dir)

        return cls(model)

И setup.py:

from setuptools import setup

setup(
    name='my_custom_code',
    version='0.2',
    scripts=['predictor.py'])

Команды, которые я использую для получения прогноза, следующие:

MODEL_NAME="pscnn"
INPUT_DATA_FILE="input_single.json"
VERSION_NAME="v1b"

gcloud ai-platform predict --model $MODEL_NAME --version $VERSION_NAME --json-instances $INPUT_DATA_FILE
...