Earth Engine'da Desteklenen Barındırılan Model Yük Verileri Biçimleri

Özel olarak eğitilmiş modeliniz, Vertex AI'da barındırıldığı için Earth Engine'ın modele iyi biçimlendirilmiş, yorumlanabilir çıkarım istekleri gönderebileceği şekilde yapılandırılmalıdır.

Desteklenen Model Girişleri

Earth Engine, çıkarım yaparken sizin adınıza istekler oluşturur. Model bağlayıcısını ee.Model.fromVertexAi ile örneklendirirken EE'nin istekleri göndereceği yükü payloadFormat parametresini kullanarak belirtin.

gRPC Tahmin Yükleri

Tüm barındırılan TensorFlow modelleri, gRPC protokolü üzerinden tahmin gönderebilir. Bu yöntem, barındırılan modelleri Earth Engine'a bağlamanın tercih edilen yoludur. Bunun nedeni, tahmin gecikmesinin daha düşük ve güvenilirliğin daha yüksek olmasıdır.

GRPC_TF_TENSORS

gRPC'yi TensorFlow modelleriyle kullanmak için GRPC_TF_TENSORS yükü biçimini kullanın. Tüm mülkler ve/veya bantlar tek bir PredictRequest ile kodlanır. Bu PredictRequest, modelinizin kullanabileceği bir tensör sözlüğüne dönüştürülür.

GRPC_SERIALIZED_TF_TENSORS

Daha önce Earth Engine ile entegre edilmiş bir Cloud AI Platform modelini değiştirmek zorunda kalmadan taşımak istiyorsanız GRPC_SERIALIZED_TF_TENSORS biçimini kullanın. Vertex AI'daki modelinizde container_grpc_ports ayarlanmamışsa modeli yeniden yüklemeniz ve yeniden dağıtmanız gerekir.

GRPC_SERIALIZED_TF_EXAMPLES

tf.Example protokol arabelleklerini destekleyen modeller için GRPC_SERAILZED_TF_EXAMPLES değerini kullanın. Earth Engine, bir örnek protonun utf-8 kodlu proto ByteString'ini içeren "input" adlı tek bir tenör gönderir.

HTTP API Yükleri

Vertex AI, HTTP çıkarım uç noktalarına bağlanmayı destekler. Earth Engine, yaygın HTTP yükü biçimlerinden birkaçını destekler. Varsayılan olarak tüm Vertex AI özel modelleri HTTP çıkarım API'sini destekler.

SERIALIZED_TF_TENSORS

Bu, Vertex AI'da barındırılan bir modele bağlanırken varsayılan payloadFormat değeridir. Bu yük biçimi, TensorFlow modelleri kullanıldığında HTTP yük biçimleri arasında en verimli olanıdır.

Earth Engine, girişleri aşağıdaki şekilde oluşturur: Tahmin isteğiniz için gereken her bant ve özellik, barındırılan modelinize gönderilen instances nesnesinde tek bir anahtar/değer çifti olur.

Her anahtar, bant veya mülk adı olur ve her değer, string_val olarak Base64 kodlu bir TensorProto ByteString olur.

RAW_JSON

Diğer model çerçeveleri için gönderebileceğimiz en esnek biçim, adlandırılmış girişler ve değerlerin yer aldığı bir JSON sözlüğüdür. Bu yükü biçimi varsayılan olarak PyTorch ve AutoML modelleriyle iyi çalışır.

Ancak tüm sayısal değerlerin JSON dizelerine dönüştürüleceğini unutmayın. Örneğin, 12,345 sayısını temsil etmek için bu sayıyı "12.345" dizesi olarak kodlarız. Büyük çıkarım yükü bu yükü biçimi ile iyi desteklenmez.

ND_ARRAYS

Bu, RAW_JSON yükü biçimine benzer ancak anahtarları atlar ve yalnızca bir NumPy ndarray üzerinde to_list() çağırmanın aynı biçiminde bir sayı listesi iletir. Bu yükü biçimi, PyTorch ile doğal olarak iyi çalışır.