Ваша специально обученная модель должна быть настроена таким образом, чтобы Earth Engine мог отправлять правильно сформированные, интерпретируемые запросы вывода к модели, поскольку она размещена на Vertex AI.
Поддерживаемые входные данные модели
Earth Engine создает запросы от вашего имени при выполнении вывода. Укажите формат полезной нагрузки, который EE будет отправлять запросы, используя параметр payloadFormat
при создании экземпляра соединителя модели с помощью ee.Model.fromVertexAi
.
Полезные данные прогнозирования gRPC
Все размещенные модели TensorFlow могут отправлять прогнозы по протоколу gRPC. Это предпочтительный способ подключения размещенных моделей к Earth Engine, поскольку он приводит к меньшей задержке прогнозирования и повышению надежности.
GRPC_TF_TENSORS
Используйте формат полезных данных GRPC_TF_TENSORS
для использования gRPC с моделями TensorFlow. Все свойства и/или полосы будут закодированы в одном PredictRequest
. Этот PredictRequest
будет преобразован в словарь тензоров для использования вашей моделью.
GRPC_SERIALIZED_TF_TENSORS
Используйте формат GRPC_SERIALIZED_TF_TENSORS
, если вы хотите перенести модель Cloud AI Platform, которая ранее уже была интегрирована с Earth Engine, без необходимости изменения модели. Вам потребуется повторно загрузить и повторно развернуть, если для вашей модели в Vertex AI не установлен container_grpc_ports
.
GRPC_SERIALIZED_TF_EXAMPLES
Используйте GRPC_SERAILZED_TF_EXAMPLES
для моделей, поддерживающих буферы протокола tf.Example. Earth Engine отправит один тензор с именем «input», который содержит прото-байтовую строку в кодировке utf-8 из примера прото.
Полезные нагрузки HTTP API
Vertex AI поддерживает подключение к конечным точкам вывода HTTP. Earth Engine поддерживает несколько распространенных форматов полезной нагрузки HTTP. По умолчанию все пользовательские модели Vertex AI поддерживают API вывода HTTP.
SERIALIZED_TF_TENSORS
Это payloadFormat
по умолчанию при подключении к размещенной модели в Vertex AI. Этот формат полезных данных является наиболее эффективным из форматов полезных данных HTTP при использовании моделей TensorFlow.
Earth Engine сформирует входные данные следующим образом: для каждой полосы и свойства, необходимых для вашего запроса на вывод, будет одна пара ключ-значение в объекте instances
отправленном в вашу размещенную модель.
Каждый ключ будет именем группы или свойства, а каждое значение будет представлять собой байтовую строку TensorProto в кодировке Base64 как string_val
.
RAW_JSON
Для других платформ моделей наиболее гибкий формат, который мы можем отправить, — это словарь JSON с именованными входными данными и значениями. Этот формат полезных данных по умолчанию хорошо работает с моделями PyTorch и AutoML.
Однако обратите внимание, что все числовые значения будут преобразованы в строки JSON. Например, чтобы представить число, мы кодируем его как строку «12,345». Большие полезные данные вывода плохо поддерживаются этим форматом полезных данных.
ND_ARRAYS
Это похоже на формат полезной нагрузки RAW_JSON
но в нем не используются ключи и передается только список чисел в том же формате, что и при вызове to_list()
в ndarray NumPy. Этот формат полезной нагрузки изначально хорошо работает с PyTorch.