Bagikan melalui


Membuat, menjalankan, dan menghapus sumber daya Azure Pembelajaran Mesin menggunakan REST

Ada beberapa cara untuk mengelola sumber daya Azure Pembelajaran Mesin Anda. Anda dapat menggunakan portal, antarmuka baris perintah, atau Python SDK. Atau, Anda dapat memilih REST API. REST API menggunakan kata kerja HTTP dengan cara standar untuk membuat, mengambil, memperbarui, dan menghapus sumber daya. REST API bekerja dengan bahasa atau alat apa pun yang dapat membuat permintaan HTTP. Struktur langsung REST sering menjadikannya pilihan yang baik dalam lingkungan pembuatan skrip dan untuk otomatisasi MLOp.

Dalam artikel ini, Anda akan mempelajari cara:

  • Mengambil token otorisasi
  • Membuat permintaan REST yang diformat dengan benar menggunakan autentikasi perwakilan layanan
  • Menggunakan permintaan GET untuk mengambil informasi tentang sumber daya hierarkis Azure Pembelajaran Mesin
  • Menggunakan permintaan PUT dan POST untuk membuat dan mengubah sumber daya
  • Menggunakan permintaan PUT untuk membuat ruang kerja Azure Pembelajaran Mesin
  • Menggunakan permintaan DELETE untuk membersihkan sumber daya

Prasyarat

Mengambil token autentikasi perwakilan layanan

Permintaan REST administratif diautentikasi dengan alur implisit OAuth2. Alur autentikasi ini menggunakan token yang disediakan oleh perwakilan layanan langganan Anda. Untuk mengambil token ini, Anda akan memerlukan:

  • ID penyewa (mengidentifikasi organisasi tempat langganan Anda berada)
  • ID klien (yang akan dikaitkan dengan token yang dibuat)
  • Rahasia klien (yang harus Anda lindungi)

Anda harus memiliki nilai-nilai ini dari respons terhadap pembuatan perwakilan layanan Anda. Mendapatkan nilai-nilai ini dibahas dalam Menyiapkan autentikasi untuk sumber daya dan alur kerja Azure Machine Learning. Jika Anda menggunakan langganan perusahaan, Anda mungkin tidak memiliki izin untuk membuat perwakilan layanan. Dalam hal ini, Anda harus menggunakan langganan pribadi gratis atau berbayar.

Untuk mengambil token:

  1. Buka jendela terminal
  2. Masukkan kode berikut di baris perintah
  3. Gantikan nilai Anda sendiri untuk <YOUR-TENANT-ID>, <YOUR-CLIENT-ID>, dan <YOUR-CLIENT-SECRET>. Sepanjang artikel ini, string yang dikelilingi oleh kurung kurawal adalah variabel yang harus Anda ganti dengan nilai Anda sendiri yang sesuai.
  4. Menjalankan perintah
curl -X POST https://login.microsoftonline.com/<YOUR-TENANT-ID>/oauth2/token \
-d "grant_type=client_credentials&resource=https%3A%2F%2Fmanagement.azure.com%2F&client_id=<YOUR-CLIENT-ID>&client_secret=<YOUR-CLIENT-SECRET>" \

Respons harus menyediakan token akses yang baik selama satu jam:

{
    "token_type": "Bearer",
    "expires_in": "3599",
    "ext_expires_in": "3599",
    "expires_on": "1578523094",
    "not_before": "1578519194",
    "resource": "https://management.azure.com/",
    "access_token": "YOUR-ACCESS-TOKEN"
}

Catat token, karena Anda akan menggunakannya untuk mengautentikasi semua permintaan administratif. Anda akan melakukannya dengan mengatur header Otorisasi di semua permintaan:

curl -h "Authorization:Bearer <YOUR-ACCESS-TOKEN>" ...more args...

Catatan

Perhatikan bahwa nilai dimulai dengan string "Bearer" termasuk satu spasi sebelum Anda menambahkan token.

Mendapatkan daftar grup sumber daya yang terkait dengan langganan Anda

