Platform for AI (PAI) tarafından sunulan Deep Learning Containers (DLC), dağıtık eğitim için esnek, kararlı, kullanımı kolay ve yüksek performanslı bir ortam sağlar. DataWorks, DLC görevlerini doğrudan yüklemenize ve bunları periyodik olarak çalıştırmak üzere zamanlama bağımlılıklarını yapılandırmanıza olanak tanıyan bir PAI DLC düğümü sunar.
Ön koşullar
-
DataWorks'ün Platform for AI (PAI) hizmetine erişmesi için yetkilendirmeyi tamamladınız.
Gerekli izinleri tek tıklamayla vermek için yetkilendirme sayfasına gidebilirsiniz. İlkeyle ilgili ayrıntılar için bkz. AliyunServiceRoleForDataWorksEngine. Bu tek tıklama yetkilendirmesini yalnızca Aliyundataworksfullaccess ilkesine sahip bir Alibaba Cloud hesabı veya RAM kullanıcısı yapabilir.
Bir proje dizini oluşturdunuz. Daha fazla bilgi için bkz. Proje dizini.
Bir PAI DLC düğümü oluşturdunuz. Daha fazla bilgi için bkz. İş akışında düğüm oluşturma.
Yordam
-
PAI DLC düğümü düzenleme sayfasında görev kodunu geliştirin.
Görev kodu geliştirme
İş gereksinimlerinize göre DLC görev kodunu aşağıdaki yöntemlerden biriyle yazabilirsiniz:
Mevcut görevden
Platform for AI (PAI) içinde mevcut bir DLC görevini adına göre arayın ve yükleyin. Görev yüklendikten sonra PAI DLC düğümü düzenleyicisi, görevin PAI yapılandırmasından düğüm kodunu oluşturur. Ardından bu kodu düzenleyebilirsiniz.
NotBir görevi yükleme veya oluşturma izniniz yoksa ekrandaki talimatları izleyerek gerekli izinleri verin.
Kullanılabilir görev yoksa bir tane oluşturmak için PAI konsoluna gidin. PAI DLC görevlerini çeşitli yollarla oluşturabilirsiniz. Daha fazla bilgi için bkz. Eğitim işi oluşturma, Python SDK kullanarak iş gönderme ve CLI'lar kullanarak iş gönderme.
Sıfırdan
Görev kodunu DataWorks'teki PAI DLC düğümü düzenleyicisine doğrudan yazın.
Değişkenleri ${değişken_adı} biçimini kullanarak tanımlayabilirsiniz. Ardından sağ taraftaki Scheduling Settings bölmesinde, Scheduling Parameters bölümünde bu değişkenlere değerler atayın. Bu sayede zamanlanmış çalıştırmalar için koda dinamik parametreler aktarabilirsiniz. Zamanlama parametrelerinin kullanımıyla ilgili daha fazla bilgi için bkz. Zamanlama parametrelerinin kaynakları ve ifadeleri. Aşağıdaki kod bir örnektir.
dlc submit pytorchjob \ #Submit a PyTorch job by using DLC. --name=test \ #The DLC task name. We recommend that you use a variable name or the DataWorks node name. --command='echo '\''hi'\''' \ #The command to execute. In this example, the command is echo 'hi'. --workspace_id=309801 \ #The workspace in which the task runs. --priority=1 \ #The task priority. Valid values: 1 to 9. 1 indicates the lowest priority, and 9 indicates the highest priority. --workers=1 \ #The number of task nodes. If this value is greater than 1, the task is a distributed task that can run concurrently on multiple nodes. --worker_image=<image> \ #The image path for the worker. --image_repo_username=<username> \ #The username for private image authorization. --image_repo_password=<password> \ #The password for private image authorization. --data_source_uris=oss://oss-cn-shenzhen.aliyuncs.com/::/mnt/data/:{mountType:jindo} \ #Mount an OSS data source to the specified path in the container. In this example, the mount type is jindo. --worker_spec=ecs.g6.xlarge #The node specification, which specifies the compute node type. -
PAI DLC görevini yazmayı tamamladıktan sonra düğüm görevini çalıştırın.
-
Run Configuration alanında Resource Group seçin ve yapılandırın.
Veri kaynağınızla bağlantı testinden geçmiş bir zamanlama kaynak grubu seçin. Daha fazla bilgi için bkz. Kaynak grupları oluşturma ve yönetme.
Araç çubuğunda düğüm görevini çalıştırmak için Run öğesine tıklayın.
-
Düğüm görevini düzenli aralıklarla çalıştırmak için iş gereksinimlerinize göre zamanlama ayarlarını yapılandırın. Daha fazla bilgi için bkz. Zamanlama ayarlarını yapılandırma.
Düğüm görevini yapılandırdıktan sonra düğümü dağıtmanız gerekir. Daha fazla bilgi için bkz. Düğümleri dağıtma.
Görev dağıtıldıktan sonra Operation Center'a giderek zamanlanmış görevin çalışma durumunu görüntüleyebilirsiniz. Daha fazla bilgi için bkz. Zamanlanmış görevleri görüntüleme.