Bicep テンプレートを使用して Azure Machine Learning ハブ ワークスペースを作成する

Microsoft Bicep テンプレートを使用して、ML Studio および AI Studio で使用する ハブ ワークスペースを作成します。 テンプレートを使用すると、調整された 1 回の操作でリソースを簡単に作成できます。 Bicep テンプレートは、デプロイに必要なリソースを定義するテキスト ドキュメントです。 デプロイ パラメーターを指定することもできます。 パラメーターは、テンプレートの使用時に入力値を指定するために使用します。

この記事で使用するテンプレートは https://github.com/Azure/azure-quickstart-templates/tree/master/quickstarts/microsoft.machinelearningservices/aistudio-basics にあります。 ソース main.bicep ファイルとコンパイル済みの Azure Resource Manager テンプレート (main.json) ファイルの両方が利用できます。 このテンプレートでは、次のリソースを作成します。

  • Azure リソース グループ (まだ存在していない場合)
  • 種類が "ハブ" の Azure Machine Learning ワークスペース
  • Azure Storage アカウント
  • Azure Key Vault
  • Azure Container Registry
  • Azure Application Insights
  • Azure AI サービス (AI Studio に必要であり、Azure Machine Learning のユース ケースでは削除される可能性があります)

前提条件

  • Azure サブスクリプション。 アカウントがない場合は、無料アカウントを作成してください。

  • GitHub リポジトリからのテンプレート ファイルのコピー。 GitHub リポジトリをローカル コンピューターに複製するには、Git を使用できます。 次のコマンドを使用してクイックスタート リポジトリをローカル マシンに複製し、aistudio-basics ディレクトリに移動します。

    git clone https://github.com/Azure/azure-quickstart-templates
    cd azure-quickstart-templates/quickstarts/microsoft.machinelearningservices/aistudio-basics
    
  • Bicep コマンドライン ツール。 Bicep コマンドライン ツールをインストールするには、Bicep CLI のインストールに関する記事を使用します。

テンプレートについて

Bicep テンプレートは次のファイルで構成されています。

ファイル 説明
main.bicep パラメーターと変数を定義するメインの Bicep ファイル。 modules サブディレクトリ内の他のモジュールにパラメーターと変数を渡します。
ai-resource.bicep Azure AI ハブ リソースを定義します。
dependent-resources.bicep Azure AI ハブの依存リソースを定義します。 Azure ストレージ アカウント、コンテナー レジストリ、キー コンテナー、Application Insights。

重要

テンプレートの例では、それによって作成される Azure リソース向けの最新の API バージョンが常に使用されるとは限りません。 テンプレートを使用する前に、最新の API バージョンを使用するように変更することをお勧めします。 各 Azure サービスには、独自の API バージョンのセットがあります。 特定のサービスの API の詳細については、Azure REST API リファレンスのサービス情報を確認してください。

AI ハブ リソースは Azure Machine Learning に基づいています。 Azure Machine Learning の最新の API バージョンについて詳しくは、Azure Machine Learning REST API リファレンスに関するページを参照してください。 この API バージョンを更新するには、そのリソースの種類の Microsoft.MachineLearningServices/<resource> エントリを見つけ、それを最新バージョンに更新します。 次の例は、2023-08-01-preview の API バージョンを使用する Azure AI ハブのエントリです。

resource aiResource 'Microsoft.MachineLearningServices/workspaces@2023-08-01-preview' = {

Azure Resource Manager テンプレート

Bicep ドメイン固有言語 (DSL) はリソースの定義に使用され、Bicep ファイルは、テンプレートのデプロイ時に、Azure Resource Manager テンプレートにコンパイルされます。 GitHub リポジトリに含まれている main.json ファイルは、コンパイル済みの Azure Resource Manager バージョンのテンプレートです。 このファイルは、Bicep コマンドライン ツールを使用して main.bicep ファイルから生成されます。 たとえば、Bicep テンプレートをデプロイすると、main.json ファイルが生成されます。 テンプレートをデプロイせず、bicep build コマンドを使用して main.json ファイルを手動で作成することもできます。

bicep build main.bicep

詳しくは、Bicep CLI に関する記事をご覧ください。

テンプレートを構成する

Bicep テンプレートを実行するには、aistudio-basics ディレクトリから次のコマンドを使用します。

  1. 新しい Azure リソース グループを作成するには、次のコマンドを使用します。 リソース グループの名前に exampleRG を置き換え、使用する Azure リージョンに eastus を置き換えます。

    az group create --name exampleRG --location eastus
    
  2. テンプレートを実行するには、次のコマンドを使用します。 myai は、リソースに使用する名前に置き換えます。 この値は、テンプレートによって作成されたリソースに一意の名前を作成するため、生成されたプレフィックスとサフィックスと共に使用されます。

    ヒント

    aiResourceName は 5 文字以下にする必要があります。 全部数字にすることと、文字 ~ ! @ # $ % ^ & * ( ) = + _ [ ] { } \ | ; : . ' " , < > / ? を使用することはできません。

    az deployment group create --resource-group exampleRG --template-file main.bicep --parameters aiResourceName=myai