Untuk mengambil daftar grup sumber daya yang terkait dengan langganan Anda, jalankan:

curl https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups?api-version=2022-04-01 -H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"

Di seluruh Azure, banyak REST API yang diterbitkan. Setiap penyedia layanan memperbarui API mereka dengan irama mereka sendiri, tetapi melakukannya tanpa merusak program yang ada. Penyedia layanan menggunakan argumen api-version untuk memastikan kompatibilitas.

Penting

Argumen api-version bervariasi dari layanan ke layanan. Untuk Machine Learning Service, misalnya, versi API saat ini adalah 2023-10-01. Untuk menemukan versi API untuk layanan Azure lain, lihat Referensi Azure REST API untuk layanan tertentu.

Semua panggilan REST harus mengatur argumen api-version ke nilai yang diharapkan. Anda dapat mengandalkan sintaksis dan semantik dari versi yang ditentukan bahkan ketika API terus berkembang. Jika Anda mengirim permintaan ke penyedia tanpa argumen api-version, respons akan berisi daftar nilai yang didukung yang dapat dibaca manusia.

Panggilan di atas akan menghasilkan respons JSON yang dipadatkan dari formulir:

{
    "value": [
        {
            "id": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourceGroups/RG1",
            "name": "RG1",
            "type": "Microsoft.Resources/resourceGroups",
            "location": "westus2",
            "properties": {
                "provisioningState": "Succeeded"
            }
        },
        {
            "id": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourceGroups/RG2",
            "name": "RG2",
            "type": "Microsoft.Resources/resourceGroups",
            "location": "eastus",
            "properties": {
                "provisioningState": "Succeeded"
            }
        }
    ]
}

Menelusuri ruang kerja dan sumber dayanya

Untuk mengambil sekumpulan ruang kerja dalam grup sumber daya, jalankan yang berikut ini, dengan mengganti <YOUR-SUBSCRIPTION-ID>, <YOUR-RESOURCE-GROUP>, dan <YOUR-ACCESS-TOKEN>:

curl https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/providers/Microsoft.MachineLearningServices/workspaces/?api-version=2023-10-01 \
-H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"

Sekali lagi Anda akan menerima daftar JSON, kali ini berisi daftar, setiap item yang memperinci ruang kerja:

{
    "id": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourceGroups/DeepLearningResourceGroup/providers/Microsoft.MachineLearningServices/workspaces/my-workspace",
    "name": "my-workspace",
    "type": "Microsoft.MachineLearningServices/workspaces",
    "location": "centralus",
    "tags": {},
    "etag": null,
    "properties": {
        "friendlyName": "",
        "description": "",
        "creationTime": "2023-01-03T19:56:09.7588299+00:00",
        "storageAccount": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourcegroups/DeepLearningResourceGroup/providers/microsoft.storage/storageaccounts/myworkspace0275623111",
        "containerRegistry": null,
        "keyVault": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourcegroups/DeepLearningResourceGroup/providers/microsoft.keyvault/vaults/myworkspace2525649324",
        "applicationInsights": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourcegroups/DeepLearningResourceGroup/providers/microsoft.insights/components/myworkspace2053523719",
        "hbiWorkspace": false,
        "workspaceId": "cba12345-abab-abab-abab-ababab123456",
        "subscriptionState": null,
        "subscriptionStatusChangeTimeStampUtc": null,
        "discoveryUrl": "https://centralus.experiments.azureml.net/discovery"
    },
    "identity": {
        "type": "SystemAssigned",
        "principalId": "abcdef1-abab-1234-1234-abababab123456",
        "tenantId": "1fedcba-abab-1234-1234-abababab123456"
    },
    "sku": {
        "name": "Basic",
        "tier": "Basic"
    }
}

Untuk bekerja dengan sumber daya dalam ruang kerja, Anda akan beralih dari server management.azure.com umum ke server REST API khusus ke lokasi ruang kerja. Perhatikan nilai kunci discoveryUrl dalam respons JSON di atas. Jika Anda MENDAPATKAN URL tersebut, Anda akan menerima respons seperti:

