Dalam artikel ini, Anda belajar menyebarkan model Anda ke titik akhir online untuk digunakan dalam inferensi real time. Anda mulai dengan menyebarkan model di komputer lokal Anda untuk men-debug kesalahan apa pun. Kemudian, Anda menyebarkan dan menguji model di Azure, melihat log penyebaran, dan memantau perjanjian tingkat layanan (SLA). Pada akhir artikel ini, Anda akan memiliki titik akhir HTTPS/REST yang dapat diskalakan yang dapat Anda gunakan untuk inferensi real time.
Titik akhir online adalah titik akhir yang digunakan untuk inferensi real time. Ada dua jenis titik akhir online: titik akhir online terkelola dan titik akhir online Kubernetes. Untuk informasi selengkapnya tentang titik akhir dan perbedaan antara titik akhir online terkelola dan titik akhir online Kubernetes, lihat Apa itu titik akhir Azure Pembelajaran Mesin?
Titik akhir online terkelola membantu menyebarkan model pembelajaran mesin Anda secara turnkey. Titik akhir online terkelola bekerja dengan mesin CPU dan GPU yang kuat di Azure dengan cara yang dapat diskalakan dan dikelola sepenuhnya. Titik akhir online yang dikelola menangani penyajian, penskalaan, pengamanan, dan pemantauan model Anda, membebaskan Anda dari overhead pengaturan dan pengelolaan infrastruktur yang mendasarinya.
Contoh utama dalam dokumen ini menggunakan titik akhir online terkelola untuk penyebaran. Untuk menggunakan Kubernetes, lihat catatan dalam dokumen ini yang sebaris dengan diskusi titik akhir online terkelola.
Contoh CLI dalam artikel ini mengasumsikan bahwa Anda menggunakan shell Bash (atau kompatibel). Misalnya, dari sistem Linux atau Subsistem Windows untuk Linux.
Kontrol akses berbasis peran Azure (Azure RBAC) digunakan untuk memberikan akses ke operasi di Azure Machine Learning. Untuk melakukan langkah-langkah dalam artikel ini, akun pengguna Anda harus ditetapkan sebagaipemilik atau kontributor untuk ruang kerja Azure Machine Learning, atau peran khusus yang memungkinkan Microsoft.MachineLearningServices/workspaces/onlineEndpoints/*. Jika Anda menggunakan studio untuk membuat/mengelola titik akhir/penyebaran online, Anda memerlukan izin tambahan "Microsoft.Resources/deployments/write" dari pemilik grup sumber daya. Untuk informasi selengkapnya, lihat Mengelola akses ke ruang kerja Azure Machine Learning.
(Opsional) Untuk menerapkan secara lokal, Anda harus memasang Docker Engine di komputer lokal Anda. Kami sangat merekomendasikan opsi ini, jadi lebih mudah untuk menghapus masalah.
Kontrol akses berbasis peran Azure (Azure RBAC) digunakan untuk memberikan akses ke operasi di Azure Machine Learning. Untuk melakukan langkah-langkah dalam artikel ini, akun pengguna Anda harus ditetapkan sebagaipemilik atau kontributor untuk ruang kerja Azure Machine Learning, atau peran khusus yang memungkinkan Microsoft.MachineLearningServices/workspaces/onlineEndpoints/*. Untuk informasi selengkapnya, lihat Mengelola akses ke ruang kerja Azure Machine Learning.
(Opsional) Untuk menerapkan secara lokal, Anda harus memasang Docker Engine di komputer lokal Anda. Kami sangat merekomendasikan opsi ini, jadi lebih mudah untuk menghapus masalah.
Sebelum mengikuti langkah-langkah dalam artikel ini, pastikan Anda memiliki prasyarat berikut:
Ruang kerja Azure Pembelajaran Mesin dan instans komputasi. Jika Anda tidak memiliki sumber daya ini dan ingin membuatnya, gunakan langkah-langkah di artikel Mulai Cepat: Membuat sumber daya ruang kerja.
Kontrol akses berbasis peran Azure (Azure RBAC) digunakan untuk memberikan akses ke operasi di Azure Machine Learning. Untuk melakukan langkah-langkah dalam artikel ini, akun pengguna Anda harus ditetapkan sebagaipemilik atau kontributor untuk ruang kerja Azure Machine Learning, atau peran khusus yang memungkinkan Microsoft.MachineLearningServices/workspaces/onlineEndpoints/*. Untuk informasi selengkapnya, lihat Mengelola akses ke ruang kerja Azure Machine Learning.
Catatan
Meskipun ekstensi Azure CLI dan CLI untuk pembelajaran mesin digunakan dalam langkah-langkah ini, ekstensi tersebut bukan fokus utama. mereka digunakan lebih sebagai utilitas, meneruskan templat ke Azure dan memeriksa status penyebaran templat.
Sebelum mengikuti langkah-langkah dalam artikel ini, pastikan Anda memiliki prasyarat berikut:
Contoh CLI dalam artikel ini mengasumsikan bahwa Anda menggunakan shell Bash (atau kompatibel). Misalnya, dari sistem Linux atau Subsistem Windows untuk Linux.
Kontrol akses berbasis peran Azure (Azure RBAC) digunakan untuk memberikan akses ke operasi di Azure Machine Learning. Untuk melakukan langkah-langkah dalam artikel ini, akun pengguna Anda harus ditetapkan sebagaipemilik atau kontributor untuk ruang kerja Azure Machine Learning, atau peran khusus yang memungkinkan Microsoft.MachineLearningServices/workspaces/onlineEndpoints/*. Untuk informasi selengkapnya, lihat Mengelola akses ke ruang kerja Azure Machine Learning.
Pastikan Anda memiliki cukup kuota komputer virtual (VM) yang dialokasikan untuk penyebaran. Azure Pembelajaran Mesin mencadangkan 20% sumber daya komputasi Anda untuk melakukan peningkatan pada beberapa SKU VM. Misalnya, jika Anda meminta 10 instans dalam penyebaran, Anda harus memiliki kuota untuk 12 untuk setiap jumlah inti untuk SKU VM. Kegagalan untuk memperhitungkan sumber daya komputasi tambahan menghasilkan kesalahan. Ada beberapa SKU VM yang dikecualikan dari reservasi kuota tambahan. Untuk informasi selengkapnya tentang alokasi kuota, lihat alokasi kuota komputer virtual untuk penyebaran.
Atau, Anda dapat menggunakan kuota dari kumpulan kuota bersama Azure Pembelajaran Mesin untuk waktu yang terbatas. Azure Pembelajaran Mesin menyediakan kumpulan kuota bersama tempat pengguna di berbagai wilayah dapat mengakses kuota untuk melakukan pengujian dalam waktu terbatas, tergantung pada ketersediaan.
Saat Anda menggunakan studio untuk menyebarkan model Llama-2, Phi, Nemotron, Mistral, Dolly, dan Deci-DeciLM dari katalog model ke titik akhir online terkelola, Azure Pembelajaran Mesin memungkinkan Anda mengakses kumpulan kuota bersamanya untuk waktu yang singkat sehingga Anda dapat melakukan pengujian. Untuk informasi selengkapnya tentang kumpulan kuota bersama, lihat Kuota bersama Azure Pembelajaran Mesin.
Jika belum mengatur default untuk Azure CLI, simpan pengaturan default Anda. Untuk menghindari melewati nilai untuk langganan, ruang kerja, dan grup sumber daya Anda beberapa kali, jalankan kode ini:
az account set --subscription <subscription ID>
az configure --defaults workspace=<Azure Machine Learning workspace name> group=<resource group>
git clone --depth 1 https://github.com/Azure/azureml-examples
cd azureml-examples
cd cli
Tip
Gunakan --depth 1 untuk mengkloning hanya penerapan terbaru ke repositori, yang mengurangi waktu untuk menyelesaikan operasi.
Perintah dalam tutorial ini ada di file deploy-local-endpoint.sh dan deploy-managed-online-endpoint.sh di cli direktori, dan file konfigurasi YAML berada di endpoints/online/managed/sample/ subdirektori.
Catatan
File konfigurasi YAML untuk titik akhir online Kubernetes berada di subdirektori endpoints/online/kubernetes/ .
Mengkloning repositori contoh
Untuk menjalankan contoh pelatihan, pertama-tama klon repositori contoh (azureml-examples) dan ubah menjadi azureml-examples/sdk/python/endpoints/online/managed direktori:
git clone --depth 1 https://github.com/Azure/azureml-examples
cd azureml-examples/sdk/python/endpoints/online/managed
Tip
Gunakan --depth 1 untuk mengkloning hanya penerapan terbaru ke repositori, yang mengurangi waktu untuk menyelesaikan operasi.
Ruang kerja adalah sumber daya tingkat teratas untuk Azure Machine Learning, menyediakan tempat terpusat untuk bekerja dengan semua artefak yang Anda buat saat Anda menggunakan Azure Machine Learning. Di bagian ini, Anda tersambung ke ruang kerja tempat Anda akan melakukan tugas penyebaran. Untuk mengikutinya, buka buku catatan Anda online-endpoints-simple-deployment.ipynb .
Impor pustaka yang diperlukan:
# import required libraries
from azure.ai.ml import MLClient
from azure.ai.ml.entities import (
ManagedOnlineEndpoint,
ManagedOnlineDeployment,
Model,
Environment,
CodeConfiguration,
)
from azure.identity import DefaultAzureCredential
Catatan
Jika Anda menggunakan titik akhir online Kubernetes, impor KubernetesOnlineEndpoint kelas dan KubernetesOnlineDeployment dari azure.ai.ml.entities pustaka.
Konfigurasikan detail ruang kerja dan dapatkan handel ke ruang kerja:
Untuk menyambungkan ke ruang kerja, Anda memerlukan parameter pengidentifikasi - langganan, grup sumber daya, dan nama ruang kerja. Anda menggunakan detail ini di MLClient dari azure.ai.ml untuk mendapatkan handel ke ruang kerja Azure Pembelajaran Mesin yang diperlukan. Contoh ini menggunakan autentikasi Azure default.
# enter details of your Azure Machine Learning workspace
subscription_id = "<SUBSCRIPTION_ID>"
resource_group = "<RESOURCE_GROUP>"
workspace = "<AZUREML_WORKSPACE_NAME>"
# get a handle to the workspace
ml_client = MLClient(
DefaultAzureCredential(), subscription_id, resource_group, workspace
)
Jika Anda telah menginstal Git di komputer lokal, Anda dapat mengikuti instruksi untuk mengkloning repositori contoh. Jika tidak, ikuti instruksi untuk mengunduh file dari repositori contoh.
git clone --depth 1 https://github.com/Azure/azureml-examples
cd azureml-examples/cli/endpoints/online/model-1
Tip
Gunakan --depth 1 untuk mengkloning hanya penerapan terbaru ke repositori, yang mengurangi waktu untuk menyelesaikan operasi.
Mengunduh file dari repositori contoh
Jika Anda mengkloning repositori contoh, komputer lokal Anda sudah memiliki salinan file untuk contoh ini, dan Anda dapat melompat ke bagian berikutnya. Jika Anda tidak mengkloning repositori, Anda dapat mengunduhnya ke komputer lokal Anda.
Buka tombol <> Kode di halaman, lalu pilih Unduh ZIP dari tab Lokal .
Temukan folder /cli/endpoints/online/model-1/model dan file /cli/endpoints/online/model-1/onlinescoring/score.py.
Atur variabel lingkungan
Atur variabel lingkungan berikut, karena digunakan dalam contoh dalam artikel ini. Ganti nilai dengan ID langganan Azure Anda, wilayah Azure tempat ruang kerja Anda berada, grup sumber daya yang berisi ruang kerja, dan nama ruang kerja:
export SUBSCRIPTION_ID="your Azure subscription ID"
export LOCATION="Azure region where your workspace is located"
export RESOURCE_GROUP="Azure resource group that contains your workspace"
export WORKSPACE="Azure Machine Learning workspace name"
Beberapa contoh templat mengharuskan Anda mengunggah file ke penyimpanan Azure Blob untuk ruang kerja Anda. Langkah-langkah berikut mengkueri ruang kerja dan menyimpan informasi ini dalam variabel lingkungan yang digunakan dalam contoh:
git clone --depth 1 https://github.com/Azure/azureml-examples
cd azureml-examples
Tip
Gunakan --depth 1 untuk mengkloning hanya penerapan terbaru ke repositori, yang mengurangi waktu untuk menyelesaikan operasi.
Tentukan titik akhir
Untuk menentukan titik akhir online, tentukan nama titik akhir dan mode autentikasi. Untuk informasi selengkapnya tentang titik akhir online terkelola, lihat Titik akhir online.
Untuk mengatur nama titik akhir Anda, jalankan perintah berikut. Ganti YOUR_ENDPOINT_NAME dengan nama yang unik di wilayah Azure. Untuk informasi selengkapnya tentang aturan penamaan, lihat batas titik akhir.
Referensi untuk format YAML titik akhir dijelaskan dalam tabel berikut. Untuk mempelajari cara menentukan atribut ini, lihat referensi YAML titik akhir online. Untuk informasi tentang batas yang terkait dengan titik akhir terkelola, lihat batasan untuk titik akhir online.
Kunci
Deskripsi
$schema
(Optional) Skema YAML. Untuk melihat semua opsi yang tersedia dalam file YAML, Anda dapat melihat skema dalam cuplikan kode sebelumnya di browser.
name
Nama titik akhir.
auth_mode
Gunakan key untuk autentikasi berbasis kunci. Gunakan aml_token untuk autentikasi berbasis token Azure Machine Learning. Gunakan aad_token untuk autentikasi berbasis token Microsoft Entra (pratinjau). Untuk informasi selengkapnya tentang mengautentikasi, lihat Mengautentikasi klien untuk titik akhir online.
Konfigurasikan titik akhir
Pertama-tama tentukan nama titik akhir online, lalu konfigurasikan titik akhir.
Nama titik akhir Anda harus unik di wilayah Azure. Untuk informasi selengkapnya tentang aturan penamaan, lihat batas titik akhir.
# Define an endpoint name
endpoint_name = "my-endpoint"
# Example way to define a random name
import datetime
endpoint_name = "endpt-" + datetime.datetime.now().strftime("%m%d%H%M%f")
# create an online endpoint
endpoint = ManagedOnlineEndpoint(
name = endpoint_name,
description="this is a sample endpoint",
auth_mode="key"
)
Kode sebelumnya menggunakan key untuk autentikasi berbasis kunci. Untuk menggunakan autentikasi berbasis token Azure Pembelajaran Mesin, gunakan aml_token. Untuk menggunakan autentikasi berbasis token Microsoft Entra (pratinjau), gunakan aad_token. Untuk informasi selengkapnya tentang mengautentikasi, lihat Mengautentikasi klien untuk titik akhir online.
Konfigurasikan titik akhir
Saat menyebarkan ke Azure dari studio, Anda akan membuat titik akhir dan penyebaran untuk ditambahkan ke dalamnya. Pada saat itu, Anda akan diminta untuk memberikan nama untuk titik akhir dan penyebaran.
Mengatur nama titik akhir
Untuk mengatur nama titik akhir Anda, jalankan perintah berikut. Ganti YOUR_ENDPOINT_NAME dengan nama yang unik di wilayah Azure. Untuk informasi selengkapnya tentang aturan penamaan, lihat batas titik akhir.
Penyebaran adalah kumpulan sumber daya yang diperlukan untuk menghosting model yang melakukan inferensi aktual. Untuk contoh ini, Anda menyebarkan model scikit-learn yang melakukan regresi dan menggunakan skrip penilaian score.py untuk menjalankan model berdasarkan permintaan input tertentu.
Untuk mempelajari atribut utama penyebaran, lihat Penyebaran online.
Mengonfigurasi penyebaran
Konfigurasi penyebaran Anda menggunakan lokasi model yang ingin Anda sebarkan.
Cuplikan berikut menunjukkan file titik akhir/online/terkelola/sampel/blue-deployment.yml , dengan semua input yang diperlukan untuk mengonfigurasi penyebaran:
model - menentukan properti model sebaris, menggunakan path (tempat mengunggah file). CLI secara otomatis mengunggah file model dan mendaftarkan model dengan nama yang dibuat secara otomatis.
environment - menggunakan definisi sebaris yang mencakup tempat untuk mengunggah file, CLI secara otomatis mengunggah conda.yaml file dan mendaftarkan lingkungan. Kemudian, untuk membangun lingkungan, penyebaran menggunakan image (dalam contoh ini, itu mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latest) untuk gambar dasar, dan conda_file dependensi diinstal di atas gambar dasar.
code_configuration - selama penyebaran, file lokal seperti sumber Python untuk model penilaian, diunggah dari lingkungan pengembangan.
Untuk menggunakan titik akhir Kubernetes alih-alih titik akhir online terkelola sebagai target komputasi:
Buat dan lampirkan kluster AKS sebagai target komputasi ke ruang kerja Azure Machine Learning menggunakan Azure Machine Learning studio.
Gunakan YAML titik akhir untuk menargetkan Kubernetes, bukan YAML titik akhir terkelola. Anda perlu mengedit YAML untuk mengubah nilai compute menjadi nama target komputasi terdaftar Anda. Anda dapat menggunakan deployment.yaml ini yang memiliki properti tambahan yang berlaku untuk penyebaran Kubernetes.
Semua perintah yang digunakan dalam artikel ini untuk titik akhir online terkelola juga berlaku untuk titik akhir Kubernetes, kecuali untuk kemampuan berikut yang tidak berlaku untuk titik akhir Kube:
Model - menentukan properti model sebaris, menggunakan path (tempat mengunggah file). SDK secara otomatis mengunggah file model dan mendaftarkan model dengan nama yang dibuat secara otomatis.
Environment - menggunakan definisi sebaris yang mencakup tempat untuk mengunggah file, SDK secara otomatis mengunggah conda.yaml file dan mendaftarkan lingkungan. Kemudian, untuk membangun lingkungan, penyebaran menggunakan image (dalam contoh ini, itu mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latest) untuk gambar dasar, dan conda_file dependensi diinstal di atas gambar dasar.
CodeConfiguration - selama penyebaran, file lokal seperti sumber Python untuk model penilaian, diunggah dari lingkungan pengembangan.
Untuk informasi selengkapnya tentang definisi penyebaran online, lihat Kelas OnlineDeployment.
Mengonfigurasi penyebaran
Saat menyebarkan ke Azure, Anda akan membuat titik akhir dan penyebaran untuk ditambahkan ke dalamnya. Pada saat itu, Anda akan diminta untuk memberikan nama untuk titik akhir dan penyebaran.
import os
import logging
import json
import numpy
import joblib
def init():
"""
This function is called when the container is initialized/started, typically after create/update of the deployment.
You can write the logic here to perform init operations like caching the model in memory
"""
global model
# AZUREML_MODEL_DIR is an environment variable created during deployment.
# It is the path to the model folder (./azureml-models/$MODEL_NAME/$VERSION)
# Please provide your model's folder name if there is one
model_path = os.path.join(
os.getenv("AZUREML_MODEL_DIR"), "model/sklearn_regression_model.pkl"
)
# deserialize the model file back into a sklearn model
model = joblib.load(model_path)
logging.info("Init complete")
def run(raw_data):
"""
This function is called for every invocation of the endpoint to perform the actual scoring/prediction.
In the example we extract the data from the json input and call the scikit-learn model's predict()
method and return the result back
"""
logging.info("model 1: request received")
data = json.loads(raw_data)["data"]
data = numpy.array(data)
result = model.predict(data)
logging.info("Request processed")
return result.tolist()
Fungsi init() ini dipanggil saat kontainer diinisialisasi/dimulai. Inisialisasi ini biasanya terjadi tak lama setelah penyebaran dibuat atau diperbarui. Fungsi ini init adalah tempat untuk menulis logika untuk operasi inisialisasi global seperti penembolokan model dalam memori (seperti yang ditunjukkan dalam file score.py ini).
Fungsi run() ini dipanggil setiap kali titik akhir dipanggil, dan melakukan penilaian dan prediksi aktual. Dalam file score.py ini, run() fungsi mengekstrak data dari input JSON, memanggil metode model predict() scikit-learn, lalu mengembalikan hasil prediksi.
Menyebarkan dan men-debug secara lokal dengan menggunakan titik akhir lokal
Kami sangat menyarankan Agar Anda menguji-menjalankan titik akhir Anda secara lokal untuk memvalidasi dan men-debug kode dan konfigurasi Anda sebelum Anda menyebarkan ke Azure. Azure CLI dan Python SDK mendukung titik akhir dan penyebaran lokal, sementara azure Pembelajaran Mesin studio dan templat ARM tidak.
Untuk menyebarkan secara lokal, Docker Engine harus diinstal dan berjalan. Mesin Docker biasanya dimulai ketika komputer dimulai. Jika tidak, Anda dapat memecahkan masalah Docker Engine.
Tip
Anda dapat menggunakan paket Python server HTTP inferensi Azure Pembelajaran Mesin untuk men-debug skrip penilaian Anda secara lokal tanpa Docker Engine. Penelusuran kesalahan dengan server inferensi membantu Anda men-debug skrip penilaian sebelum menyebarkan ke titik akhir lokal sehingga Anda dapat men-debug tanpa terpengaruh oleh konfigurasi kontainer penyebaran.
Untuk informasi selengkapnya tentang penelusuran kesalahan titik akhir online secara lokal sebelum menyebarkan ke Azure, lihat Penelusuran kesalahan titik akhir online.
Menyebarkan model secara lokal
Pertama-tama buat titik akhir. Secara opsional, untuk titik akhir lokal, Anda dapat melewati langkah ini dan langsung membuat penyebaran (langkah berikutnya), yang pada gilirannya akan membuat metadata yang diperlukan. Menyebarkan model secara lokal berguna untuk tujuan pengembangan dan pengujian.
Panggil titik akhir untuk menilai model dengan menggunakan invoke perintah dan meneruskan parameter kueri yang disimpan dalam file JSON:
az ml online-endpoint invoke --local --name $ENDPOINT_NAME --request-file endpoints/online/model-1/sample-request.json
Jika Anda ingin menggunakan klien REST (seperti curl), Anda harus memiliki URI penilaian. Untuk mendapatkan penilaian URI, jalankanaz ml online-endpoint show --local -n $ENDPOINT_NAME. Dalam data yang dikembalikan, temukan atribut scoring_uri.
Panggil titik akhir untuk menilai model dengan menggunakan invoke perintah dan meneruskan parameter kueri yang disimpan dalam file JSON.
Jika Anda ingin menggunakan klien REST (seperti curl), Anda harus memiliki URI penilaian. Untuk mendapatkan URI penilaian, jalankan kode berikut. Dalam data yang dikembalikan, temukan atribut scoring_uri.
Studio tidak mendukung titik akhir lokal. Lihat tab Azure CLI atau Python untuk langkah-langkah menguji titik akhir secara lokal.
Templat tidak mendukung titik akhir lokal. Lihat tab Azure CLI atau Python untuk langkah-langkah menguji titik akhir secara lokal.
Menyebarkan titik akhir online Anda ke Azure
Selanjutnya, sebarkan titik akhir online Anda ke Azure. Sebagai praktik terbaik untuk produksi, kami sarankan Anda mendaftarkan model dan lingkungan yang akan Anda gunakan dalam penyebaran Anda.
Mendaftarkan model dan lingkungan Anda
Kami menyarankan agar Anda mendaftarkan model dan lingkungan sebelum penyebaran ke Azure sehingga Anda dapat menentukan nama dan versi terdaftar mereka selama penyebaran. Mendaftarkan aset memungkinkan Anda menggunakannya kembali tanpa perlu mengunggahnya setiap kali Anda membuat penyebaran, sehingga meningkatkan reproduksi dan keterlacakan.
Catatan
Tidak seperti penyebaran ke Azure, penyebaran lokal tidak mendukung penggunaan model dan lingkungan terdaftar. Sebaliknya, penyebaran lokal menggunakan file model lokal dan menggunakan lingkungan hanya dengan file lokal.
Untuk penyebaran ke Azure, Anda dapat menggunakan aset lokal atau terdaftar (model dan lingkungan). Di bagian artikel ini, penyebaran ke Azure menggunakan aset terdaftar, tetapi Anda memiliki opsi untuk menggunakan aset lokal sebagai gantinya. Untuk contoh konfigurasi penyebaran yang mengunggah file lokal yang akan digunakan untuk penyebaran lokal, lihat Mengonfigurasi penyebaran.
Untuk mendaftarkan model dan lingkungan, gunakan formulir model: azureml:my-model:1 atau environment: azureml:my-env:1.
Untuk pendaftaran, Anda dapat mengekstrak definisi YAML dari model dan environment ke file YAML terpisah dan menggunakan perintah az ml model create dan az ml environment create. Untuk mempelajari perintah ini lebih lanjut, jalankan az ml model create -h dan az ml environment create -h.
from azure.ai.ml.entities import Model
from azure.ai.ml.constants import AssetTypes
file_model = Model(
path="../../model-1/model/",
type=AssetTypes.CUSTOM_MODEL,
name="my-model",
description="Model created from local file.",
)
ml_client.models.create_or_update(file_model)
Daftarkan lingkungan:
from azure.ai.ml.entities import Environment
env_docker_conda = Environment(
image="mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04",
conda_file="../../model-1/environment/conda.yaml",
name="my-env",
description="Environment created from a Docker image plus Conda environment.",
)
ml_client.environments.create_or_update(env_docker_conda)
Pendaftaran model adalah entitas logis di ruang kerja yang dapat berisi satu file model atau direktori beberapa file. Sebagai praktik terbaik untuk produksi, Anda harus mendaftarkan model dan lingkungan. Sebelum membuat titik akhir dan penyebaran dalam artikel ini, Anda harus mendaftarkan folder model yang berisi model.
Untuk mendaftarkan model contoh, ikuti langkah-langkah berikut:
Pilih Jenis yang tidak ditentukan untuk jenis Model.
Pilih Telusuri, dan pilih Telusuri folder.
\azureml-examples\cli\endpoints\online\model-1\model Pilih folder dari salinan lokal repositori yang Anda kloning atau unduh sebelumnya. Saat diminta, pilih Unggah dan tunggu hingga unggahan selesai.
Pilih Berikutnya setelah unggahan folder selesai.
Masukkan Nama yang mudah diingat untuk model tersebut. Langkah-langkah dalam artikel ini mengasumsikan model diberi nama model-1.
Pilih Berikutnya, lalu Daftar untuk menyelesaikan pendaftaran.
Di bilah navigasi kiri, pilih halaman Lingkungan .
Pilih Buat.
Pada halaman "Pengaturan", berikan nama, seperti my-env untuk lingkungan.
Untuk "Pilih sumber lingkungan" pilih Gunakan gambar docker yang ada dengan sumber conda opsional.
Pilih Berikutnya untuk masuk ke halaman "Kustomisasi".
Salin konten \azureml-examples\cli\endpoints\online\model-1\environment\conda.yaml file dari salinan lokal repositori yang Anda kloning atau unduh sebelumnya.
Tempelkan konten ke dalam kotak teks.
Pilih Berikutnya hingga Anda masuk ke halaman "Tinjau".
Pilih Buat.
Untuk informasi selengkapnya tentang membuat lingkungan di studio, lihat Membuat lingkungan.
Untuk mendaftarkan model menggunakan templat, Anda harus terlebih dahulu mengunggah file model ke penyimpanan Azure Blob. Contoh berikut menggunakan az storage blob upload-batch perintah untuk mengunggah file ke penyimpanan default untuk ruang kerja Anda:
az storage blob upload-batch -d $AZUREML_DEFAULT_CONTAINER/model -s cli/endpoints/online/model-1/model --account-name $AZURE_STORAGE_ACCOUNT
Setelah mengunggah file, gunakan templat untuk membuat pendaftaran model. Dalam contoh berikut, modelUri parameter berisi jalur ke model:
az deployment group create -g $RESOURCE_GROUP \
--template-file arm-templates/model-version.json \
--parameters \
workspaceName=$WORKSPACE \
modelAssetName="sklearn" \
modelUri="azureml://subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP/workspaces/$WORKSPACE/datastores/$AZUREML_DEFAULT_DATASTORE/paths/model/sklearn_regression_model.pkl"
Bagian dari lingkungan adalah file conda yang menentukan dependensi model yang diperlukan untuk menghosting model. Contoh berikut menunjukkan cara membaca konten file conda ke dalam variabel lingkungan:
Contoh berikut menunjukkan cara menggunakan templat untuk mendaftarkan lingkungan. Konten file conda dari langkah sebelumnya diteruskan ke templat menggunakan condaFile parameter :
Gunakan aset terdaftar (model dan lingkungan) dalam definisi penyebaran Anda. Cuplikan berikut menunjukkan endpoints/online/managed/sample/blue-deployment-with-registered-assets.yml file, dengan semua input yang diperlukan untuk mengonfigurasi penyebaran:
Saat menyebarkan dari studio, Anda akan membuat titik akhir dan penyebaran untuk ditambahkan ke dalamnya. Pada saat itu, Anda akan diminta untuk memberikan nama untuk titik akhir dan penyebaran.
Anda dapat menentukan jenis instans CPU atau GPU dan gambar dalam definisi penyebaran Anda untuk penyebaran lokal dan penyebaran ke Azure.
Definisi penyebaran Anda dalam file blue-deployment-with-registered-assets.yml menggunakan instans jenis Standard_DS3_v2 tujuan umum dan gambar mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latestDocker non-GPU . Untuk komputasi GPU, pilih SKU jenis komputasi GPU dan gambar Docker GPU.
Untuk menggunakan Kubernetes, alih-alih titik akhir terkelola, sebagai target komputasi, lihat Pengantar target komputasi Kubernetes.
Anda dapat menentukan jenis instans CPU atau GPU dan gambar dalam konfigurasi penyebaran Anda untuk penyebaran dan penyebaran lokal ke Azure.
Sebelumnya, Anda mengonfigurasi penyebaran yang menggunakan instans jenis Standard_DS3_v2 tujuan umum dan gambar mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latestDocker non-GPU . Untuk komputasi GPU, pilih SKU jenis komputasi GPU dan gambar Docker GPU.
Untuk menggunakan Kubernetes, alih-alih titik akhir terkelola, sebagai target komputasi, lihat Pengantar target komputasi Kubernetes.
Saat menggunakan studio untuk menyebarkan ke Azure, Anda akan diminta untuk menentukan properti komputasi (jenis instans dan jumlah instans) dan lingkungan yang akan digunakan untuk penyebaran Anda.
Pendaftaran lingkungan sebelumnya menentukan gambar mcr.microsoft.com/azureml/openmpi3.1.2-ubuntu18.04 docker non-GPU dengan meneruskan nilai ke environment-version.json templat menggunakan dockerImage parameter . Untuk komputasi GPU, berikan nilai untuk gambar docker GPU ke templat (menggunakan dockerImage parameter) dan berikan SKU jenis komputasi GPU ke online-endpoint-deployment.json templat (menggunakan skuName parameter ).
az ml online-endpoint create --name $ENDPOINT_NAME -f endpoints/online/managed/sample/endpoint.yml
Buat penyebaran bernama blue di bawah titik akhir.
az ml online-deployment create --name blue --endpoint $ENDPOINT_NAME -f endpoints/online/managed/sample/blue-deployment-with-registered-assets.yml --all-traffic
Pembuatan penyebaran dapat memakan waktu hingga 15 menit, tergantung pada apakah lingkungan atau gambar yang mendasar sedang dibangun untuk pertama kalinya. Penyebaran berikutnya yang menggunakan lingkungan yang sama diproses lebih cepat.
Tip
Jika Anda lebih suka tidak memblokir konsol CLI, Anda dapat menambahkan bendera --no-wait ke perintah . Namun, opsi ini akan menghentikan tampilan interaktif status penyebaran.
Penting
Bendera --all-traffic dalam kode az ml online-deployment create yang digunakan untuk membuat penyebaran mengalokasikan 100% lalu lintas titik akhir ke penyebaran biru yang baru dibuat. Meskipun ini berguna untuk tujuan pengembangan dan pengujian, untuk produksi, Anda mungkin ingin merutekan lalu lintas ke penyebaran baru melalui perintah eksplisit. Contohnya,az ml online-endpoint update -n $ENDPOINT_NAME --traffic "blue=100".
Buat titik akhir:
Dengan menggunakan yang endpoint Anda tentukan sebelumnya dan yang MLClient Anda buat sebelumnya, Anda sekarang dapat membuat titik akhir di ruang kerja. Perintah ini memulai pembuatan titik akhir dan mengembalikan respons konfirmasi saat pembuatan titik akhir berlanjut.
blue_deployment_with_registered_assets Dengan menggunakan yang Anda tentukan sebelumnya dan yang MLClient Anda buat sebelumnya, Anda sekarang dapat membuat penyebaran di ruang kerja. Perintah ini memulai pembuatan penyebaran dan mengembalikan respons konfirmasi saat pembuatan penyebaran berlanjut.
Jika Anda lebih suka tidak memblokir konsol Python, Anda dapat menambahkan bendera no_wait=True ke parameter. Namun, opsi ini akan menghentikan tampilan interaktif status penyebaran.
Membuat titik akhir dan penyebaran online terkelola
Gunakan studio untuk membuat titik akhir online terkelola secara langsung di browser Anda. Saat Anda membuat titik akhir online terkelola di studio, Anda harus menentukan penyebaran awal. Anda tidak dapat membuat titik akhir online terkelola yang kosong.
Salah satu cara untuk membuat titik akhir online terkelola di studio adalah dari halaman Model . Metode ini juga menyediakan cara mudah untuk menambahkan model ke penyebaran online terkelola yang ada. Untuk menyebarkan model bernama model-1 yang Anda daftarkan sebelumnya di bagian Daftarkan model dan lingkungan Anda:
Pilih model model-1 bernama dengan memeriksa lingkaran di samping namanya.
Pilih Sebarkan>titik akhir Real-time.
Tindakan ini membuka jendela tempat Anda dapat menentukan detail tentang titik akhir Anda.
Masukkan Nama titik akhir yang unik di wilayah Azure. Untuk informasi selengkapnya tentang aturan penamaan, lihat batas titik akhir.
Pertahankan pilihan default: Dikelola untuk jenis komputasi.
Pertahankan pilihan default: autentikasi berbasis kunci untuk jenis autentikasi. Untuk informasi selengkapnya tentang mengautentikasi, lihat Mengautentikasi klien untuk titik akhir online.
Pilih Berikutnya, hingga Anda masuk ke halaman "Penyebaran". Di sini, alihkan diagnostik Application Insights ke Diaktifkan untuk memungkinkan Anda melihat grafik aktivitas titik akhir Anda di studio nanti dan menganalisis metrik dan log menggunakan Application Insights.
Pilih Berikutnya untuk masuk ke halaman "Kode + lingkungan". Di sini, pilih opsi berikut:
Pilih skrip penilaian untuk inferensi: Telusuri dan pilih \azureml-examples\cli\endpoints\online\model-1\onlinescoring\score.py file dari repositori yang Anda kloning atau unduh sebelumnya.
Pilih bagian lingkungan : Pilih Lingkungan kustom lalu pilih lingkungan my-env:1 yang Anda buat sebelumnya.
Pilih Berikutnya, menerima default, hingga Anda diminta untuk membuat penyebaran.
Tinjau pengaturan penyebaran Anda dan pilih tombol Buat .
Atau, Anda dapat membuat titik akhir online terkelola dari halaman Titik akhir di studio.
Di bilah navigasi kiri, pilih halaman Titik Akhir.
Pilih + Buat.
Tindakan ini membuka jendela bagi Anda untuk memilih model Anda dan menentukan detail tentang titik akhir dan penyebaran Anda. Masukkan pengaturan untuk titik akhir dan penyebaran Anda seperti yang dijelaskan sebelumnya, lalu Buat penyebaran.
Cantumkan semua titik akhir di ruang kerja dalam format tabel dengan menggunakan list metode :
for endpoint in ml_client.online_endpoints.list():
print(endpoint.name)
Metode mengembalikan daftar (iterator) ManagedOnlineEndpoint entitas.
Anda bisa mendapatkan informasi lebih lanjut dengan menentukan lebih banyak parameter. Misalnya, keluarkan daftar titik akhir seperti tabel:
print("Kind\tLocation\tName")
print("-------\t----------\t------------------------")
for endpoint in ml_client.online_endpoints.list():
print(f"{endpoint.kind}\t{endpoint.location}\t{endpoint.name}")
Melihat titik akhir online terkelola
Anda dapat melihat semua titik akhir online terkelola Anda di halaman Titik akhir. Buka halaman Detail titik akhir untuk menemukan informasi penting termasuk URI titik akhir, status, alat pengujian, monitor aktivitas, log penyebaran, dan kode konsumsi sampel:
Di bilah navigasi kiri, pilih Titik Akhir. Di sini, Anda dapat melihat daftar semua titik akhir di ruang kerja.
(Opsional) Buat Filter pada Jenis komputasi untuk memperlihatkan hanya jenis komputasi Terkelola.
Pilih nama titik akhir untuk melihat halaman Detail titik akhir.
Tip
Meskipun templat berguna untuk menyebarkan sumber daya, templat tidak dapat digunakan untuk mencantumkan, menampilkan, atau memanggil sumber daya. Gunakan Azure CLI, Python SDK, atau studio untuk melakukan operasi ini. Kode berikut menggunakan Azure CLI.
show Gunakan perintah untuk menampilkan informasi di provisioning_state untuk titik akhir dan penyebaran:
az ml online-endpoint show -n $ENDPOINT_NAME
Cantumkan semua titik akhir di ruang kerja dalam format tabel dengan menggunakan list perintah :
az ml online-endpoint list --output table
Periksa status penyebaran online
Periksa log untuk melihat apakah model disebarkan tanpa kesalahan.
Untuk melihat output log dari kontainer, gunakan perintah CLI berikut:
az ml online-deployment get-logs --name blue --endpoint $ENDPOINT_NAME
Secara default, log ditarik dari kontainer server inferensi. Untuk melihat log dari kontainer penginisialisasi penyimpanan, tambahkan --container storage-initializer bendera. Untuk informasi selengkapnya tentang log penyebaran, lihat Mendapatkan log kontainer.
Anda dapat melihat output log dengan menggunakan get_logs metode :
Secara default, log ditarik dari kontainer server inferensi. Untuk melihat log dari kontainer penginisialisasi penyimpanan, tambahkan container_type="storage-initializer" opsi . Untuk informasi selengkapnya tentang log penyebaran, lihat Mendapatkan log kontainer.
Untuk melihat output log, pilih tab Log dari halaman titik akhir. Jika Anda memiliki beberapa penyebaran di titik akhir Anda, gunakan dropdown untuk memilih penyebaran yang lognya ingin Anda lihat.
Secara default, log ditarik dari server inferensi. Untuk melihat log dari kontainer penginisialisasi penyimpanan, gunakan Azure CLI atau Python SDK (lihat setiap tab untuk detailnya). Log dari kontainer penginisialisasi penyimpanan memberikan informasi tentang apakah kode dan data model berhasil diunduh ke kontainer. Untuk informasi selengkapnya tentang log penyebaran, lihat Mendapatkan log kontainer.
Tip
Meskipun templat berguna untuk menyebarkan sumber daya, templat tidak dapat digunakan untuk mencantumkan, menampilkan, atau memanggil sumber daya. Gunakan Azure CLI, Python SDK, atau studio untuk melakukan operasi ini. Kode berikut menggunakan Azure CLI.
Untuk melihat output log dari kontainer, gunakan perintah CLI berikut:
az ml online-deployment get-logs --name blue --endpoint $ENDPOINT_NAME
Secara default, log ditarik dari kontainer server inferensi. Untuk melihat log dari kontainer penginisialisasi penyimpanan, tambahkan --container storage-initializer bendera. Untuk informasi selengkapnya tentang log penyebaran, lihat Mendapatkan log kontainer.
Panggil titik akhir lokal untuk menilai data dengan model Anda
invoke Gunakan perintah atau klien REST pilihan Anda untuk memanggil titik akhir dan menilai beberapa data:
az ml online-endpoint invoke --name $ENDPOINT_NAME --request-file endpoints/online/model-1/sample-request.json
Dapatkan kunci yang digunakan untuk mengautentikasi ke titik akhir:
Tip
Anda dapat mengontrol prinsip keamanan Microsoft Entra mana yang bisa mendapatkan kunci autentikasi dengan menetapkannya ke peran kustom yang memungkinkan Microsoft.MachineLearningServices/workspaces/onlineEndpoints/token/action dan Microsoft.MachineLearningServices/workspaces/onlineEndpoints/listkeys/action. Untuk informasi selengkapnya tentang mengelola otorisasi ke ruang kerja, lihat Mengelola akses ke ruang kerja Azure Pembelajaran Mesin.
ENDPOINT_KEY=$(az ml online-endpoint get-credentials -n $ENDPOINT_NAME -o tsv --query primaryKey)
Gunakan curl untuk menilai data.
SCORING_URI=$(az ml online-endpoint show -n $ENDPOINT_NAME -o tsv --query scoring_uri)
curl --request POST "$SCORING_URI" --header "Authorization: Bearer $ENDPOINT_KEY" --header 'Content-Type: application/json' --data @endpoints/online/model-1/sample-request.json
Perhatikan bahwa Anda menggunakan show perintah dan get-credentials untuk mendapatkan kredensial autentikasi. Perhatikan juga bahwa Anda menggunakan --query bendera untuk hanya memfilter atribut yang diperlukan. Untuk mempelajari selengkapnya tentang --query bendera, lihat Kueri output perintah Azure CLI.
Untuk melihat log pemanggilan, jalankan get-logs lagi.
Menggunakan yang MLClient dibuat sebelumnya, dapatkan handel ke titik akhir. Titik akhir kemudian dapat dipanggil menggunakan invoke perintah dengan parameter berikut:
endpoint_name - Nama titik akhir
request_file - File dengan data permintaan
deployment_name - Nama penyebaran tertentu untuk diuji di titik akhir
# test the blue deployment with some sample data
ml_client.online_endpoints.invoke(
endpoint_name=endpoint_name,
deployment_name="blue",
request_file="../model-1/sample-request.json",
)
Gunakan tab Uji di halaman detail titik akhir untuk menguji penyebaran online terkelola Anda. Masukkan sampel input dan lihat hasilnya.
Pilih tab Uji di halaman detail titik akhir.
Gunakan menu tarik-turun untuk memilih penyebaran yang ingin Anda uji.
Meskipun templat berguna untuk menyebarkan sumber daya, templat tidak dapat digunakan untuk mencantumkan, menampilkan, atau memanggil sumber daya. Gunakan Azure CLI, Python SDK, atau studio untuk melakukan operasi ini. Kode berikut menggunakan Azure CLI.
invoke Gunakan perintah atau klien REST pilihan Anda untuk memanggil titik akhir dan menilai beberapa data:
az ml online-endpoint invoke --name $ENDPOINT_NAME --request-file cli/endpoints/online/model-1/sample-request.json
Jika Anda ingin memperbarui kode, model, atau lingkungan, perbarui file YAML, lalu jalankan perintah az ml online-endpoint update.
Catatan
Jika Anda memperbarui jumlah instans (untuk menskalakan penyebaran Anda) bersama dengan pengaturan model lain (seperti kode, model, atau lingkungan) dalam satu update perintah, operasi penskalaan akan dilakukan terlebih dahulu, maka pembaruan lainnya akan diterapkan. Ini adalah praktik yang baik untuk melakukan operasi ini secara terpisah di lingkungan produksi.
Untuk memahami cara kerja update:
Buka file online/model-1/onlinescoring/score.py.
Ubah baris terakhir dari fungsi init(): setelah logging.info("Init complete"), tambahkan logging.info("Updated successfully").
Simpan file.
Jalankan perintah ini:
az ml online-deployment update -n blue --endpoint $ENDPOINT_NAME -f endpoints/online/managed/sample/blue-deployment-with-registered-assets.yml
Catatan
Memperbarui dengan menggunakan YAML adalah deklaratif. Artinya, perubahan dalam YAML akan tercermin dalam sumber daya Azure Resource Manager yang mendasarinya (titik akhir & penyebaran). Pendekatan deklaratif memudahkan GitOps: Semua perubahan pada titik akhir/penyebaran (bahkan instance_count) melalui YAML.
Tip
Anda dapat menggunakan parameter pembaruan generik, seperti --set parameter , dengan perintah CLI update untuk mengambil alih atribut di YAML Anda atau untuk mengatur atribut tertentu tanpa meneruskannya dalam file YAML. Penggunaan --set untuk atribut tunggal sangat berguna dalam skenario pengembangan/pengujian. Misalnya, untuk meningkatkan skala nilai instance_count untuk penyebaran pertama, Anda dapat menggunakan bendera --set instance_count=2. Namun, karena YAML tidak diperbarui, teknik ini tidak memudahkan GitOps.
Menentukan file YAML TIDAK wajib. Misalnya, jika Anda ingin menguji pengaturan konkurensi yang berbeda untuk penyebaran tertentu, Anda dapat mencoba sesuatu seperti az ml online-deployment update -n blue -e my-endpoint --set request_settings.max_concurrent_requests_per_instance=4 environment_variables.WORKER_COUNT=4. Ini akan mempertahankan semua konfigurasi yang ada tetapi hanya memperbarui parameter yang ditentukan.
Karena Anda memodifikasi init() fungsi, yang berjalan ketika titik akhir dibuat atau diperbarui, pesan Updated successfully akan berada di log. Ambil URL dengan menjalankan:
az ml online-deployment get-logs --name blue --endpoint $ENDPOINT_NAME
Perintah update juga berfungsi dengan penyebaran lokal. Gunakan perintah az ml online-deployment update yang sama dengan bendera --local.
Jika Anda ingin memperbarui kode, model, atau lingkungan, perbarui konfigurasi, lalu jalankan MLClientmetode 's online_deployments.begin_create_or_update untuk membuat atau memperbarui penyebaran.
Catatan
Jika Anda memperbarui jumlah instans (untuk menskalakan penyebaran Anda) bersama dengan pengaturan model lain (seperti kode, model, atau lingkungan) dalam satu begin_create_or_update metode, operasi penskalaan akan dilakukan terlebih dahulu, maka pembaruan lainnya akan diterapkan. Ini adalah praktik yang baik untuk melakukan operasi ini secara terpisah di lingkungan produksi.
Untuk memahami cara kerja begin_create_or_update:
Buka file online/model-1/onlinescoring/score.py.
Ubah baris terakhir dari fungsi init(): setelah logging.info("Init complete"), tambahkan logging.info("Updated successfully").
Karena Anda memodifikasi init() fungsi, yang berjalan ketika titik akhir dibuat atau diperbarui, pesan Updated successfully akan berada di log. Ambil URL dengan menjalankan:
Metode ini begin_create_or_update juga berfungsi dengan penyebaran lokal. Gunakan metode yang sama dengan local=True bendera .
Saat ini, studio memungkinkan Anda membuat pembaruan hanya untuk jumlah instans penyebaran. Gunakan instruksi berikut untuk menskalakan penyebaran individual ke atas atau ke bawah dengan menyesuaikan jumlah instans:
Buka halaman Detail titik akhir dan temukan kartu untuk penyebaran yang ingin Anda perbarui.
Pilih ikon edit (ikon pensil) di samping nama penyebaran.
Perbarui jumlah instans yang terkait dengan penyebaran. Anda dapat memilih antara Pemanfaatan Default atau Target untuk "Jenis skala penyebaran".
Jika Anda memilih Default, Anda juga menentukan nilai numerik untuk jumlah Instans.
Jika Anda memilih Pemanfaatan Target, Anda dapat menentukan nilai yang akan digunakan untuk parameter saat menskalakan penyebaran secara otomatis.
Pilih Perbarui untuk menyelesaikan pembaruan jumlah instans untuk penyebaran Anda.
Saat ini tidak ada opsi untuk memperbarui penyebaran menggunakan templat ARM.
Catatan
Pembaruan untuk penyebaran di bagian ini adalah contoh pembaruan bergulir di tempat.
Untuk titik akhir online terkelola, penyebaran diperbarui ke konfigurasi baru dengan simpul 20% pada satu waktu. Artinya, jika penyebaran memiliki 10 simpul, 2 simpul sekali waktu diperbarui.
Untuk titik akhir online Kubernetes, sistem secara berulang membuat instans penyebaran baru dengan konfigurasi baru dan menghapus yang lama.
Untuk penggunaan produksi, Anda harus mempertimbangkan penyebaran biru-hijau, yang menawarkan alternatif yang lebih aman untuk memperbarui layanan web.
(Opsional) Konfigurasikan penskalaan otomatis
Skala otomatis secara otomatis menjalankan jumlah sumber daya yang tepat untuk menangani beban pada aplikasi Anda. Titik akhir online terkelola mendukung penskalaan otomatis melalui integrasi dengan fitur skala otomatis pemantauan Azure. Untuk mengonfigurasi penskalaan otomatis, lihat Cara menskalakan otomatis titik akhir online.
[Opsional] Pantau SLA menggunakan Azure Monitor
Untuk melihat metrik dan mengatur peringatan berdasarkan SLA Anda, selesaikan langkah-langkah yang dijelaskan di Memantau titik akhir online.
[Opsional] Integrasikan dengan Log Analytics
get-logs Perintah untuk CLI atau get_logs metode untuk SDK hanya menyediakan beberapa ratus baris log terakhir dari instans yang dipilih secara otomatis. Namun, Log Analytics menyediakan cara untuk menyimpan dan menganalisis log dalam waktu yang lama. Untuk informasi selengkapnya tentang menggunakan pengelogan, lihat Memantau titik akhir online.
Jika Anda tidak akan menggunakan titik akhir dan penyebaran, Anda harus menghapusnya. Dengan menghapus titik akhir, Anda juga menghapus semua penyebaran yang mendasarnya.