Управление рабочими областями Машинного обучения Azure с помощью Azure PowerShell

Используйте модуль Azure PowerShell для Машинного обучения Azure для создания рабочих областей Машинного обучения Azure и управления ими. Полный список командлетов Azure PowerShell для Машинного обучения Azure см. в справочной документации по Az.MachineLearningServices.

Вы также можете управлять рабочими областями с помощью Azure CLI, портал Azure и пакета SDK для Python либо с помощью расширения VS Code.

Предварительные требования

Вход в Azure

Войдите в подписку Azure с помощью команды Connect-AzAccount и следуйте инструкциям на экране.

Connect-AzAccount

Если вы не знаете, какое расположение нужно использовать, можно получить список доступных расположений. Получите список расположений, используя приведенный ниже пример кода, и найдите нужное расположение. В этом примере используется eastus. Сохраните расположение в переменной и используйте ее. Так вы сможете изменить расположение в одном месте.

Get-AzLocation | Select-Object -Property Location
$Location = 'eastus'

Создание группы ресурсов

Создайте группу ресурсов Azure с помощью командлета New-AzResourceGroup. Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure и управление ими.

$ResourceGroup = 'MyResourceGroup'
New-AzResourceGroup -Name $ResourceGroup -Location $Location

Создание ресурсов зависимостей

Рабочая область Машинного обучения Azure зависит от следующих ресурсов Azure:

  • Application Insights
  • Azure Key Vault
  • Учетная запись хранения Azure

Используйте следующие команды, чтобы создать эти ресурсы и получить идентификатор Resource Manager Azure для каждого из них:

Примечание

Поставщик ресурсов Microsoft.Insights должен быть зарегистрирован для подписки перед выполнением следующих команд. Это однократная регистрация. Используйте Register-AzResourceProvider -ProviderNamespace Microsoft.Insights для выполнения регистрации.

  1. Создайте экземпляр Application Insights:

    $AppInsights = 'MyAppInsights'
    New-AzApplicationInsights -Name $AppInsights -ResourceGroupName $ResourceGroup -Location $Location
    $appid = (Get-AzResource -Name $AppInsights -ResourceGroupName $ResourceGroup).ResourceId
    
    
  2. Создайте Key Vault Azure:

    Важно!

    Каждое хранилище ключей должно иметь уникальное имя. Замените MyKeyVault именем хранилища ключей в следующем примере.

    $KeyVault = 'MyKeyVault'
    New-AzKeyVault -Name $KeyVault -ResourceGroupName $ResourceGroup -Location $Location
    $kvid = (Get-AzResource -Name $KeyVault -ResourceGroupName $ResourceGroup).ResourceId
    
    
  3. Создайте учетную запись хранения Azure:

    Важно!

    У каждой учетной записи хранения должно быть уникальное имя. Замените MyStorage именем учетной записи хранения в следующем примере. Вы можете использовать для Get-AzStorageAccountNameAvailability -Name 'YourUniqueName' проверки имени перед выполнением следующего примера.

    $Storage = 'MyStorage'
    
    $storageParams = @{
      Name = $Storage
      ResourceGroupName = $ResourceGroup
      Location = $Location
      SkuName = 'Standard_LRS'
      Kind = 'StorageV2'
    }
    New-AzStorageAccount @storageParams
    
    $storeid = (Get-AzResource -Name $Storage -ResourceGroupName $ResourceGroup).ResourceId
    
    

Создание рабочей области

Примечание

Поставщик ресурсов Microsoft.MachineLearningServices должен быть зарегистрирован для вашей подписки перед выполнением следующих команд. Это однократная регистрация. Используйте Register-AzResourceProvider -ProviderNamespace Microsoft.MachineLearningServices для выполнения регистрации.

Следующая команда создает рабочую область и настраивает ее для использования служб, созданных ранее. Он также настраивает рабочую область для использования управляемого удостоверения, назначаемого системой, которое используется для доступа к этим службам. Дополнительные сведения об использовании управляемых удостоверений с Машинным обучением Azure см. в статье Настройка проверки подлинности в других службах .

$Workspace = 'MyWorkspace'
$mlWorkspaceParams = @{
  Name = $Workspace
  ResourceGroupName = $ResourceGroup
  Location = $Location
  ApplicationInsightID = $appid
  KeyVaultId = $kvid
  StorageAccountId = $storeid
  IdentityType = 'SystemAssigned'
}
New-AzMLWorkspace @mlWorkspaceParams

Получение сведений о рабочей области

Чтобы получить список рабочих областей, используйте следующую команду:

Get-AzMLWorkspace

Чтобы получить сведения о конкретной рабочей области, укажите имя и сведения о группе ресурсов:

Get-AzMLWorkspace -Name $Workspace -ResourceGroupName $ResourceGroup

Удаление рабочей области

Предупреждение

Если для рабочей области включено обратимое удаление, его можно восстановить после удаления. Если обратимое удаление не включено или выбран вариант окончательного удаления рабочей области, восстановление невозможно. Дополнительные сведения см. в разделе Восстановление удаленной рабочей области.

Чтобы удалить рабочую область, когда она больше не нужна, используйте следующую команду:

Remove-AzMLWorkspace -Name $Workspace -ResourceGroupName $ResourceGroup

Важно!

При удалении рабочей области не удаляется Application Insights, учетная запись хранения, хранилище ключей или реестр контейнеров, используемые рабочей областью.

Вы можете удалить группу ресурсов. При этом будет удалена рабочая область и все остальные ресурсы Azure из этой группы ресурсов. Чтобы удалить группу ресурсов, используйте следующую команду:

Remove-AzResourceGroup -Name $ResourceGroup

Дальнейшие действия

Чтобы проверить наличие проблем с рабочей областью, обратитесь к статье Использование диагностики для рабочей области.

Чтобы узнать, как переместить рабочую область в новую подписку Azure, обратитесь к статье Как переместить рабочую область.

Сведения о том, как поддерживать Машинное обучение Azure в актуальном состоянии с помощью последних обновлений для системы безопасности, см. в статье Управление уязвимостями.

Сведения о том, как обучить модель машинного обучения с помощью рабочей области, см. в руководстве по Машинному обучению Azure за один день .