{
  "api": "https://centralus.api.azureml.ms",
  "catalog": "https://catalog.cortanaanalytics.com",
  "experimentation": "https://centralus.experiments.azureml.net",
  "gallery": "https://gallery.cortanaintelligence.com/project",
  "history": "https://centralus.experiments.azureml.net",
  "hyperdrive": "https://centralus.experiments.azureml.net",
  "labeling": "https://centralus.experiments.azureml.net",
  "modelmanagement": "https://centralus.modelmanagement.azureml.net",
  "pipelines": "https://centralus.aether.ms",
  "studiocoreservices": "https://centralus.studioservice.azureml.com"
}

Nilai respons api adalah URL server yang akan Anda gunakan untuk permintaan tambahan. Untuk mencantumkan eksperimen, misalnya, kirim perintah berikut. Ganti REGIONAL-API-SERVER dengan nilai respons api (misalnya, centralus.api.azureml.ms). Ganti juga YOUR-SUBSCRIPTION-ID, YOUR-RESOURCE-GROUP, YOUR-WORKSPACE-NAME, dan YOUR-ACCESS-TOKEN seperti biasa:

curl https://<REGIONAL-API-SERVER>/history/v1.0/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.MachineLearningServices/workspaces/<YOUR-WORKSPACE-NAME>/experiments?api-version=2023-10-01 \
-H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"

Demikian pula, untuk mengambil model terdaftar di ruang kerja Anda, kirim:

curl https://<REGIONAL-API-SERVER>/modelmanagement/v1.0/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.MachineLearningServices/workspaces/<YOUR-WORKSPACE-NAME>/models?api-version=2023-10-01 \
-H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"

Perhatikan bahwa untuk mencantumkan eksperimen jalur dimulai dengan history/v1.0 saat untuk mencantumkan model, jalur dimulai dengan modelmanagement/v1.0. REST API dibagi menjadi beberapa grup operasional, masing-masing dengan jalur yang berbeda.

Luas Jalur
Artefak /rest/api/azureml
Penyimpanan Data /azure/machine-learning/how-to-access-data
Penyetelan hiperparameter hyperdrive/v1.0/
Model modelmanagement/v1.0/
Jalankan riwayat execution/v1.0/ dan history/v1.0/

Anda dapat menjelajahi REST API menggunakan pola umum:

Komponen URL Contoh
https://
REGIONAL-API-SERVER/ centralus.api.azureml.ms/
operations-path/ history/v1.0/
subscriptions/YOUR-SUBSCRIPTION-ID/ subscriptions/abcde123-abab-abab-1234-0123456789abc/
resourceGroups/YOUR-RESOURCE-GROUP/ resourceGroups/MyResourceGroup/
providers/operation-provider/ providers/Microsoft.MachineLearningServices/
provider-resource-path/ workspaces/MyWorkspace/experiments/FirstExperiment/runs/1/
operations-endpoint/ artifacts/metadata/

Membuat dan mengubah sumber daya menggunakan permintaan PUT dan POST

Selain pengambilan sumber daya dengan kata kerja DAPATKAN, REST API mendukung pembuatan semua sumber daya yang diperlukan untuk melatih, menyebarkan, dan memantau solusi ML.

Melatih dan menjalankan model ML memerlukan sumber daya komputasi. Anda bisa mencantumkan sumber daya komputasi ruang kerja dengan:

curl https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.MachineLearningServices/workspaces/<YOUR-WORKSPACE-NAME>/computes?api-version=2023-10-01 \
-H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"

Untuk membuat atau menimpa sumber daya komputasi bernama, Anda akan menggunakan permintaan PUT. Dalam contoh berikut, selain penggantian yang sekarang sudah dikenal dari YOUR-SUBSCRIPTION-ID, , YOUR-RESOURCE-GROUP, YOUR-WORKSPACE-NAMEdan YOUR-ACCESS-TOKEN, ganti YOUR-COMPUTE-NAME, dan nilai untuk location, , vmSizevmPriority, dan scaleSettings. Perintah berikut membuat Standard_D1 simpul tunggal khusus (sumber daya komputasi CPU dasar) yang akan menurunkan skala setelah 30 menit:

