O Deep Learning Containers (DLC) do Platform for AI (PAI) oferece um ambiente flexível, estável, fácil de usar e de alto desempenho para treinamento distribuído. O DataWorks disponibiliza um nó do PAI DLC que permite carregar tarefas do DLC diretamente e configurar dependências de agendamento para execução periódica.
Pré-requisitos
-
Autorize o DataWorks a acessar o Platform for AI (PAI).
Acesse a página de autorização para conceder as permissões necessárias com um único clique em. Para obter detalhes sobre a política, consulte AliyunServiceRoleForDataWorksEngine. Somente uma conta Alibaba Cloud ou um usuário RAM com a política Aliyundataworksfullaccess pode realizar essa autorização com um clique em.
Crie um diretório de projeto. Para mais informações, consulte Project directory.
Crie um nó do PAI DLC. Para mais informações, consulte Create a node in a workflow.
Procedimento
-
Na página de edição do nó do PAI DLC, desenvolva o código da tarefa.
Desenvolver o código da tarefa
Escreva o código da tarefa DLC de uma das seguintes formas, conforme suas necessidades de negócio:
A partir de uma tarefa existente
Pesquise uma tarefa DLC existente no Platform for AI (PAI) pelo nome e carregue-a. Após o carregamento, o editor de nós do PAI DLC gera o código do nó com base na configuração do PAI da tarefa. Em seguida, edite esse código.
NotaCaso não tenha permissões para carregar ou criar uma tarefa, siga as instruções na tela para conceder as permissões necessárias.
Se não houver tarefas disponíveis, acesse o PAI console para criar uma. É possível criar tarefas do PAI DLC de várias maneiras. Para mais informações, consulte Create a training job, Submit jobs by using the SDK for Python e Submit jobs by using CLIs.
Do zero
Escreva o código da tarefa diretamente no editor de nós do PAI DLC no DataWorks.
Defina variáveis usando o formato ${variable_name}. Depois, no painel Scheduling Settings à direita, atribua valores a essas variáveis na seção Scheduling Parameters. Isso permite passar parâmetros dinâmicos ao código para execuções agendadas. Para mais informações sobre como usar parâmetros de agendamento, consulte Sources and expressions of scheduling parameters. O código a seguir serve como exemplo.
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. -
Após concluir o código da tarefa do PAI DLC, execute a tarefa do nó.
-
Em Run Configuration, selecione e configure o Resource Group.
Selecione um grupo de recursos para agendamento aprovado no teste de conectividade com sua fonte de dados. Para mais informações, consulte Create and manage resource groups.
Na barra de ferramentas, clique em Run para executar a tarefa do nó.
-
Para executar a tarefa do nó regularmente, defina as configurações de agendamento conforme suas necessidades de negócio. Para mais informações, consulte Configure schedule settings.
Após configurar a tarefa do nó, implante-o. Para mais informações, consulte Deploy nodes.
Após a implantação, acesse o Operation Center para visualizar o status de execução da tarefa agendada. Para mais informações, consulte View scheduled tasks.