Bagikan melalui


Menyebarkan model menggunakan Azure CLI dan Bicep

Penting

Azure AI Inference beta SDK tidak digunakan lagi dan akan dihentikan pada 30 Mei 2026. Beralih ke OPENAI/v1 API yang tersedia secara umum dengan OpenAI SDK yang stabil. Ikuti panduan migrasi untuk beralih ke OpenAI/v1, menggunakan SDK untuk bahasa pemrograman pilihan Anda.

Dalam artikel ini, Anda mempelajari cara menambahkan penyebaran model baru ke suatu titik akhir Foundry Models. Penyebaran tersedia untuk penarikan kesimpulan di sumber daya Foundry saat Anda menentukan nama penyebaran dalam permintaan Anda.

Prasyarat

Untuk menyelesaikan artikel ini, Anda memerlukan hal berikut:

  • Instal Azure CLI (versi 2.60 atau yang cognitiveservices lebih baru) dan ekstensi.

    az extension add -n cognitiveservices
    
  • Beberapa perintah dalam tutorial ini menggunakan jq alat , yang mungkin tidak diinstal pada sistem Anda. Untuk petunjuk instalasi, lihat Download jq.

  • Identifikasi informasi berikut:

    • ID langganan Azure Anda

    • Nama sumber daya Foundry Anda

    • Grup sumber daya tempat Anda menyebarkan sumber daya Foundry

Tambahkan model

Untuk menambahkan model, pertama-tama identifikasi model yang ingin Anda sebarkan. Kueri model yang tersedia sebagai berikut:

  1. Masuk ke langganan Azure Anda.

    az login
    
  2. Jika Anda memiliki lebih dari satu langganan, pilih langganan tempat sumber daya Anda berada.

    az account set --subscription $subscriptionId
    
  3. Atur variabel lingkungan berikut dengan nama sumber daya Foundry yang Anda rencanakan untuk digunakan dan grup sumber daya.

    accountName="<ai-services-resource-name>"
    resourceGroupName="<resource-group>"
    location="eastus2"
    
  4. Jika Anda belum membuat sumber daya Foundry, buatlah satu.

    az cognitiveservices account create -n $accountName -g $resourceGroupName --custom-domain $accountName --location $location --kind AIServices --sku S0
    

    Referensi: az layanan kognitif akun

  5. Periksa model mana yang tersedia untuk Anda dan di bawah SKU mana. SKU, juga dikenal sebagai jenis penyebaran, menentukan cara infrastruktur Azure memproses permintaan. Model mungkin menawarkan jenis penyebaran yang berbeda. Perintah berikut mencantumkan semua definisi model yang tersedia:

    az cognitiveservices account list-models \
        -n $accountName \
        -g $resourceGroupName \
    | jq '.[] | { name: .name, format: .format, version: .version, sku: .skus[0].name, capacity: .skus[0].capacity.default }'
    

    Output mencakup model yang tersedia dengan propertinya:

    {
      "name": "Phi-4-mini-instruct",
      "format": "Microsoft",
      "version": "1",
      "sku": "GlobalStandard",
      "capacity": 1
    }
    

    Referensi: az cognitiveservices account list-models

  6. Identifikasi model yang ingin Anda terapkan. Anda memerlukan properti name, format, version, dan sku. Properti format menunjukkan penyedia yang menawarkan model. Bergantung pada jenis penyebaran, Anda mungkin juga memerlukan kapasitas.

  7. Tambahkan penerapan model ke sumber daya. Contoh berikut menambahkan Phi-4-mini-instruct:

    az cognitiveservices account deployment create \
        -n $accountName \
        -g $resourceGroupName \
        --deployment-name Phi-4-mini-instruct \
        --model-name Phi-4-mini-instruct \
        --model-version 1 \
        --model-format Microsoft \
        --sku-capacity 1 \
        --sku-name GlobalStandard
    

    Referensi: penyebaran akun az cognitiveservices

  8. Verifikasi bahwa penyebaran berhasil diselesaikan:

    az cognitiveservices account deployment show \
        --deployment-name Phi-4-mini-instruct \
        -n $accountName \
        -g $resourceGroupName \
    | jq '.properties.provisioningState'
    

    Output harus menampilkan "Succeeded". Model siap digunakan setelah provisi selesai.

    Referensi: az cognitiveservices account list-models

Anda dapat menyebarkan model yang sama beberapa kali jika diperlukan selama berada di bawah nama penyebaran yang berbeda. Kemampuan ini berguna jika Anda ingin menguji konfigurasi yang berbeda untuk model tertentu, termasuk filter konten.

