Прогрев сохраненной модели

Введение

Среда выполнения TensorFlow содержит компоненты, которые инициализируются лениво, что может привести к высокой задержке для первых запросов, отправленных в модель после ее загрузки. Эта задержка может быть на несколько порядков выше, чем у одного запроса вывода.

Чтобы уменьшить влияние отложенной инициализации на задержку запроса, можно инициировать инициализацию подсистем и компонентов во время загрузки модели, предоставив образец набора запросов вывода вместе с SavedModel. Этот процесс известен как «прогрев» модели.

Применение

Разминка SavedModel поддерживается для 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 будет заполнять YourSavedModel/assets.extra/tf_serving_warmup_requests на основе запросов проверки, предоставленных через RequestSpec .