Teilen über


Erstellen und Konfigurieren aller Ressourcen für Azure KI-Modellinferenz

Wichtig

Die in diesem Artikel markierten Elemente (Vorschau) sind aktuell als öffentliche Vorschau verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel bereitgestellt und sollte nicht für Produktionsworkloads verwendet werden. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.

In diesem Artikel erfahren Sie, wie Sie die Ressourcen erstellen, die erforderlich sind, um Azure KI-Modellreferenz und führende Modelle aus dem Azure KI-Modellkatalog zu nutzen.

Voraussetzungen

Damit Sie die Anweisungen in diesem Artikel ausführen können, benötigen Sie Folgendes:

Wichtig

Das Azure AI Foundry-Portal verwendet Projekte und Hubs zum Erstellen von Azure KI Services-Konten und zum Konfigurieren von Azure KI-Modellinferenz. Wenn Sie keine Hubs und Projekte verwenden möchten, können Sie die Ressourcen entweder mithilfe der Azure CLI oder mithilfe von Bicep erstellen. Sie können die Azure KI Services-Ressource auch über das Azure-Portal erstellen.

Erstellen der Ressourcen

Führen Sie die folgenden Schritte aus, um ein Projekt mit einem Azure KI Services-Konto zu erstellen:

  1. Besuchen Sie das Azure KI Foundry-Portal.

  2. Wählen Sie auf der Startseite die Option Projekt erstellen aus.

  3. Geben Sie dem Projekt einen Namen, z. B. „my-project“.

  4. In diesem Tutorial erstellen Sie ein völlig neues Projekt unter einem neuen KI-Hub. Wählen Sie daher Neuen Hub erstellen aus.

  5. Geben Sie dem Hub einen Namen, z. B. „my-hub“, und wählen Sie Weiter aus.

  6. Der Assistent wird mit Details zu den Ressourcen aktualisiert, die erstellt werden sollen. Wählen Sie Zu erstellende Azure-Ressourcen aus, um die Details anzuzeigen.

    Screenshot: Details des zu erstellenden Projekts und Hubs

  7. Sie sehen, dass die folgenden Ressourcen erstellt werden:

    Eigenschaft Beschreibung
    Ressourcengruppe Der Hauptcontainer für alle Ressourcen in Azure. Dadurch können Ressourcen organisiert werden, die zusammenarbeiten. Es hilft auch beim Festlegen eines Bereichs für die Kosten, die mit dem gesamten Projekt verbunden sind.
    Location Die Region der Ressourcen, die Sie erstellen
    Hub Der Hauptcontainer für KI-Projekte in Azure AI Foundry. Hubs fördern die Zusammenarbeit und ermöglichen es Ihnen, Informationen für Ihre Projekte zu speichern.
    KI Services Die Ressource, die den Zugriff auf die führenden Modelle im Azure KI-Modellkatalog ermöglicht. In diesem Tutorial wird ein neues Konto erstellt, Azure KI Services-Ressourcen können jedoch für mehrere Hubs und Projekte freigegeben werden. Hubs verwenden eine Verbindung mit der Ressource, um Zugriff auf die dort verfügbaren Modellbereitstellungen zu haben. Informationen zum Erstellen von Verbindungen zwischen Projekten und Azure KI Services zum Nutzen von Azure KI-Modellinferenz finden Sie unter Verbinden Ihres KI-Projekts.
  8. Klicken Sie auf Erstellen. Der Prozess zur Ressourcenerstellung wird gestartet.

  9. Nach Abschluss des Vorgangs kann Ihr Projekt konfiguriert werden.

  10. Azure KI-Modellreferenz ist eine Previewfunktion, die in Azure AI Foundry aktiviert werden muss. Wählen Sie auf der oberen Navigationsleiste in der rechten Ecke das Symbol Previewfunktionen aus. Rechts auf dem Bildschirm wird ein Kontextblatt angezeigt.

  11. Aktivieren Sie das Feature Modelle im Azure KI-Modellinferenzdienst bereitstellen.

    Animation: Aktivieren des Features für die Modellbereitstellung im Azure KI-Modellinferenzdienst im Azure AI Foundry-Portal

  12. Schließen Sie den Bereich.

  13. Um Azure KI-Modellinferenz zu verwenden, müssen Sie Ihrem Azure KI Services-Konto Modellbereitstellungen hinzufügen.

