Earth Engine에서 지원되는 호스팅된 모델 페이로드 형식

커스텀 학습 모델은 Vertex AI에서 호스팅되므로 Earth Engine이 잘 구성되고 해석 가능한 추론 요청을 모델에 전송할 수 있도록 구성해야 합니다.

지원되는 모델 입력

Earth Engine은 추론을 실행할 때 사용자를 대신하여 요청을 생성합니다. ee.Model.fromVertexAi로 모델 커넥터를 인스턴스화할 때 EE가 payloadFormat 매개변수를 사용하여 요청을 전송할 페이로드 형식을 지정합니다.

gRPC 예측 페이로드

모든 호스팅된 TensorFlow 모델은 gRPC 프로토콜을 통해 예측을 전송할 수 있습니다. 이 방법은 호스팅된 모델을 Earth Engine과 연결하는 데 권장되는 방법입니다. 예측 지연 시간이 짧아지고 안정성이 높아지기 때문입니다.

GRPC_TF_TENSORS

GRPC_TF_TENSORS 페이로드 형식을 사용하여 TensorFlow 모델에서 gRPC를 사용합니다. 모든 속성 또는 밴드는 단일 PredictRequest로 인코딩됩니다. 이 PredictRequest는 모델에서 사용할 텐서 딕셔너리로 변환됩니다.

GRPC_SERIALIZED_TF_TENSORS

이전에 이미 Earth Engine과 통합된 Cloud AI Platform 모델을 모델을 수정하지 않고 이전하려면 GRPC_SERIALIZED_TF_TENSORS 형식을 사용하세요. Vertex AI의 모델에 container_grpc_ports가 설정되어 있지 않으면 다시 업로드하고 다시 배포해야 합니다.

GRPC_SERIALIZED_TF_EXAMPLES

tf.Example 프로토콜 버퍼를 지원하는 모델에는 GRPC_SERAILZED_TF_EXAMPLES를 사용합니다. Earth Engine은 예시 proto의 utf-8 인코딩된 proto ByteString이 포함된 'input'이라는 단일 텐서를 전송합니다.

HTTP API 페이로드

Vertex AI는 HTTP 추론 엔드포인트에 연결하는 것을 지원합니다. Earth Engine은 여러 일반적인 HTTP 페이로드 형식을 지원합니다. 기본적으로 모든 Vertex AI 맞춤 모델은 HTTP 추론 API를 지원합니다.

SERIALIZED_TF_TENSORS

Vertex AI에서 호스팅된 모델에 연결할 때의 기본 payloadFormat입니다. 이 페이로드 형식은 TensorFlow 모델을 사용할 때 가장 효율적인 HTTP 페이로드 형식입니다.

Earth Engine은 다음과 같은 방식으로 입력을 구성합니다. 추론 요청에 필요한 모든 밴드 및 속성은 호스팅된 모델에 전송되는 instances 객체의 단일 키-값 쌍입니다.

각 키는 밴드 또는 속성 이름이고 각 값은 string_valBase64 인코딩된 TensorProto ByteString입니다.

RAW_JSON

다른 모델 프레임워크의 경우 이름이 지정된 입력과 값의 JSON 사전이 가장 유연한 형식입니다. 이 페이로드 형식은 기본적으로 PyTorch 및 AutoML 모델과 잘 작동합니다.

단, 모든 숫자 값은 JSON 문자열로 변환됩니다. 예를 들어 숫자를 나타내기 위해 12.345를 문자열 '12.345'로 인코딩합니다. 대용량 추론 페이로드는 이 페이로드 형식으로 잘 지원되지 않습니다.

ND_ARRAYS

이는 RAW_JSON 페이로드 형식과 유사하지만 키를 생략하고 NumPy ndarray에서 to_list()를 호출하는 것과 동일한 형식의 숫자 목록만 전달합니다. 이 페이로드 형식은 PyTorch와 원래 호환됩니다.