Gunakan model ini

Nota

Bagian ini identik untuk pendekatan CLI dan Bicep.

Anda dapat mengakses model yang sudah disebarkan menggunakan Titik Akhir untuk Model Foundry dari sumber daya. Saat Anda membuat permintaan, tentukan parameter model dan sisipkan nama penyebaran model yang Anda buat. Anda dapat secara terprogram mendapatkan URI untuk titik akhir inferensi dengan menggunakan kode berikut:

Titik akhir inferensi

az cognitiveservices account show  -n $accountName -g $resourceGroupName | jq '.properties.endpoints["Azure AI Model Inference API"]'

Untuk membuat permintaan ke titik akhir Model Foundry, tambahkan rute models. Misalnya: https://<resource>.services.ai.azure.com/models. Lihat referensi AZURE AI Model Inference API untuk semua operasi yang didukung.

Kunci inferensi

az cognitiveservices account keys list  -n $accountName -g $resourceGroupName

Mengelola penempatan

Anda dapat melihat semua penyebaran yang tersedia menggunakan CLI:

  1. Jalankan perintah berikut untuk melihat semua penerapan yang aktif:

    az cognitiveservices account deployment list -n $accountName -g $resourceGroupName
    

    Referensi: az cognitiveservices account deployment list

  2. Anda dapat melihat rincian dari penerapan tertentu.

    az cognitiveservices account deployment show \
        --deployment-name "Phi-4-mini-instruct" \
        -n $accountName \
        -g $resourceGroupName
    

    Referensi: az cognitiveservices account deployment show

  3. Anda dapat menghapus penerapan tertentu seperti berikut:

    az cognitiveservices account deployment delete \
        --deployment-name "Phi-4-mini-instruct" \
        -n $accountName \
        -g $resourceGroupName
    

    Referensi: az cognitiveservices account deployment delete (Perintah untuk menghapus penerapan akun layanan kognitif)

  • Instal Azure CLI.

  • Identifikasi informasi berikut:

    • ID langganan Azure Anda
  • Sumber daya Foundry Anda (sebelumnya dikenal sebagai nama sumber daya Azure AI Services)

  • Grup sumber daya di mana sumber daya Foundry disebarkan

  • Nama model, penyedia, versi, dan SKU yang ingin Anda sebarkan. Anda dapat menggunakan portal Foundry atau Azure CLI untuk menemukan informasi ini. Dalam contoh ini, Anda menyebarkan model berikut:

    • Nama model: Phi-4-mini-instruct
    • Penyedia: Microsoft
    • Versi: 1
    • Tipe penerapan: Standar global

Menyiapkan lingkungan kerja

Contoh dalam artikel ini didasarkan pada contoh kode yang terdapat dalam repositori Azure-Samples/azureai-model-inference-bicep. Untuk menjalankan perintah secara lokal tanpa harus menyalin atau menempelkan konten file, kloning repositori:

git clone https://github.com/Azure-Samples/azureai-model-inference-bicep

File untuk contoh ini ada di:

cd azureai-model-inference-bicep/infra

Izin yang diperlukan untuk berlangganan Model dari Mitra dan Komunitas

Model Foundry dari mitra dan komunitas yang tersedia untuk penyebaran (misalnya, model Cohere) memerlukan Marketplace Azure. Penyedia model menentukan persyaratan lisensi dan menetapkan harga untuk penggunaan model mereka menggunakan Azure Marketplace.

Saat menyebarkan model pihak ketiga, pastikan Anda memiliki izin berikut di akun Anda:

  • Pada langganan Azure:
    • Microsoft.MarketplaceOrdering/agreements/offers/plans/read
    • Microsoft.MarketplaceOrdering/agreements/offers/plans/sign/action
    • Microsoft.MarketplaceOrdering/offerTypes/publishers/offers/plans/agreements/read
    • Microsoft.Marketplace/offerTypes/publishers/offers/plans/agreements/read
    • Microsoft.SaaS/register/action
  • Pada grup sumber daya—untuk membuat dan menggunakan sumber daya SaaS:
    • Microsoft.SaaS/resources/read
    • Microsoft.SaaS/resources/write

Peran bawaan Pemilik dan Kontributor pada langganan Azure menyertakan izin ini. Jika Anda tidak memiliki izin yang diperlukan, minta administrator langganan untuk menetapkan peran Kontributor kepada Anda, atau buat peran kustom yang menyertakan tindakan yang tercantum.