Wichtig

Die in diesem Artikel markierten Elemente (Vorschau) sind aktuell als öffentliche Vorschau verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel bereitgestellt und sollte nicht für Produktionsworkloads verwendet werden. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.

Sie können entscheiden, welche Modelle für das Rückschließen im Rückschlussendpunkt verfügbar sind, und diese entsprechend konfigurieren. Wenn ein bestimmtes Modell konfiguriert ist, können Sie dann Vorhersagen daraus generieren, indem Sie den Modellnamen oder den Bereitstellungsnamen für Ihre Anforderungen angeben. Für die Verwendung sind in Ihrem Code keine weiteren Änderungen erforderlich.

In diesem Artikel erfahren Sie, wie Sie Azure KI-Modellinferenz in Azure AI Foundry ein neues Modell hinzufügen.

Voraussetzungen

Damit Sie die Anweisungen in diesem Artikel ausführen können, benötigen Sie Folgendes:

  • Installieren Sie die Azure CLI und die cognitiveservices-Erweiterung für Azure KI Services:

    az extension add -n cognitiveservices
    
  • Einige der Befehle in diesem Tutorial verwenden das Tool jq, das möglicherweise nicht in Ihrem System installiert ist. Die Installationsanweisungen finden Sie unter Herunterladen von jq.

  • Ermitteln Sie die folgenden Informationen:

    • die Azure-Abonnement-ID

    • Name Ihrer Azure KI Services-Ressource

    • Ressourcengruppe, in der die Azure KI Services-Ressource bereitgestellt wurde

Option „Add models“

Um ein Modell hinzuzufügen, müssen Sie zuerst das Modell ermitteln, das Sie bereitstellen möchten. Sie können die verfügbaren Modelle wie folgt abfragen:

  1. Melden Sie sich bei Ihrem Azure-Abonnement an:

    az login
    
  2. Wenn Sie über mehrere Abonnements verfügen, wählen Sie das Abonnement aus, in dem sich Ihre Ressource befindet:

    az account set --subscription $subscriptionId>
    
  3. Legen Sie die folgenden Umgebungsvariablen anhand des Namens der Azure KI Services-Ressource, die Sie verwenden möchten, und der entsprechenden Ressourcengruppe fest.

    accountName="<ai-services-resource-name>"
    resourceGroupName="<resource-group>"
    
  4. Wenn Sie noch kein Azure KI Services-Konto haben, können Sie eins wie folgt erstellen:

    az cognitiveservices account create -n $accountName -g $resourceGroupName
    
  5. Sehen Sie sich zunächst an, welche Modelle Ihnen unter welcher SKU zur Verfügung stehen. Die folgende Befehlsliste enthält alle verfügbaren Modelldefinitionen:

    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 }'
    
  6. Die Ausgabe sieht wie folgt aus:

    {
      "name": "Phi-3.5-vision-instruct",
      "format": "Microsoft",
      "version": "2",
      "sku": "GlobalStandard",
      "capacity": 1
    }
    
  7. Suchen Sie das Modell, das Sie bereitstellen möchten. Sie benötigen die Eigenschaften name, format, version und sku. Je nach Bereitstellungstyp ist eventuell Kapazität erforderlich.

    Tipp

    Beachten Sie, dass nicht alle Modelle in allen SKUs verfügbar sind.

  8. Fügen Sie der Ressource die Modellimplementierung hinzu. Im folgenden Beispiel wird Phi-3.5-vision-instruct hinzugefügt:

    az cognitiveservices account deployment create \
        -n $accountName \
        -g $resourceGroupName \
        --deployment-name Phi-3.5-vision-instruct \
        --model-name Phi-3.5-vision-instruct \
        --model-version 2 \
        --model-format Microsoft \
        --sku-capacity 1 \
        --sku-name GlobalStandard
    
  9. Das Modell kann nun verwendet werden.

