Die Pusher-komponent in TensorFlow Extended (TFX) is 'n fundamentele deel van die TFX-pyplyn wat die ontplooiing van opgeleide modelle na verskeie teikenomgewings hanteer. Die implementeringsteikens vir die Pusher-komponent in TFX is uiteenlopend en buigsaam, wat gebruikers in staat stel om hul modelle na verskillende platforms te ontplooi na gelang van hul spesifieke vereistes. In hierdie antwoord sal ons 'n paar van die algemene ontplooiingsteikens vir die Pusher-komponent ondersoek en 'n omvattende verduideliking van elk verskaf.
1. Plaaslike ontplooiing:
Die Pusher-komponent ondersteun plaaslike ontplooiing, wat gebruikers in staat stel om hul opgeleide modelle op die plaaslike masjien te ontplooi. Dit is nuttig vir toets- en ontwikkelingsdoeleindes, waar die model ontplooi en geëvalueer kan word sonder die behoefte aan 'n verspreide stelsel of eksterne infrastruktuur. Plaaslike ontplooiing word bereik deur bloot die plaaslike pad te spesifiseer waar die model-artefakte gestoor word.
voorbeeld:
python pusher = Pusher( model=trainer.outputs['model'], model_blessing=evaluator.outputs['blessing'], push_destination=pusher_pb2.PushDestination( filesystem=pusher_pb2.PushDestination.Filesystem( base_directory='/path/to/local/deployment' ) ) )
2. Google Wolk KI-platform:
Die Pusher-komponent ondersteun ook ontplooiing na Google Cloud AI Platform, 'n bestuurde diens wat 'n bedienerlose omgewing bied om masjienleermodelle te laat loop. Dit stel gebruikers in staat om hul modelle maklik na die wolk te ontplooi en voordeel te trek uit die skaalbaarheid en betroubaarheid wat deur Google Cloud aangebied word. Om na Google Cloud AI-platform te ontplooi, moet gebruikers die projek-ID, modelnaam en weergawenaam verskaf.
voorbeeld:
python pusher = Pusher( model=trainer.outputs['model'], model_blessing=evaluator.outputs['blessing'], push_destination=pusher_pb2.PushDestination( ai_platform_push=pusher_pb2.PushDestination.AIPlatformPush( project_id='my-project', model_id='my-model', version_id='v1' ) ) )
3. TensorFlow-bediening:
TensorFlow Serving is 'n oopbronbedieningstelsel vir die implementering van masjienleermodelle. Die Pusher-komponent in TFX ondersteun ontplooiing na TensorFlow Serving, wat gebruikers in staat stel om hul modelle na 'n verspreide bedieninfrastruktuur te ontplooi. Dit maak hoëprestasie en skaalbare modelbediening moontlik, wat dit geskik maak vir produksie-ontplooiings. Om na TensorFlow Serving te ontplooi, moet gebruikers die TensorFlow Serving-modelbediener se adres en poort verskaf.
voorbeeld:
python pusher = Pusher( model=trainer.outputs['model'], model_blessing=evaluator.outputs['blessing'], push_destination=pusher_pb2.PushDestination( tensorflow_serving=pusher_pb2.PushDestination.TensorFlowServing( tags=['serve'], server='localhost:8500' ) ) )
4. Ander pasgemaakte ontplooiingsteikens:
Die Pusher-komponent in TFX is ontwerp om uitbreidbaar te wees, sodat gebruikers hul eie pasgemaakte implementeringsteikens kan definieer. Dit gee gebruikers die buigsaamheid om hul modelle te ontplooi na enige omgewing of stelsel wat TensorFlow-modelle kan verbruik. Gebruikers kan hul eie pasgemaakte `PushDestination`-subklas implementeer en dit by die Pusher-komponent registreer om ontplooiing na hul teikenomgewing moontlik te maak.
voorbeeld:
python class MyCustomPushDestination(pusher_pb2.PushDestination): def __init__(self, my_custom_arg): self.my_custom_arg = my_custom_arg pusher = Pusher( model=trainer.outputs['model'], model_blessing=evaluator.outputs['blessing'], push_destination=MyCustomPushDestination(my_custom_arg='custom_value') )
Die Pusher-komponent in TFX ondersteun verskeie ontplooiingsteikens, insluitend plaaslike ontplooiing, Google Cloud AI Platform, TensorFlow Serving, en pasgemaakte ontplooiingsteikens. Hierdie buigsaamheid stel gebruikers in staat om hul opgeleide modelle na verskillende omgewings te ontplooi na gelang van hul spesifieke behoeftes en infrastruktuuropstelling.
Ander onlangse vrae en antwoorde t.o.v Verspreide verwerking en komponente:
- Wat is die doel van die Evaluator-komponent in TFX?
- Wat is die twee tipes SavedModels wat deur die Trainer-komponent gegenereer word?
- Hoe verseker die Transform-komponent konsekwentheid tussen opleiding- en bedieningsomgewings?
- Wat is die rol van Apache Beam in die TFX-raamwerk?