Untuk memverifikasi izin Anda, buka portal Microsoft Azure, buka langganan Anda, pilih Kontrol akses (IAM)>Periksa akses, dan tinjau peran yang ditetapkan.

Petunjuk / Saran

Microsoft.SaaS/register/action adalah pendaftaran satu kali penyedia sumber daya SaaS pada langganan. Setelah pendaftaran, tidak perlu diulang untuk setiap penyebaran.

Menambahkan model

  1. Gunakan templat ai-services-deployment-template.bicep untuk mendeskripsikan penerapan model:

    ai-services-deployment-template.bicep

    @description('Name of the Azure AI services account')
    param accountName string
    
    @description('Name of the model to deploy')
    param modelName string
    
    @description('Version of the model to deploy')
    param modelVersion string
    
    @allowed([
      'AI21 Labs'
      'Cohere'
      'Core42'
      'DeepSeek'
      'xAI'
      'Meta'
      'Microsoft'
      'Mistral AI'
      'OpenAI'
    ])
    @description('Model provider')
    param modelPublisherFormat string
    
    @allowed([
        'GlobalStandard'
        'DataZoneStandard'
        'Standard'
        'GlobalProvisioned'
        'Provisioned'
    ])
    @description('Model deployment SKU name')
    param skuName string = 'GlobalStandard'
    
    @description('Content filter policy name')
    param contentFilterPolicyName string = 'Microsoft.DefaultV2'
    
    @description('Model deployment capacity')
    param capacity int = 1
    
    resource modelDeployment 'Microsoft.CognitiveServices/accounts/deployments@2024-04-01-preview' = {
      name: '${accountName}/${modelName}'
      sku: {
        name: skuName
        capacity: capacity
      }
      properties: {
        model: {
          format: modelPublisherFormat
          name: modelName
          version: modelVersion
        }
        raiPolicyName: contentFilterPolicyName == null ? 'Microsoft.Nill' : contentFilterPolicyName
      }
    }
    
  2. Jalankan implementasi

    RESOURCE_GROUP="<resource-group-name>"
    ACCOUNT_NAME="<azure-ai-model-inference-name>" 
    MODEL_NAME="Phi-4-mini-instruct"
    PROVIDER="Microsoft"
    VERSION=1
    
    az deployment group create \
        --resource-group $RESOURCE_GROUP \
        --template-file ai-services-deployment-template.bicep \
        --parameters accountName=$ACCOUNT_NAME modelName=$MODEL_NAME modelVersion=$VERSION modelPublisherFormat=$PROVIDER
    
  3. Verifikasi bahwa penyebaran berhasil diselesaikan:

    az cognitiveservices account deployment show \
        --deployment-name $MODEL_NAME \
        -n $ACCOUNT_NAME \
        -g $RESOURCE_GROUP \
    | jq '.properties.provisioningState'
    

    Output harus menampilkan "Succeeded".

Gunakan model ini

Nota

Bagian ini identik untuk pendekatan CLI dan Bicep.

Anda dapat mengakses model yang sudah disebarkan menggunakan Titik Akhir untuk Model Foundry dari sumber daya. Saat Anda membuat permintaan, tentukan parameter model dan sisipkan nama penyebaran model yang Anda buat. Anda dapat secara terprogram mendapatkan URI untuk titik akhir inferensi dengan menggunakan kode berikut:

Titik akhir inferensi

az cognitiveservices account show  -n $accountName -g $resourceGroupName | jq '.properties.endpoints["Azure AI Model Inference API"]'

Untuk membuat permintaan ke titik akhir Model Foundry, tambahkan rute models. Misalnya: https://<resource>.services.ai.azure.com/models. Lihat referensi AZURE AI Model Inference API untuk semua operasi yang didukung.

Kunci inferensi

az cognitiveservices account keys list  -n $accountName -g $resourceGroupName

Troubleshooting

Kesalahan Penyebab Resolusi
Kuota terlampaui Langganan Anda mencapai kuota penyebaran untuk SKU atau wilayah yang dipilih. Periksa kuota Anda di portal Foundry atau minta peningkatan melalui dukungan Azure.
Otorisasi gagal Identitas yang digunakan tidak memiliki peran RBAC yang diperlukan. Tetapkan peran Kontributor Cognitive Services pada sumber daya Foundry.
Model tidak tersedia Model tidak tersedia di wilayah atau langganan Anda. Jalankan az cognitiveservices account list-models untuk memeriksa model dan wilayah yang tersedia.
Ekstensi tidak ditemukan cognitiveservices Ekstensi CLI tidak diinstal. Jalankan az extension add -n cognitiveservices untuk menginstal ekstensi.