Sie können dasselbe Modell bei Bedarf mehrmals bereitstellen, solange dies unter einem anderen Bereitstellungsnamen erfolgt. Diese Funktion kann nützlich sein, wenn Sie unterschiedliche Konfigurationen, z. B. für die Inhaltssicherheit, für ein bestimmtes Modell testen möchten.

Verwalten von Bereitstellungen

Mithilfe der CLI können Sie alle verfügbaren Bereitstellungen anzeigen:

  1. Führen Sie den folgenden Befehl aus, um alle aktiven Bereitstellungen anzuzeigen:

    az cognitiveservices account deployment list -n $accountName -g $resourceGroupName
    
  2. Sie können die Details einer bestimmten Bereitstellung anzeigen:

    az cognitiveservices account deployment show \
        --deployment-name "Phi-3.5-vision-instruct" \
        -n $accountName \
        -g $resourceGroupName
    
  3. Sie können eine bestimmte Bereitstellung wie folgt löschen:

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

Verwenden des Modells

Bereitgestellte Modelle in der Azure KI-Modellinferenz können mithilfe des Rückschlussendpunkts des Azure KI-Modells für die Ressource genutzt werden. Geben Sie beim Erstellen Ihrer Anforderung den Parameter model an, und fügen Sie den von Ihnen erstellten Namen der Modellimplementierung ein. Sie können den URI für den Rückschlussendpunkt mithilfe des folgenden Codes programmgesteuert abrufen:

Rückschlussendpunkt

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

Um Anforderungen an den Endpunkt der Azure KI-Modellinferenz zu senden, fügen Sie die Route models an, z. B. https://<resource>.services.ai.azure.com/models. Die API-Referenz für den Endpunkt finden Sie auf der Seite Referenz zur Azure KI-Modellinferenz-API.

Rückschlussschlüssel

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

Wichtig

Die in diesem Artikel markierten Elemente (Vorschau) sind aktuell als öffentliche Vorschau verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel bereitgestellt und sollte nicht für Produktionsworkloads verwendet werden. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.

In diesem Artikel erfahren Sie, wie Sie die Ressourcen erstellen, die erforderlich sind, um Azure KI-Modellreferenz und führende Modelle aus dem Azure KI-Modellkatalog zu nutzen.

Voraussetzungen

Damit Sie die Anweisungen in diesem Artikel ausführen können, benötigen Sie Folgendes:

  • Installieren Sie die Azure CLI.

  • Ermitteln Sie die folgenden Informationen:

    • die Azure-Abonnement-ID

Informationen zu diesem Tutorial

Das Beispiel in diesem Artikel basiert auf Codebeispielen, die im Repository Azure-Samples/azureai-model-inference-bicep enthalten sind. Wenn Sie die Befehle lokal ausführen möchten, ohne Dateiinhalte kopieren oder einfügen zu müssen, verwenden Sie die folgenden Befehle, um das Repository zu klonen und zum Ordner für Ihre Programmiersprache zu wechseln:

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

Die Dateien für dieses Beispiel befinden sich in:

cd azureai-model-inference-bicep/infra

Grundlegendes zu den Ressourcen

Dieses Tutorial unterstütz Sie beim Erstellen der folgenden Elemente:

  • Eine Azure KI Services-Ressource.
  • Modellbereitstellung in der globalen Standard-SKU für alle Modelle, die nutzungsbasierte Bezahlung unterstützen
  • (Optional) Azure KI-Projekt und -Hub
  • (Optional) Verbindung zwischen dem Hub und den Modellen in Azure KI Services

