CLI (v2) 功能存放區 YAML 架構
注意
本文件中詳述的 YAML 語法是以最新版 ML CLI v2 延伸模組的 JSON 結構描述為基礎。 此語法僅保證能與最新版的 ML CLI v2 延伸模組搭配運作。 您可以在 https://azuremlschemasprod.azureedge.net/ 找到舊版延伸模組的結構描述。
YAML 語法
機碼 | 類型 | 描述 | 允許的值 | 預設值 |
---|---|---|---|---|
$schema | 字串 | YAML 結構描述。 如果您使用 Azure 機器學習 VS Code 擴充功能來撰寫 YAML 檔案,包括檔案頂端的$schema,可讓您叫用架構和資源完成。 | ||
NAME | 字串 | 必要。 功能存放區的名稱。 | ||
compute_runtime | object | 用於具體化作業的計算運行時間組態。 | ||
compute_runtime.spark_runtime_version | 字串 | Azure 機器學習 Spark 運行時間版本。 | 3.4 | 3.4 |
offline_store | object | |||
offline_store.type | 字串 | 如果提供offline_store,則為必要 項。 離線存放區的類型。 僅支援 Data Lake Gen2 類型的記憶體。 | azure_data_lake_gen2 | |
offline_store.target | 字串 | 如果提供offline_store,則為必要 項。 datalake Gen2 記憶體 URI 的格式 /subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.Storage/storageAccounts/<account>/blobServices/default/containers/<container> 為 。 |
||
online_store | object | |||
online_store.type | 字串 | 如果提供online_store,則為必要 項。 在線商店的類型。 僅支援 redis 快取。 | redis | |
online_store.target | 字串 | 如果提供online_store,則為必要 項。 格式為 /subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.Cache/Redis/<redis-name> 的 Redis 快取 URI。 |
||
materialization_identity | object | 用於具體化作業的使用者指派受控識別。 此身分識別必須獲授與必要的角色,才能存取功能存放區服務、數據源和離線記憶體。 | ||
materialization_identity.client_id | 字串 | 使用者指派受控識別的用戶端標識碼。 | ||
materialization_identity.resource_id | 字串 | 使用者指派受控識別的資源標識碼。 | ||
materialization_identity.principal_id | 字串 | 使用者指派受控識別的主體標識碼。 | ||
description | 字串 | 功能存放區的描述。 | ||
tags | object | 功能存放區的標籤典。 | ||
display_name | 字串 | 在 Studio UI 中顯示功能存放區的名稱。 可以是資源群組內的非統一。 | ||
location | 字串 | 功能存放區的位置。 | 資源群組位置。 | |
resource_group | 字串 | 包含功能存放區的資源群組。 如果資源群組不存在,則會建立新的資源群組。 |
您可以包含其他 工作區屬性。
備註
命令az ml feature-store
可用來管理 Azure 機器學習 功能存放區工作區。
範例
範例 GitHub 存放庫中有範例可用。 以下是一些常見的範例:
YAML 基本
$schema: http://azureml/sdk-2-0/FeatureStore.json
name: mktg-feature-store
location: eastus
具有離線存放區設定的YAML
$schema: http://azureml/sdk-2-0/FeatureStore.json
name: mktg-feature-store
compute_runtime:
spark_runtime_version: 3.2
offline_store:
type: azure_data_lake_gen2
target: /subscriptions/<sub-id>/resourceGroups/<rg>/providers/Microsoft.Storage/storageAccounts/<account_name>/blobServices/default/containers/<container_name>
materialization_identity:
client_id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
resource_id: /subscriptions/<sub-id>/resourceGroups/<rg>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<uai-name>
# Many of workspace parameters will also be supported:
location: eastus
display_name: marketing feature store
tags:
foo: bar
使用 YAML 在 CLI 中設定線上商店
$schema: http://azureml/sdk-2-0/FeatureStore.json
name: mktg-feature-store
compute_runtime:
spark_runtime_version: 3.4
online_store:
type: redis
target: "/subscriptions/<sub-id>/resourceGroups/<rg>/providers/Microsoft.Cache/Redis/<redis-name>"
materialization_identity:
client_id: 00001111-aaaa-2222-bbbb-3333cccc4444
principal_id: aaaaaaaa-bbbb-cccc-1111-222222222222
resource_id: /subscriptions/<sub-id>/resourceGroups/<rg>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<uai-name>
# Many of workspace parameters will also be supported:
location: eastus
display_name: marketing feature store
tags:
foo: bar
使用 Python 在 CLI 中設定線上商店
redis_arm_id = f"/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.Cache/Redis/{redis_name}"
online_store = MaterializationStore(type="redis", target=redis_arm_id)
fs = FeatureStore(
name=featurestore_name,
location=location,
online_store=online_store,
)
# wait for feature store creation
fs_poller = ml_client.feature_stores.begin_create(fs)
# move the feature store to a YAML file
yaml_path = root_dir + "/featurestore/featurestore_with_online.yaml"
fs.dump(yaml_path)