Model terlatih kustom Anda harus dikonfigurasi sedemikian rupa sehingga Earth Engine dapat mengirim permintaan inferensi yang terbentuk dengan baik dan dapat ditafsirkan ke model saat dihosting di Vertex AI.
Input Model yang Didukung
Earth Engine membuat permintaan atas nama Anda saat melakukan inferensi.
Tentukan format payload yang akan digunakan EE untuk mengirim permintaan menggunakan
parameter payloadFormat
saat Anda membuat instance konektor model dengan
ee.Model.fromVertexAi
.
Payload Prediksi gRPC
Semua model TensorFlow yang dihosting dapat mengirim prediksi melalui protokol gRPC. Ini adalah cara yang lebih disukai untuk menghubungkan model yang dihosting dengan Earth Engine karena akan menghasilkan latensi prediksi yang lebih rendah dan keandalan yang lebih tinggi.
GRPC_TF_TENSORS
Gunakan format payload GRPC_TF_TENSORS
untuk menggunakan gRPC dengan model TensorFlow.
Semua properti dan/atau band akan dienkode dalam satu
PredictRequest
.
PredictRequest
ini akan dikonversi menjadi kamus tensor untuk digunakan oleh
model Anda.
GRPC_SERIALIZED_TF_TENSORS
Gunakan format GRPC_SERIALIZED_TF_TENSORS
jika Anda ingin
memigrasikan model Cloud AI Platform yang sebelumnya telah terintegrasi dengan
Earth Engine tanpa harus mengubah model. Anda harus mengupload ulang dan men-deploy ulang jika container_grpc_ports
tidak ditetapkan pada model Anda di Vertex AI.
GRPC_SERIALIZED_TF_EXAMPLES
Gunakan GRPC_SERAILZED_TF_EXAMPLES
untuk model yang mendukung buffering protokol
tf.Example. Earth Engine akan mengirim satu tensor bernama "input" yang berisi proto ByteString proto Contoh yang dienkode utf-8.
Payload HTTP API
Vertex AI mendukung koneksi ke endpoint inferensi HTTP. Earth Engine mendukung beberapa format payload HTTP umum. Secara default, semua model kustom Vertex AI mendukung API inferensi HTTP.
SERIALIZED_TF_TENSORS
Ini adalah payloadFormat
default saat terhubung ke model yang dihosting di Vertex AI. Format payload ini adalah format payload HTTP yang paling efisien saat
menggunakan model TensorFlow.
Earth Engine akan membuat input dengan cara berikut: untuk setiap band dan properti yang diperlukan untuk permintaan inferensi Anda, akan ada satu pasangan nilai kunci dalam objek instances
yang dikirim ke model yang dihosting.
Setiap kunci akan menjadi nama band atau properti dan setiap nilai akan berupa
TensorProto ByteString yang dienkode
Base64 sebagai string_val
.
RAW_JSON
Untuk framework model lainnya, format paling fleksibel yang dapat kita kirim adalah kamus JSON input dan nilai yang diberi nama. Format payload ini berfungsi dengan baik dengan model PyTorch dan AutoML secara default.
Namun, perlu diperhatikan bahwa semua nilai numerik akan dikonversi menjadi string JSON. Misalnya, untuk merepresentasikan angka 12,345, kita mengenkodenya sebagai string "12.345". Payload inferensi besar tidak didukung dengan baik dengan format payload ini.
ND_ARRAYS
Hal ini mirip dengan format payload RAW_JSON
, tetapi akan menghapus kunci dan hanya
meneruskan daftar angka dalam format panggilan yang sama
to_list()
di ndarray NumPy. Format payload ini berfungsi dengan baik dengan PyTorch secara native.