O componente Pusher é usado para enviar um modelo validado para um destino de implantação durante o treinamento ou retreinamento do modelo. Antes da implantação, o Pusher conta com uma ou mais bênçãos de outros componentes de validação para decidir se deve fazer o push do modelo ou não.
- O avaliador abençoa o modelo se o novo modelo treinado for "bom o suficiente" para ser colocado em produção.
- (Opcional, mas recomendado) O InfraValidator abençoa o modelo se ele puder ser reparado mecanicamente em um ambiente de produção.
Um componente Pusher consome um modelo treinado no formato SavedModel e produz o mesmo SavedModel, junto com metadados de controle de versão.
Usando o componente Pusher
Um componente de pipeline Pusher é normalmente muito fácil de implantar e requer pouca personalização, já que todo o trabalho é feito pelo componente Pusher TFX. O código típico se parece com isto:
from tfx import components
...
pusher = components.Pusher(
model=trainer.outputs['model'],
model_blessing=evaluator.outputs['blessing'],
infra_blessing=infra_validator.outputs['blessing'],
push_destination=pusher_pb2.PushDestination(
filesystem=pusher_pb2.PushDestination.Filesystem(
base_directory=serving_model_dir)
)
)