curl -X PUT \
  'https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/providers/Microsoft.MachineLearningServices/workspaces/<YOUR-WORKSPACE-NAME>/computes/<YOUR-COMPUTE-NAME>?api-version=2023-10-01' \
  -H 'Authorization:Bearer <YOUR-ACCESS-TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{
    "location": "eastus",
    "properties": {
        "computeType": "AmlCompute",
        "properties": {
            "vmSize": "Standard_D1",
            "vmPriority": "Dedicated",
            "scaleSettings": {
                "maxNodeCount": 1,
                "minNodeCount": 0,
                "nodeIdleTimeBeforeScaleDown": "PT30M"
            }
        }
    }
}'

Catatan

Di terminal Windows Anda mungkin harus keluar dari tanda kutip ganda saat mengirim data JSON. Artinya, teks seperti "location" menjadi \"location\".

Permintaan yang berhasil akan mendapatkan respons 201 Created, tetapi perhatikan bahwa respons ini hanya berarti bahwa proses penyediaan telah dimulai. Anda harus melakukan polling (atau menggunakan portal) untuk mengonfirmasi keberhasilan penyelesaiannya.

Membuat ruang kerja menggunakan REST

Setiap ruang kerja Azure Pembelajaran Mesin memiliki dependensi pada empat sumber daya Azure lainnya: sumber daya Azure Container Registry, Azure Key Vault, Azure Application Insights, dan akun Azure Storage. Anda tidak dapat membuat ruang kerja hingga sumber daya ini ada. Lihat referensi REST API untuk mengetahui detail pembuatan setiap sumber daya tersebut.

Untuk membuat ruang kerja, LAKUKAN panggilan yang mirip dengan yang berikut ini management.azure.com. Meskipun panggilan ini mengharuskan Anda untuk mengatur sejumlah besar variabel, itu secara struktural identik dengan panggilan lain yang telah dibahas artikel ini.

curl -X PUT \
  'https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.MachineLearningServices/workspaces/<YOUR-NEW-WORKSPACE-NAME>?api-version=2023-10-01' \
  -H 'Authorization: Bearer <YOUR-ACCESS-TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{
    "location": "AZURE-LOCATION>",
    "identity" : {
        "type" : "systemAssigned"
    },
    "properties": {
        "friendlyName" : "<YOUR-WORKSPACE-FRIENDLY-NAME>",
        "description" : "<YOUR-WORKSPACE-DESCRIPTION>",
        "containerRegistry" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.ContainerRegistry/registries/<YOUR-REGISTRY-NAME>",
        keyVault" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.Keyvault/vaults/<YOUR-KEYVAULT-NAME>",
        "applicationInsights" : "subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.insights/components/<YOUR-APPLICATION-INSIGHTS-NAME>",
        "storageAccount" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.Storage/storageAccounts/<YOUR-STORAGE-ACCOUNT-NAME>"
    }
}'

Anda harus menerima respons 202 Accepted dan, di header yang dikembalikan, URI Location. Anda bisa MENDAPATKAN URI ini untuk informasi tentang penyebaran, termasuk informasi debugging yang bermanfaat jika ada masalah dengan salah satu sumber daya dependen (misalnya, jika Anda lupa mengaktifkan akses admin pada registri kontainer).

Membuat ruang kerja menggunakan identitas terkelola yang ditetapkan pengguna

Saat membuat ruang kerja, Anda dapat menentukan identitas terkelola yang ditetapkan pengguna yang akan digunakan untuk mengakses sumber daya terkait: ACR, KeyVault, Storage, dan App Insights. Untuk membuat ruang kerja dengan identitas terkelola yang ditetapkan pengguna, gunakan isi permintaan di bawah ini.

