„TensorFlow Extended“ (TFX) „Pusher“ komponentas yra pagrindinė TFX dujotiekio dalis, kuri tvarko apmokytų modelių diegimą įvairiose tikslinėse aplinkose. TFX „Pusher“ komponento diegimo tikslai yra įvairūs ir lankstūs, todėl vartotojai gali įdiegti modelius skirtingose platformose, atsižvelgiant į konkrečius reikalavimus. Šiame atsakyme išnagrinėsime kai kuriuos bendrus „Pusher“ komponento diegimo tikslus ir pateiksime išsamų kiekvieno iš jų paaiškinimą.
1. Vietinis diegimas:
„Pusher“ komponentas palaiko vietinį diegimą, o tai leidžia vartotojams įdiegti apmokytus modelius vietiniame kompiuteryje. Tai naudinga testavimo ir kūrimo tikslais, kai modelis gali būti įdiegtas ir įvertintas nenaudojant paskirstytos sistemos ar išorinės infrastruktūros. Vietinis diegimas pasiekiamas tiesiog nurodant vietinį kelią, kuriame saugomi modelio artefaktai.
Pavyzdys:
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:
„Pusher“ komponentas taip pat palaiko diegimą „Google Cloud AI Platform“ – valdomoje tarnyboje, kuri suteikia aplinką be serverio mašininio mokymosi modeliams paleisti. Tai leidžia vartotojams lengvai įdiegti savo modelius debesyje ir pasinaudoti „Google Cloud“ teikiamu mastelio ir patikimumo privalumais. Norėdami įdiegti „Google Cloud AI“ platformoje, naudotojai turi pateikti projekto ID, modelio pavadinimą ir versijos pavadinimą.
Pavyzdys:
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 aptarnavimas:
„TensorFlow Serving“ yra atvirojo kodo aptarnavimo sistema, skirta mašininio mokymosi modeliams diegti. TFX „Pusher“ komponentas palaiko diegimą „TensorFlow Serving“, leidžiantį vartotojams įdiegti savo modelius paskirstytoje aptarnavimo infrastruktūroje. Tai įgalina didelio našumo ir keičiamo dydžio modelių aptarnavimą, todėl jis tinkamas gamybiniam diegimui. Norėdami įdiegti „TensorFlow Serving“, vartotojai turi nurodyti „TensorFlow Serving“ modelio serverio adresą ir prievadą.
Pavyzdys:
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. Kiti tinkinti diegimo tikslai:
TFX „Pusher“ komponentas sukurtas taip, kad jį būtų galima išplėsti, todėl vartotojai gali nustatyti savo pasirinktinius diegimo tikslus. Tai suteikia vartotojams lankstumo diegti savo modelius bet kurioje aplinkoje ar sistemoje, kuri gali naudoti TensorFlow modelius. Vartotojai gali įdiegti savo pasirinktinį „PushDestination“ poklasį ir užregistruoti jį „Pusher“ komponente, kad būtų galima įdiegti savo tikslinėje aplinkoje.
Pavyzdys:
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') )
TFX komponentas „Pusher“ palaiko įvairius diegimo tikslus, įskaitant vietinį diegimą, „Google Cloud AI“ platformą, „TensorFlow Serving“ ir pasirinktinius diegimo tikslus. Šis lankstumas leidžia vartotojams pritaikyti apmokytus modelius skirtingose aplinkose, atsižvelgiant į konkrečius poreikius ir infrastruktūros sąranką.
Kiti naujausi klausimai ir atsakymai apie Platinamas apdorojimas ir komponentai:
- Koks yra TFX komponento „Evaluator“ tikslas?
- Kokie yra dviejų tipų „SavedModels“, kuriuos sugeneruoja „Trainer“ komponentas?
- Kaip Transform komponentas užtikrina mokymo ir aptarnavimo aplinkos nuoseklumą?
- Koks yra „Apache Beam“ vaidmuo TFX sistemoje?