Форматы полезной нагрузки размещенной модели, поддерживаемые Earth Engine

Ваша специально обученная модель должна быть настроена таким образом, чтобы 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.