管理 Azure Machine Learning 登錄

Azure Machine Learning 實體可以分成兩大的類別:

  • 「資產」,例如模型環境元件資料集是「無關工作區」的耐久性實體。 例如,您可以用任何工作區登錄模型,然後將其部署至任何端點。
  • 「資源」,例如計算作業端點特定於工作區的暫時性實體。 例如,線上端點具有評分 URI ,其對特定工作區中的特定執行個體是唯一的。 同樣地,作業會在已知期間執行,並在每次執行產生記錄和計量。

資產適合儲存在中央存放庫,並用於不同的工作區,甚或不同的區域。 資源則是特定於工作區。

Azure Machine Learning 登錄讓您在不同的工作區中建立和使用這些資產。 登錄支援多區域複寫,以提供對資產的低延遲存取,所以您可在位於不同 Azure 區域的工作區中使用資產。 建立登錄會佈建輔助複寫所需的 Azure 資源。 首先是每個支援區域中的 Azure Blob 儲存體帳戶。 接著是啟用每個支援區域複寫的單一 Azure Container Registry。

Diagram of the relationships between assets in workspace and registry.

必要條件

遵循本文中的步驟之前,請確定您已滿足下列必要條件:

提示

如果您使用舊版的 CLI ml 延伸模組,您可能需要將它更新為最新版本,才能使用此功能。 若要更新最新版本,請使用下列命令:

az extension update -n ml

如需詳細資訊,請參閱安裝、設定和使用 CLI (v2)

準備建立登錄

繼續建立登錄前,請謹慎決定下列資訊:

選擇名稱

挑選名稱前,請考慮下列因素。

  • 登錄是為了促進組織中所有小組在所有工作區共用 ML 資產。 選擇反映共用範圍的名稱。 名稱應有助於識別群組、部門或組織。
  • 登錄名稱是組織的唯一名稱 (Microsoft Entra 租用戶)。 建議您在小組或組織名稱前面加上前置詞,並避免使用通用名稱。
  • 登錄名稱建立後即無法變更,因為這些名稱會用於程式碼中所參考的模型、環境和元件識別碼。
    • 長度可介於 2 到 32 個字元。
    • 允許英數字元、底線、連字號。 不可使用其他特殊字元。 無空格 - 登錄名稱是程式碼中可能會參考的模型、環境和元件識別碼的一部分。
    • 名稱可以包含底線或連字號,但不能以底線或連字號開頭。 請以英數字元開頭。

選擇 Azure 區域

登錄讓您跨工作區共用資產。 為此登錄會跨多個 Azure 區域複寫內容。 建立登錄時,您必須定義登錄支援的區域清單。 針對目前有工作區,及日後規劃新增工作區的所有區域建立清單。 此清單的區域很適合作為開始。 建立登錄時,您要定義主要區域和一組其他區域。 建立登錄後,您無法變更主要區域,但稍後可以更新其他區域。

檢查權限

請確定您在規劃建立登錄的訂閱或資源群組中是「擁有者」或「參與者」。 如果您沒有其中一個內建角色,請參閱本文結尾的權限章節。

建立登錄

建立 YAML 定義並命名為 registry.yml

注意

主要位置會在 YAML 檔案中列出兩次。 在下列範例中,eastus 會先列出為主要位置 (location 項目),同時也會列在 replication_locations 清單中。

name: DemoRegistry1
tags:
  description: Basic registry with one primary region and to additional regions
  foo: bar
location: eastus
replication_locations:
  - location: eastus
  - location: eastus2
  - location: westus

如需 YAML 檔案結構的詳細資訊,請參閱登錄 YAML 參考文章。

提示

您通常會在 Azure 入口網站中看到 Azure 區域的顯示名稱,例如「美國東部」,但登錄建立 YAML 的區域名稱不得有空格或小寫字母。 使用 az account list-locations -o table 尋找區域顯示名稱與可在 YAML 中指定之區域名稱對應的名稱。

執行登錄建立命令。

az ml registry create --file registry.yml

指定儲存體帳戶類型和 SKU (選擇性)

提示

只能透過 Azure CLI 指定 Azure 儲存體帳戶類型和 SKU。

Azure 儲存體提供具有不同功能和定價的數種儲存體帳戶類型。 如需詳細資訊,請參閱儲存體帳戶類型文章。 找到最符合需求的理想儲存體帳戶 SKU 後,請尋找適當的 SKU 類型值。 在 YAML 檔案中,使用您選取的 SKU 類型作為 storage_account_type 欄位的值。 此欄位在 replication_locations 清單中每個 location 的下方。

接著,決定要使用 Azure Blob 儲存體帳戶或 Azure Data Lake Storage Gen2。 若要建立 Azure Data Lake Storage Gen2,請將 storage_account_hns 設為 true。 若要建立 Azure Blob 儲存體,請將 storage_account_hns 設為 falsestorage_account_hns 欄位在 replication_locations 清單中每個 location 的下方。

注意

storage_account_hnshns 部分會參考 Azure Data Lake Storage Gen2 帳戶的階層命名空間功能。

下列範例 YAML 檔案示範此進階儲存體設定:

name: DemoRegistry2
tags:
  description: Registry with additional configuration for storage accounts
  foo: bar
location: eastus
replication_locations:
  - location: eastus
    storage_config:
      storage_account_hns: False
      storage_account_type: Standard_LRS
  - location: eastus2
    storage_config:
      storage_account_hns: False
      storage_account_type: Standard_LRS
  - location: westus
    storage_config:
      storage_account_hns: False
      storage_account_type: Standard_LRS

新增使用者至登錄

決定您是否允許使用者僅能使用登錄的資產 (模型、環境和元件),或可在登錄中使用和建立資產。 如果您不熟悉如何使用 Azure 角色型存取控制來管理權限,請參閱指派角色的步驟

允許使用者使用登錄的資產

若要使用者僅可讀取資產,請授與使用者內建的讀者角色。 如果不想使用內建角色,請建立包含下列權限的自訂角色

權限 描述
Microsoft.MachineLearningServices/registries/read 允許使用者列出登錄並取得登錄中繼資料
Microsoft.MachineLearningServices/registries/assets/read 允許使用者瀏覽資產並使用工作區中的資產

允許使用者建立並使用登錄的資產

若要使用者可讀取和建立或刪除資產,除了上述的讀取權限,也請授與下列寫入權限。

權限 描述
Microsoft.MachineLearningServices/registries/assets/write 在登錄中建立資產
Microsoft.MachineLearningServices/registries/assets/delete 在登錄中刪除資產

警告

內建的參與者擁有者角色讓使用者能建立、更新和刪除登錄。 如果您希望使用者建立並使用登錄的資產,但不要建立或更新登錄,則需要建立自訂角色。 請參閱自訂角色,了解如何從權限建立自訂角色。

允許使用者建立並管理登錄

若要使用者可建立、更新和刪除登錄,請授與他們內建的參與者擁有者角色。 如果您不想使用內建角色,請在上述讀取、建立和刪除登錄資產的權限以外,建立包含下列權限的自訂角色。

權限 描述
Microsoft.MachineLearningServices/registries/write 允許使用者建立或更新登錄
Microsoft.MachineLearningServices/registries/delete 允許使用者刪除登錄

下一步