يجب إعداد النموذج المخصّص الذي تم تدريبه بحيث يمكن لخدمة Earth Engine إرسال طلبات استنتاج جيدة الصياغة وقابلة للتفسير إلى النموذج أثناء استضافته على Vertex AI.
مدخلات النماذج المتوافقة
تُنشئ أداة Earth Engine الطلبات نيابةً عنك عند إجراء الاستنتاج.
حدِّد تنسيق الحمولة الذي سترسل به واجهة برمجة التطبيقات طلبات باستخدام المَعلمة
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
إذا كنت تريد نقل نموذج منصة الذكاء الاصطناعي في السحابة الإلكترونية الذي سبق أن تم دمجه مع Earth Engine بدون الحاجة إلى تعديل النموذج. ستحتاج إلى إعادة التحميل و
إعادة النشر إذا لم يتم ضبط container_grpc_ports
على النموذج في Vertex AI.
GRPC_SERIALIZED_TF_EXAMPLES
استخدِم GRPC_SERAILZED_TF_EXAMPLES
للنماذج التي تتيح استخدام ملفّات tf.Example protocol
التخزين. ستُرسِل Earth Engine مصفوفة تانسور واحدة باسم "input" تحتوي على ملف ByteString من ملف proto مُشفَّر بترميز utf-8 لمثال على ملف proto.
حِزم بيانات واجهة برمجة التطبيقات HTTP
تتيح لك أداة Vertex AI الاتصال بنقاط نهاية الاستنتاج في HTTP. تتيح أداة Earth Engine استخدام العديد من تنسيقات الحمولات الشائعة في HTTP. تتيح جميع نماذج Vertex AI المخصّصة تلقائيًا واجهة برمجة التطبيقات HTTP inference API.
SERIALIZED_TF_TENSORS
هذا هو payloadFormat
التلقائي عند الاتصال بنموذج مستضاف في Vertex
AI. إنّ تنسيق الحمولة هذا هو الأكثر فعالية بين تنسيقات الحمولة في HTTP عند استخدام نماذج TensorFlow.
ستنشئ أداة Earth Engine المدخلات بالطريقة التالية: لكل نطاق و
خاصية مطلوبة لطلب الاستنتاج، سيكون هناك زوج مفتاح/قيمة واحد في
عنصر instances
الذي يتم إرساله إلى النموذج المستضاف.
سيكون كل مفتاح هو اسم النطاق أو الموقع، وستكون كل قيمة string_val
من نوع
TensorProto ByteString بترميز Base64.
RAW_JSON
بالنسبة إلى إطارات العمل الأخرى للنماذج، فإنّ التنسيق الأكثر مرونة الذي يمكننا إرساله هو قاموس JSON للمدخلات والقيم المُسمّاة. يعمل تنسيق الحمولة هذا بشكل جيد مع نماذج PyTorch وAutoML تلقائيًا.
يُرجى العلم أنّه سيتم تحويل جميع القيم الرقمية إلى سلاسل JSON. على سبيل المثال، لتمثيل الرقم 12.345، نُشفِّره على النحو التالي: "12.345". لا تتوفّر حِزم بيانات الاستنتاج الكبيرة بشكل جيد مع تنسيق الحِزم هذا.
ND_ARRAYS
يشبه هذا تنسيق الحمولة RAW_JSON
، ولكن سيتم حذف المفاتيح وسيكون هناك
قائمة بالأرقام فقط بالتنسيق نفسه للاتّصال
to_list()
في صفيف ndarray من NumPy. يعمل تنسيق الحمولة هذا بشكل جيد مع PyTorch بشكلٍ أصلي.