TensorFlow Extended'daki (TFX) Pusher bileşeni, eğitimli modellerin çeşitli hedef ortamlara dağıtımını yöneten TFX ardışık düzeninin temel bir parçasıdır. TFX'teki Pusher bileşeni için dağıtım hedefleri, çeşitli ve esnek olup, kullanıcıların modellerini kendi özel gereksinimlerine göre farklı platformlara dağıtmalarına olanak tanır. Bu yanıtta, İtici bileşeni için bazı ortak dağıtım hedeflerini inceleyeceğiz ve her birine ilişkin kapsamlı bir açıklama sağlayacağız.
1. Yerel Dağıtım:
Pusher bileşeni, kullanıcıların eğitilmiş modellerini yerel makinede dağıtmalarına olanak tanıyan yerel dağıtımı destekler. Bu, modelin dağıtılmış bir sisteme veya harici bir altyapıya ihtiyaç duymadan dağıtılabildiği ve değerlendirilebildiği test ve geliştirme amaçları için kullanışlıdır. Yerel dağıtım, yalnızca model yapıtlarının depolandığı yerel yolu belirterek elde edilir.
Örnek:
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 Yapay Zeka Platformu:
Pusher bileşeni, makine öğrenimi modellerini çalıştırmak için sunucusuz bir ortam sağlayan yönetilen bir hizmet olan Google Cloud AI Platform'a dağıtımı da destekler. Bu, kullanıcıların modellerini kolayca buluta dağıtmasına ve Google Cloud'un sunduğu ölçeklenebilirlik ve güvenilirlikten yararlanmasına olanak tanır. Google Cloud AI Platform'a dağıtmak için kullanıcıların proje kimliğini, model adını ve sürüm adını sağlaması gerekir.
Örnek:
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 Sunumu:
TensorFlow Serving, makine öğrenimi modellerini dağıtmak için açık kaynaklı bir hizmet sistemidir. TFX'teki Pusher bileşeni, kullanıcıların modellerini dağıtılmış bir hizmet altyapısına dağıtmasına izin vererek, TensorFlow Serving'e dağıtımı destekler. Bu, yüksek performanslı ve ölçeklenebilir model sunumunu mümkün kılarak onu üretim dağıtımları için uygun hale getirir. TensorFlow Serving'e dağıtmak için kullanıcıların TensorFlow Serving model sunucusunun adresini ve bağlantı noktasını sağlaması gerekir.
Örnek:
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. Diğer Özel Dağıtım Hedefleri:
TFX'teki İtici bileşen, genişletilebilir olacak şekilde tasarlanmıştır ve kullanıcıların kendi özel dağıtım hedeflerini tanımlamasına olanak tanır. Bu, kullanıcılara modellerini TensorFlow modellerini tüketebilecek herhangi bir ortama veya sisteme dağıtma esnekliği sağlar. Kullanıcılar, kendi özel "PushDestination" alt sınıflarını uygulayabilir ve hedef ortamlarına dağıtımı etkinleştirmek için bunu Pusher bileşenine kaydedebilir.
Örnek:
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'teki Pusher bileşeni, yerel dağıtım, Google Cloud AI Platform, TensorFlow Sunumu ve özel dağıtım hedefleri dahil olmak üzere çeşitli dağıtım hedeflerini destekler. Bu esneklik, kullanıcıların eğitimli modellerini özel ihtiyaçlarına ve altyapı kurulumuna bağlı olarak farklı ortamlara dağıtmasına olanak tanır.
ile ilgili diğer yeni sorular ve cevaplar Dağıtılmış işleme ve bileşenler:
- TFX'teki Evaluator bileşeninin amacı nedir?
- Trainer bileşeni tarafından oluşturulan iki tür SavedModel nedir?
- Transform bileşeni, eğitim ve sunum ortamları arasında tutarlılığı nasıl sağlar?
- Apache Beam'in TFX çerçevesindeki rolü nedir?