Komponenta Pusher v TensorFlow Extended (TFX) je temeljni del cevovoda TFX, ki skrbi za uvajanje usposobljenih modelov v različna ciljna okolja. Cilji uvajanja za komponento Pusher v TFX so raznoliki in prilagodljivi, kar uporabnikom omogoča uvajanje njihovih modelov na različne platforme glede na njihove specifične zahteve. V tem odgovoru bomo raziskali nekaj skupnih ciljev uvajanja za komponento Pusher in zagotovili izčrpno razlago vsakega.
1. Lokalna namestitev:
Komponenta Pusher podpira lokalno uvajanje, ki uporabnikom omogoča uvajanje svojih usposobljenih modelov na lokalnem računalniku. To je uporabno za namene testiranja in razvoja, kjer je mogoče model namestiti in ovrednotiti brez potrebe po porazdeljenem sistemu ali zunanji infrastrukturi. Lokalno uvajanje se doseže s preprosto določitvijo lokalne poti, kjer so shranjeni artefakti modela.
primer:
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 Cloud AI Platforma:
Komponenta Pusher podpira tudi uvajanje v Google Cloud AI Platform, upravljano storitev, ki zagotavlja brezstrežniško okolje za izvajanje modelov strojnega učenja. To omogoča uporabnikom, da enostavno namestijo svoje modele v oblak in izkoristijo razširljivost in zanesljivost, ki jo ponuja Google Cloud. Za uvedbo v Google Cloud AI Platform morajo uporabniki posredovati ID projekta, ime modela in ime različice.
primer:
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. Storitev TensorFlow:
TensorFlow Serving je odprtokodni strežni sistem za uvajanje modelov strojnega učenja. Komponenta Pusher v TFX podpira uvajanje v TensorFlow Serving, kar uporabnikom omogoča uvajanje svojih modelov v porazdeljeno strežno infrastrukturo. To omogoča visoko zmogljivo in razširljivo strežbo modela, zaradi česar je primeren za produkcijske uvedbe. Za uvedbo v TensorFlow Serving morajo uporabniki posredovati naslov in vrata modelnega strežnika TensorFlow Serving.
primer:
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. Drugi cilji uvajanja po meri:
Komponenta Pusher v TFX je zasnovana tako, da jo je mogoče razširiti, kar uporabnikom omogoča, da določijo lastne cilje uvajanja po meri. To daje uporabnikom prožnost pri uvajanju svojih modelov v katero koli okolje ali sistem, ki lahko uporablja modele TensorFlow. Uporabniki lahko implementirajo svoj podrazred `PushDestination` po meri in ga registrirajo s komponento Pusher, da omogočijo uvajanje v svoje ciljno okolje.
primer:
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') )
Komponenta Pusher v TFX podpira različne cilje uvajanja, vključno z lokalnim uvajanjem, platformo Google Cloud AI Platform, TensorFlow Serving in cilji uvajanja po meri. Ta prilagodljivost omogoča uporabnikom, da uvedejo svoje usposobljene modele v različna okolja, odvisno od njihovih posebnih potreb in nastavitve infrastrukture.
Druga nedavna vprašanja in odgovori v zvezi Porazdeljena obdelava in komponente:
- Kakšen je namen komponente Evaluator v TFX?
- Kateri sta dve vrsti shranjenih modelov, ki jih ustvari komponenta Trainer?
- Kako komponenta Transform zagotavlja skladnost med izobraževalnim in strežnim okoljem?
- Kakšna je vloga Apache Beam v ogrodju TFX?