Zum Erstellen dieser Ressourcen verwenden Sie die folgenden Elemente:

  1. Verwenden Sie die Vorlage modules/ai-services-template.bicep, um Ihre Azure KI Services-Ressource zu beschreiben:

    modules/ai-services-template.bicep

    @description('Location of the resource.')
    param location string = resourceGroup().location
    
    @description('Name of the Azure AI Services account.')
    param accountName string
    
    @description('The resource model definition representing SKU')
    param sku string = 'S0'
    
    @description('Whether or not to allow keys for this account.')
    param allowKeys bool = true
    
    @allowed([
      'Enabled'
      'Disabled'
    ])
    @description('Whether or not public endpoint access is allowed for this account.')
    param publicNetworkAccess string = 'Enabled'
    
    @allowed([
      'Allow'
      'Deny'
    ])
    @description('The default action for network ACLs.')
    param networkAclsDefaultAction string = 'Allow'
    
    resource account 'Microsoft.CognitiveServices/accounts@2023-05-01' = {
      name: accountName
      location: location
      identity: {
        type: 'SystemAssigned'
      }
      sku: {
        name: sku
      }
      kind: 'AIServices'
      properties: {
        publicNetworkAccess: publicNetworkAccess
        networkAcls: {
          defaultAction: networkAclsDefaultAction
        }
        disableLocalAuth: allowKeys
      }
    }
    
    output endpointUri string = account.properties.endpoints['Azure AI Model Inference API']
    output id string = account.id
    
  2. Verwenden Sie die Vorlage modules/ai-services-deployment-template.bicep, um Modellbereitstellungen zu beschreiben:

    modules/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'
      'Meta'
      'Microsoft'
      'Mistral AI'
      'OpenAI'
    ])
    @description('Model provider')
    param modelPublisherFormat string
    
    @allowed([
        'GlobalStandard'
        '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
      }
    }
    
  3. Der Einfachheit halber definieren wir das Modell, das im Dienst verfügbar sein soll, mithilfe einer JSON-Datei. Die Datei infra/models.json enthält eine Liste von JSON-Objekten mit den Schlüsseln name, version, provider und sku, die die bereitzustellenden Modelle definiert. Da die Modelle nutzungsbasierte Bezahlung unterstützen, entstehen durch das Hinzufügen von Modellbereitstellungen keine zusätzlichen Kosten. Ändern Sie die Datei, indem Sie die Modelleinträge entfernen/hinzufügen, die verfügbar sein sollen. Im folgenden Beispiel werden nur die ersten 7 Zeilen der JSON-Datei angezeigt:

    models.json

    [
      {
        "name": "AI21-Jamba-1.5-Large",
        "version": "1",
        "provider": "AI21 Labs",
        "sku": "GlobalStandard"
      },
    
  4. Wenn Sie Projekte verwenden möchten (empfohlen), benötigen Sie die Vorlagen zum Erstellen eines Projekts, eines Hubs und einer Verbindung mit der Azure KI Services-Ressource:

    modules/project-hub-template.bicep

    param location string = resourceGroup().location
    
    @description('Name of the Azure AI hub')
    param hubName string = 'hub-dev'
    
    @description('Name of the Azure AI project')
    param projectName string = 'intelligent-apps'
    
    @description('Name of the storage account used for the workspace.')
    param storageAccountName string = replace(hubName, '-', '')
    param keyVaultName string = replace(hubName, 'hub', 'kv')
    param applicationInsightsName string = replace(hubName, 'hub', 'log')
    
    @description('The container registry resource id if you want to create a link to the workspace.')
    param containerRegistryName string = replace(hubName, '-', '')
    
    @description('The tags for the resources')
    param tagValues object = {
      owner: 'santiagxf'
      project: 'intelligent-apps'
      environment: 'dev'
    }
    
    var tenantId = subscription().tenantId
    var resourceGroupName = resourceGroup().name
    var storageAccountId = resourceId(resourceGroupName, 'Microsoft.Storage/storageAccounts', storageAccountName)
    var keyVaultId = resourceId(resourceGroupName, 'Microsoft.KeyVault/vaults', keyVaultName)
    var applicationInsightsId = resourceId(resourceGroupName, 'Microsoft.Insights/components', applicationInsightsName)
    var containerRegistryId = resourceId(
      resourceGroupName,
      'Microsoft.ContainerRegistry/registries',
      containerRegistryName
    )
    
    resource storageAccount 'Microsoft.Storage/storageAccounts@2019-04-01' = {
      name: storageAccountName
      location: location
      sku: {
        name: 'Standard_LRS'
      }
      kind: 'StorageV2'
      properties: {
        encryption: {
          services: {
            blob: {
              enabled: true
            }
            file: {
              enabled: true
            }
          }
          keySource: 'Microsoft.Storage'
        }
        supportsHttpsTrafficOnly: true
      }
      tags: tagValues
    }
    
    resource keyVault 'Microsoft.KeyVault/vaults@2019-09-01' = {
      name: keyVaultName
      location: location
      properties: {
        tenantId: tenantId
        sku: {
          name: 'standard'
          family: 'A'
        }
        enableRbacAuthorization: true
        accessPolicies: []
      }
      tags: tagValues
    }
    
    resource applicationInsights 'Microsoft.Insights/components@2018-05-01-preview' = {
      name: applicationInsightsName
      location: location
      kind: 'web'
      properties: {
        Application_Type: 'web'
      }
      tags: tagValues
    }
    
    resource containerRegistry 'Microsoft.ContainerRegistry/registries@2019-05-01' = {
      name: containerRegistryName
      location: location
      sku: {
        name: 'Standard'
      }
      properties: {
        adminUserEnabled: true
      }
      tags: tagValues
    }
    
    resource hub 'Microsoft.MachineLearningServices/workspaces@2024-07-01-preview' = {
      name: hubName
      kind: 'Hub'
      location: location
      identity: {
        type: 'systemAssigned'
      }
      sku: {
        tier: 'Standard'
        name: 'standard'
      }
      properties: {
        description: 'Azure AI hub'
        friendlyName: hubName
        storageAccount: storageAccountId
        keyVault: keyVaultId
        applicationInsights: applicationInsightsId
        containerRegistry: (empty(containerRegistryName) ? null : containerRegistryId)
        encryption: {
          status: 'Disabled'
          keyVaultProperties: {
            keyVaultArmId: keyVaultId
            keyIdentifier: ''
          }
        }
        hbiWorkspace: false
      }
      tags: tagValues
    }
    
    resource project 'Microsoft.MachineLearningServices/workspaces@2024-07-01-preview' = {
      name: projectName
      kind: 'Project'
      location: location
      identity: {
        type: 'systemAssigned'
      }
      sku: {
        tier: 'Standard'
        name: 'standard'
      }
      properties: {
        description: 'Azure AI project'
        friendlyName: projectName
        hbiWorkspace: false
        hubResourceId: hub.id
      }
      tags: tagValues
    }
    

    modules/ai-services-connection-template.bicep

    @description('Name of the hub where the connection will be created')
    param hubName string
    
    @description('Name of the connection')
    param name string
    
    @description('Category of the connection')
    param category string = 'AIServices'
    
    @allowed(['AAD', 'ApiKey', 'ManagedIdentity', 'None'])
    param authType string = 'AAD'
    
    @description('The endpoint URI of the connected service')
    param endpointUri string
    
    @description('The resource ID of the connected service')
    param resourceId string = ''
    
    @secure()
    param key string = ''
    
    
    resource connection 'Microsoft.MachineLearningServices/workspaces/connections@2024-04-01-preview' = {
      name: '${hubName}/${name}'
      properties: {
        category: category
        target: endpointUri
        authType: authType
        isSharedToAll: true
        credentials: authType == 'ApiKey' ? {
          key: key
        } : null
        metadata: {
          ApiType: 'Azure'
          ResourceId: resourceId
        }
      }
    }
    

Erstellen der Ressourcen

Führen Sie in der Konsole die folgenden Schritte aus:

  1. Definieren Sie die Hauptbereitstellung:

    deploy-with-project.bicep

    @description('Location to create the resources in')
    param location string = resourceGroup().location
    
    @description('Name of the resource group to create the resources in')
    param resourceGroupName string = resourceGroup().name
    
    @description('Name of the AI Services account to create')
    param accountName string = 'azurei-models-dev'
    
    @description('Name of the project hub to create')
    param hubName string = 'hub-azurei-dev'
    
    @description('Name of the project to create in the project hub')
    param projectName string = 'intelligent-apps'
    
    @description('Path to a JSON file with the list of models to deploy. Each model is a JSON object with the following properties: name, version, provider')
    var models = json(loadTextContent('models.json'))
    
    module aiServicesAccount 'modules/ai-services-template.bicep' = {
      name: 'aiServicesAccount'
      scope: resourceGroup(resourceGroupName)
      params: {
        accountName: accountName
        location: location
      }
    }
    
    module projectHub 'modules/project-hub-template.bicep' = {
      name: 'projectHub'
      scope: resourceGroup(resourceGroupName)
      params: {
        hubName: hubName
        projectName: projectName
      }
    }
    
    module aiServicesConnection 'modules/ai-services-connection-template.bicep' = {
      name: 'aiServicesConnection'
      scope: resourceGroup(resourceGroupName)
      params: {
        name: accountName
        authType: 'AAD'
        endpointUri: aiServicesAccount.outputs.endpointUri
        resourceId: aiServicesAccount.outputs.id
        hubName: hubName
      }
      dependsOn: [
        projectHub
      ]
    }
    
    @batchSize(1)
    module modelDeployments 'modules/ai-services-deployment-template.bicep' = [
      for (item, i) in models: {
        name: 'deployment-${item.name}'
        scope: resourceGroup(resourceGroupName)
        params: {
          accountName: accountName
          modelName: item.name
          modelVersion: item.version
          modelPublisherFormat: item.provider
          skuName: item.sku
        }
        dependsOn: [
          aiServicesAccount
        ]
      }
    ]
    
    output endpoint string = aiServicesAccount.outputs.endpointUri
    
  2. Melden Sie sich bei Azure an:

    az login
    
  3. Stellen Sie sicher, dass Sie sich im richtigen Abonnement befinden:

    az account set --subscription "<subscription-id>"
    
  4. Führen Sie die Bereitstellung aus:

    RESOURCE_GROUP="<resource-group-name>"
    
    az deployment group create \
      --resource-group $RESOURCE_GROUP \
      --template-file deploy-with-project.bicep
    
  5. Wenn Sie nur die Azure KI Services-Ressource und die Modellbereitstellungen bereitstellen möchten, verwenden Sie die folgende Bereitstellungsdatei:

    deploy.bicep

    @description('Location to create the resources in')
    param location string = resourceGroup().location
    
    @description('Name of the resource group to create the resources in')
    param resourceGroupName string = resourceGroup().name
    
    @description('Name of the AI Services account to create')
    param accountName string = 'azurei-models-dev'
    
    @description('Path to a JSON file with the list of models to deploy. Each model is a JSON object with the following properties: name, version, provider')
    var models = json(loadTextContent('models.json'))
    
    module aiServicesAccount 'modules/ai-services-template.bicep' = {
      name: 'aiServicesAccount'
      scope: resourceGroup(resourceGroupName)
      params: {
        accountName: accountName
        location: location
      }
    }
    
    @batchSize(1)
    module modelDeployments 'modules/ai-services-deployment-template.bicep' = [
      for (item, i) in models: {
        name: 'deployment-${item.name}'
        scope: resourceGroup(resourceGroupName)
        params: {
          accountName: accountName
          modelName: item.name
          modelVersion: item.version
          modelPublisherFormat: item.provider
          skuName: item.sku
        }
        dependsOn: [
          aiServicesAccount
        ]
      }
    ]
    
    output endpoint string = aiServicesAccount.outputs.endpointUri
    
  6. Führen Sie die Bereitstellung aus:

    RESOURCE_GROUP="<resource-group-name>"
    
    az deployment group create \
      --resource-group $RESOURCE_GROUP \
      --template-file deploy.bicep
    
  7. Die Vorlage gibt den Azure KI-Modellinferenzendpunkt aus, über den Sie alle von Ihnen erstellten Modellbereitstellungen nutzen können.

Nächste Schritte