Komponen Pusher di TensorFlow Extended (TFX) adalah bagian mendasar dari pipeline TFX yang menangani penerapan model terlatih ke berbagai lingkungan target. Target penerapan untuk komponen Pusher di TFX beragam dan fleksibel, memungkinkan pengguna untuk menerapkan model mereka ke berbagai platform tergantung pada kebutuhan khusus mereka. Dalam jawaban ini, kami akan menjelajahi beberapa target penerapan umum untuk komponen Pusher dan memberikan penjelasan komprehensif untuk masing-masingnya.
1. Penerapan Lokal:
Komponen Pusher mendukung penerapan lokal, yang memungkinkan pengguna menerapkan model terlatih mereka di mesin lokal. Ini berguna untuk tujuan pengujian dan pengembangan, di mana model dapat digunakan dan dievaluasi tanpa memerlukan sistem terdistribusi atau infrastruktur eksternal. Penyebaran lokal dicapai dengan hanya menentukan jalur lokal tempat artefak model disimpan.
Contoh:
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. Platform Google Cloud AI:
Komponen Pusher juga mendukung penerapan ke Google Cloud AI Platform, layanan terkelola yang menyediakan lingkungan tanpa server untuk menjalankan model pembelajaran mesin. Hal ini memungkinkan pengguna untuk dengan mudah menerapkan model mereka ke cloud dan memanfaatkan skalabilitas dan keandalan yang ditawarkan oleh Google Cloud. Untuk men-deploy ke Google Cloud AI Platform, pengguna harus memberikan project ID, nama model, dan nama versi.
Contoh:
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. Penyajian TensorFlow:
TensorFlow Serving adalah sistem penyajian sumber terbuka untuk menerapkan model pembelajaran mesin. Komponen Pusher di TFX mendukung penerapan ke TensorFlow Serving, yang memungkinkan pengguna menerapkan model mereka ke infrastruktur layanan terdistribusi. Hal ini memungkinkan penyajian model berkinerja tinggi dan dapat diskalakan, sehingga cocok untuk penerapan produksi. Untuk men-deploy ke TensorFlow Serving, pengguna harus menyediakan alamat dan port server model TensorFlow Serving.
Contoh:
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. Target Penerapan Kustom Lainnya:
Komponen Pusher di TFX dirancang agar dapat diperluas, memungkinkan pengguna menentukan target penyebaran kustom mereka sendiri. Ini memberi pengguna fleksibilitas untuk menerapkan model mereka ke lingkungan atau sistem apa pun yang dapat menggunakan model TensorFlow. Pengguna dapat mengimplementasikan subkelas `PushDestination` kustom mereka sendiri dan mendaftarkannya ke komponen Pusher untuk mengaktifkan penerapan ke lingkungan target mereka.
Contoh:
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') )
Komponen Pusher di TFX mendukung berbagai target penerapan, termasuk penerapan lokal, Google Cloud AI Platform, TensorFlow Serving, dan target penerapan khusus. Fleksibilitas ini memungkinkan pengguna untuk menerapkan model terlatih mereka ke lingkungan yang berbeda tergantung pada kebutuhan spesifik dan penyiapan infrastruktur mereka.
Pertanyaan dan jawaban terbaru lainnya tentang Pemrosesan dan komponen terdistribusi:
- Apa tujuan dari komponen Evaluator di TFX?
- Apa saja dua tipe SavedModels yang dihasilkan oleh komponen Trainer?
- Bagaimana komponen Transform memastikan konsistensi antara lingkungan pelatihan dan penyajian?
- Apa peran Apache Beam dalam kerangka TFX?