curl -X PUT \
  'https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.MachineLearningServices/workspaces/<YOUR-NEW-WORKSPACE-NAME>?api-version=2023-10-01' \
  -H 'Authorization: Bearer <YOUR-ACCESS-TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{
    "location": "AZURE-LOCATION>",
    "identity": {
      "type": "SystemAssigned,UserAssigned",
      "userAssignedIdentities": {
        "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.ManagedIdentity/userAssignedIdentities/<YOUR-MANAGED-IDENTITY>": {}
      }
    },
    "properties": {
        "friendlyName" : "<YOUR-WORKSPACE-FRIENDLY-NAME>",
        "description" : "<YOUR-WORKSPACE-DESCRIPTION>",
        "containerRegistry" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.ContainerRegistry/registries/<YOUR-REGISTRY-NAME>",
        keyVault" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.Keyvault/vaults/<YOUR-KEYVAULT-NAME>",
        "applicationInsights" : "subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.insights/components/<YOUR-APPLICATION-INSIGHTS-NAME>",
        "storageAccount" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.Storage/storageAccounts/<YOUR-STORAGE-ACCOUNT-NAME>"
    }
}'

Membuat ruang kerja menggunakan kunci enkripsi yang dikelola pelanggan

Secara default, metadata untuk ruang kerja disimpan dalam instans Azure Cosmos DB yang dikelola Microsoft. Data ini dienkripsi menggunakan kunci terkelola Microsoft. Alih-alih menggunakan kunci yang dikelola Microsoft, Anda dapat menggunakan kunci Anda sendiri. Melakukan hal tersebut akan menciptakan set sumber daya tambahan di langganan Azure Anda untuk menyimpan data Anda.

Untuk membuat ruang kerja yang menggunakan kunci Anda untuk enkripsi, Anda perlu memenuhi prasyarat berikut:

  • Perwakilan layanan Azure Machine Learning harus memiliki akses kontributor ke langganan Azure Anda.
  • Anda harus memiliki Azure Key Vault yang sudah ada yang berisi kunci enkripsi.
  • Azure Key Vault harus ada di wilayah Azure yang sama di mana Anda akan membuat ruang kerja Azure Machine Learning.
  • Azure Key Vault harus memiliki perlindungan penghapusan sementara dan penghapusan menyeluruh yang diaktifkan untuk melindungi terhadap kehilangan data jika terjadi penghapusan yang tidak disengaja.
  • Anda harus memiliki kebijakan akses di Azure Key Vault yang memberikan akses masuk, membungkus, dan membuka akses ke aplikasi Azure Cosmos DB.

Untuk membuat ruang kerja yang menggunakan identitas terkelola yang ditetapkan pengguna dan kunci yang dikelola pelanggan untuk enkripsi, gunakan isi permintaan di bawah ini. Saat menggunakan identitas terkelola yang ditetapkan pengguna untuk ruang kerja, atur juga properti userAssignedIdentity ke ID sumber daya identitas terkelola.

curl -X PUT \
  'https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.MachineLearningServices/workspaces/<YOUR-NEW-WORKSPACE-NAME>?api-version=2023-10-01' \
  -H 'Authorization: Bearer <YOUR-ACCESS-TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{
    "location": "eastus2euap",
    "identity": {
      "type": "SystemAssigned"
    },
    "properties": {
      "friendlyName": "<YOUR-WORKSPACE-FRIENDLY-NAME>",
      "description": "<YOUR-WORKSPACE-DESCRIPTION>",
      "containerRegistry" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.ContainerRegistry/registries/<YOUR-REGISTRY-NAME>",
      "keyVault" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.Keyvault/vaults/<YOUR-KEYVAULT-NAME>",
      "applicationInsights" : "subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.insights/components/<YOUR-APPLICATION-INSIGHTS-NAME>",
      "storageAccount" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.Storage/storageAccounts/<YOUR-STORAGE-ACCOUNT-NAME>",
      "encryption": {
        "status": "Enabled",
        "identity": {
          "userAssignedIdentity": null
        },      
        "keyVaultProperties": {
           "keyVaultArmId": "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.KeyVault/vaults/<YOUR-VAULT>",
           "keyIdentifier": "https://<YOUR-VAULT>.vault.azure.net/keys/<YOUR-KEY>/<YOUR-KEY-VERSION>",
           "identityClientId": ""
        }
      },
      "hbiWorkspace": false
    }
}'

