Le composant Pusher est utilisé pour pousser un modèle validé à une cible de déploiement lors de la formation de modèle ou de recyclage. Avant le déploiement, Pusher s'appuie sur une ou plusieurs bénédictions d'autres composants de validation pour décider de pousser le modèle ou non.
- Évaluateur bénit le modèle si le nouveau modèle qualifié est « assez de bon » pour être poussé à la production.
- (Optionnel mais recommandé) InfraValidator bénit le modèle si le modèle est mécaniquement diffusable dans un environnement de production.
Un composant Pusher consomme un modèle formé à SavedModel format et produit le même SavedModel, ainsi que des métadonnées versioning.
Utilisation du composant poussoir
Un composant de pipeline Pusher est généralement très facile à déployer et nécessite peu de personnalisation, car tout le travail est effectué par le composant Pusher TFX. Le code typique ressemble à ceci :
pusher = Pusher(
model=trainer.outputs['model'],
model_blessing=evaluator.outputs['blessing'],
infra_blessing=infra_validator.outputs['blessing'],
push_destination=tfx.proto.PushDestination(
filesystem=tfx.proto.PushDestination.Filesystem(
base_directory=serving_model_dir)
)
)
Pousser un modèle produit à partir d'InfraValidator.
(À partir de la version 0.30.0)
InfraValidator peut également produire InfraBlessing
artefact contenant un modèle avec warm - Model
up , et Pusher peut pousser comme un Model
artefact.
infra_validator = InfraValidator(
...,
# make_warmup=True will produce a model with warmup requests in its
# 'blessing' output.
request_spec=tfx.proto.RequestSpec(..., make_warmup=True)
)
pusher = Pusher(
# Push model from 'infra_blessing' input.
infra_blessing=infra_validator.outputs['blessing'],
push_destination=tfx.proto.PushDestination(...)
)
Plus de détails sont disponibles dans la référence API Pusher .