واجهات برمجة تطبيقات SavedModel الشائعة لـ TF Hub

مقدمة

TensorFlow المحور تستضيف نماذج لمجموعة متنوعة من المهام. يتم تشجيع النماذج الخاصة بالمهمة نفسها على تنفيذ واجهة برمجة تطبيقات مشتركة بحيث يمكن للمستهلكين النموذجيين استبدالها بسهولة دون تعديل الكود الذي يستخدمهم ، حتى لو كانوا من ناشرين مختلفين.

الهدف هو جعل تبادل النماذج المختلفة لنفس المهمة بسيطًا مثل تبديل معلمة تشعبية ذات قيمة سلسلة. مع ذلك ، يمكن للمستهلكين النموذجيين العثور بسهولة على أفضل واحد لمشكلتهم.

هذا الدليل يجمع مواصفات واجهات برمجة التطبيقات الشائعة لنماذج في شكل TF2 SavedModel . (وهي تحل محل التواقيع المشتركة للإهمال الان شكل TF1 المحور ).

SavedModel القابل لإعادة الاستخدام: الأساس المشترك

و API قابلة لإعادة الاستخدام SavedModel يحدد الاتفاقيات العامة كيفية تحميل ظهر SavedModel في برنامج بيثون وإعادة استخدامها كجزء من نموذج TensorFlow أكبر.

الاستخدام الأساسي:

obj = hub.load("path/to/model")  # That's tf.saved_model.load() after download.
outputs = obj(inputs, training=False)  # Invokes the tf.function obj.__call__.

للمستخدمين Keras، و hub.KerasLayer تعتمد درجة في هذه API إلى التفاف قابلة لإعادة الاستخدام SavedModel باعتبارها طبقة Keras (يحمي المستخدمين Keras من تفاصيله)، مع المدخلات والمخرجات وفقا لواجهات برمجة التطبيقات مهمة محددة المدرجة أدناه.

واجهات برمجة التطبيقات الخاصة بالمهام

هذه صقل و قابلة لإعادة الاستخدام SavedModel API مع الاتفاقيات لبعينها المهام ML وأنواع البيانات.