Menghapus sumber daya yang tidak lagi Anda perlukan

Beberapa, tetapi tidak semua, sumber daya mendukung kata kerja DELETE. Periksa Referensi API sebelum melakukan ke REST API untuk kasus penggunaan penghapusan. Untuk menghapus model, misalnya, Anda dapat menggunakan:

curl
  -X DELETE \
'https://<REGIONAL-API-SERVER>/modelmanagement/v1.0/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/providers/Microsoft.MachineLearningServices/workspaces/<YOUR-WORKSPACE-NAME>/models/<YOUR-MODEL-ID>?api-version=2022-05-01' \
  -H 'Authorization:Bearer <YOUR-ACCESS-TOKEN>' 

Pemecahan Masalah

Kesalahan penyedia sumber daya

Saat membuat ruang kerja Azure Machine Learning, atau sumber daya yang digunakan oleh ruang kerja, Anda mungkin menerima kesalahan yang mirip dengan pesan berikut:

  • No registered resource provider found for location {location}
  • The subscription is not registered to use namespace {resource-provider-namespace}

Sebagian besar penyedia sumber daya secara otomatis terdaftar, tetapi tidak semua. Jika Anda menerima pesan ini, Anda perlu mendaftarkan penyedia yang disebutkan.

Tabel berikut berisi daftar penyedia sumber daya yang diperlukan oleh Azure Machine Learning:

Penyedia sumber daya Mengapa dibutuhkan
Microsoft.MachineLearningServices Membuat ruang kerja Azure Machine Learning.
Microsoft.Storage Akun Azure Storage: Digunakan sebagai penyimpanan data default untuk ruang kerja.
Microsoft.ContainerRegistry Azure Container Registry digunakan oleh ruang kerja untuk membangun gambar Docker.
Microsoft.KeyVault Azure Key Vault digunakan oleh ruang kerja untuk menyimpan rahasia.
Microsoft.Notebooks Notebook terintegrasi pada instans komputasi Azure Machine Learning.
Microsoft.ContainerService Jika Anda berencana menyebarkan model terlatih ke Azure Kubernetes Services.

Jika Anda berencana menggunakan kunci yang dikelola pelanggan dengan Azure Machine Learning, maka penyedia layanan berikut harus terdaftar:

Penyedia sumber daya Mengapa dibutuhkan
Microsoft.DocumentDB Instans Azure CosmosDB yang mencatat metadata untuk ruang kerja.
Microsoft.Search Azure Search menyediakan kemampuan pengindeksan untuk ruang kerja.

Jika Anda berencana menggunakan jaringan virtual terkelola dengan Azure Pembelajaran Mesin, penyedia sumber daya Microsoft.Network harus didaftarkan. Penyedia sumber daya ini digunakan oleh ruang kerja saat membuat titik akhir privat untuk jaringan virtual terkelola.

Untuk informasi selengkapnya tentang cara mendaftarkan penyedia sumber daya, lihat Mengatasi kesalahan untuk pendaftaran penyedia sumber daya.

Memindahkan ruang kerja

Peringatan

Memindahkan ruang kerja Azure Machine Learning Anda ke langganan lain, atau memindahkan langganan yang dimiliki ke penyewa baru, tidak didukung. Melakukannya dapat menyebabkan kesalahan.

Menghapus Azure Container Registry

Ruang kerja Azure Machine Learning menggunakan Azure Container Registry (ACR) untuk beberapa operasi. Ini akan secara otomatis membuat instans ACR ketika pertama kali membutuhkannya.

Peringatan

Setelah Azure Container Registry dibuat untuk ruang kerja, jangan hapus. Melakukannya akan merusak ruang kerja Azure Pembelajaran Mesin Anda.

Langkah berikutnya