SavedModel Warmup

מבוא

לזמן הריצה של TensorFlow יש רכיבים שמאוחלים בעצלתיים, מה שעלול לגרום להשהיה גבוהה עבור הבקשה/ות הראשונים שנשלחו לדגם לאחר טעינתו. חביון זה יכול להיות גבוה בכמה סדרי גודל מזו של בקשת הסקה בודדת.

כדי להפחית את ההשפעה של האתחול העצל על זמן השהיית הבקשה, אפשר להפעיל את האתחול של תת-המערכות והרכיבים בזמן טעינת המודל על ידי אספקת קבוצה לדוגמה של בקשות הסקה יחד עם SavedModel. תהליך זה ידוע כ"חימום" של הדגם.

נוֹהָג

SavedModel Warmup נתמך עבור Regress, Classify, MultiInference ו-Predict. כדי להפעיל חימום של הדגם בזמן הטעינה, צרף קובץ נתוני חימום מתחת לתיקיית המשנה assets.extra של ספריית SavedModel.

דרישות לחימום הדגם לעבוד כהלכה:

  • שם קובץ חימום: 'tf_serving_warmup_requests'
  • מיקום הקובץ: assets.extra/
  • פורמט קובץ: TFRecord עם כל רשומה בתור PredictionLog .
  • מספר שיאי החימום <= 1000.
  • נתוני החימום חייבים להיות מייצגים את בקשות ההסקה ששימשו בהגשה.

יצירת נתוני חימום

ניתן להוסיף נתוני חימום בשתי דרכים:

  • על ידי מילוי ישיר של בקשות החימום בדגם השמור המיוצא שלך. ניתן לעשות זאת על ידי יצירת סקריפט שקורא רשימה של בקשות להסקת מסקנות לדוגמה, המרת כל בקשה ל- PredictionLog (אם היא במקור בפורמט אחר) ושימוש ב- TFRecordWriter כדי לכתוב את הערכים של PredictionLog לתוך YourSavedModel/assets.extra/tf_serving_warmup_requests .
  • על ידי שימוש באפשרות TFX Infra Validator לייצא דגם שמור עם חימום . עם אפשרות זו ה-TFX Infa Validator יאכלס את YourSavedModel/assets.extra/tf_serving_warmup_requests על סמך בקשות האימות שסופקו דרך RequestSpec .