Delen via


Handleiding: Afbeeldingen genereren met behulp van GPU's zonder server in Azure Container Apps

In dit artikel leert u hoe u een container-app maakt die gebruikmaakt van serverloze GPU's om een AI-toepassing uit te voeren.

Met serverloze GPU's hebt u directe toegang tot GPU-rekenresources zonder dat u handmatige infrastructuurconfiguratie hoeft uit te voeren, zoals het installeren van stuurprogramma's. Het enige dat u hoeft te doen, is de afbeelding van uw AI-model implementeren.

In deze tutorial doet u het volgende:

  • Een nieuwe container-app en -omgeving maken
  • De omgeving configureren voor het gebruik van serverloze GPU's
  • Uw app implementeren in Azure Container Apps
  • De nieuwe serverloze GPU-toepassing gebruiken
  • Artefactstreaming inschakelen om de koude start van GPU te verminderen

Prerequisites

Resource Description
Azure-account U hebt een Azure-account met een actief abonnement nodig. Als u geen account hebt, kunt u er gratis een maken.
Toegang tot serverloze GPU's Toegang tot GPU's is alleen beschikbaar nadat u GPU-quota hebt aangevraagd. U kunt uw GPU-quotumaanvraag indienen via een klantondersteuningsaanvraag.
Resource Description
Azure-account U hebt een Azure-account met een actief abonnement nodig. Als u geen account hebt, kunt u er gratis een maken.
Toegang tot serverloze GPU's Toegang tot GPU's is alleen beschikbaar nadat u GPU-quota hebt aangevraagd. U kunt uw GPU-quotumaanvraag indienen via een klantondersteuningsaanvraag.
Azure-CLI Installeer de Azure CLI of voer een upgrade uit naar de nieuwste versie.

Uw container-app maken

  1. Ga naar Azure Portal en zoek en selecteer Container Apps.

  2. Selecteer Maken en selecteer vervolgens Container App.

  3. Voer in het venster Basisinformatie de volgende waarden in elke sectie in.

    Voer onder Projectdetails de volgende waarden in:

    Setting Value
    Subscription Selecteer uw Azure-abonnement.
    Bronnengroep Selecteer Nieuwe maken en voer mijn-gpu-demogroep in.
    Naam container-app Voer mijn-gpu-demo-app in.
    Implementatiebron Selecteer Containerinstallatiekopieën.

    Voer onder Container Apps-omgeving de volgende waarden in:

    Setting Value
    Region Selecteer Zweden - centraal.

    Raadpleeg voor meer ondersteunde regio's het gebruik van serverloze GPU's in Azure.
    Container Apps-omgeving Selecteer Nieuw maken.

    Voer in het venster Container Apps-omgeving maken de volgende waarden in:

    Setting Value
    Naam van de omgeving Voer mijn-gpu-demo-env in.

    Klik op Creëren.

    Selecteer Volgende: Container >.

  4. Voer in het venster Container de volgende waarden in:

    Setting Value
    Name Voer my-gpu-demo-container in.
    Afbeeldingsbron Selecteer Docker Hub of andere registers.
    Afbeeldingstype Selecteer openbaar.
    Registeraanmeldingsserver Voer mcr.microsoft.com in.
    Afbeelding en tag Voer k8se/gpu-quickstart:latest in.
    Werkbelasting profiel Selecteer Verbruik - Maximaal 4 vCPU's, 8 Gib-geheugen.
    GPU Schakel het selectievakje in.
    GPU-type Selecteer Consumption-GPU-NC8as-T4 - Maximaal 8 vCPU's, 56 GiB-geheugen en selecteer de koppeling om het profiel toe te voegen aan uw omgeving.

    Selecteer Volgende: Ingress >.

  5. Voer in het venster Ingress de volgende waarden in:

    Setting Value
    Ingress Schakel het selectievakje Ingeschakeld in .
    Inkomend verkeer Selecteer het keuzerondje Verkeer accepteren van overal.
    Bestemmingspoort Voer 80 in.
  6. Kies Beoordelen + creëren.

  7. Klik op Creëren.

  8. Wacht even totdat de implementatie is voltooid en selecteer vervolgens Ga naar de resource.

    Het kan vijf minuten duren voordat dit proces is voltooid.

Uw GPU-app gebruiken

Selecteer in het venster Overzicht de koppeling Toepassings-URL om de front-end van de web-app in uw browser te openen en de GPU-toepassing te gebruiken.

Note

Omgevingsvariabelen maken

Definieer de volgende omgevingsvariabelen. Voordat u deze opdracht uitvoert, vervangt u de <PLACEHOLDERS> door uw waarde.

RESOURCE_GROUP="<RESOURCE_GROUP>"
ENVIRONMENT_NAME="<ENVIRONMENT_NAME>"
LOCATION="swedencentral"
CONTAINER_APP_NAME="<CONTAINER_APP_NAME>"
CONTAINER_IMAGE="mcr.microsoft.com/k8se/gpu-quickstart:latest"
WORKLOAD_PROFILE_NAME="NC8as-T4"
WORKLOAD_PROFILE_TYPE="Consumption-GPU-NC8as-T4"

Uw container-app maken

  1. Maak een resourcegroep aan die de resources bevat die u in deze handleiding aanmaakt. Deze opdracht zou Succeeded moeten uitvoeren.

    az group create \
      --name $RESOURCE_GROUP \
      --location $LOCATION \
      --query "properties.provisioningState"
    
  2. Maak een Container Apps-omgeving om uw container-app te hosten. Deze opdracht zou Succeeded moeten uitvoeren.

    az containerapp env create \
      --name $ENVIRONMENT_NAME \
      --resource-group $RESOURCE_GROUP \
      --location "$LOCATION" \
      --query "properties.provisioningState"
    
  3. Voeg een workloadprofiel toe aan uw omgeving.

    az containerapp env workload-profile add \
      --name $ENVIRONMENT_NAME \
      --resource-group $RESOURCE_GROUP \
      --workload-profile-name $WORKLOAD_PROFILE_NAME \
      --workload-profile-type $WORKLOAD_PROFILE_TYPE
    
  4. Maak uw container-app.

    az containerapp create \
      --name $CONTAINER_APP_NAME \
      --resource-group $RESOURCE_GROUP \
      --environment $ENVIRONMENT_NAME \
      --image $CONTAINER_IMAGE \
      --target-port 80 \
      --ingress external \
      --cpu 8.0 \
      --memory 56.0Gi \
      --workload-profile-name $WORKLOAD_PROFILE_NAME \
      --query properties.configuration.ingress.fqdn
    

    Met deze opdracht wordt de toepassings-URL voor uw container-app uitgevoerd.

Uw GPU-app gebruiken

Open de toepassings-URL voor uw container-app in uw browser. Houd er rekening mee dat het maximaal vijf minuten kan duren voordat de container-app is opgestart.

Met de Azure Container Apps-toepassing met serverloze GPU's kunt u een prompt invoeren om een afbeelding te genereren. U kunt ook gewoon selecteren Generate Image om de standaardprompt te gebruiken. In de volgende stap bekijkt u de resultaten van de GPU-verwerking.

Note

Uw GPU bewaken

Zodra u een afbeelding hebt gegenereerd, volgt u de volgende stappen om de resultaten van de GPU-verwerking te bekijken:

  1. Open uw container-app in Azure Portal.

  2. Vanuit de sectie Bewaking, selecteer Console.

  3. Selecteer de replica.

  4. Selecteer de container.

  5. Selecteer Opnieuw verbinding maken.

  6. In het venster Opstartopdracht kiezen, selecteer /bin/bash en selecteer Verbinden.

  7. Nadat de shell is ingesteld, voert u de opdracht nvidia-smi in om de status en uitvoer van uw GPU te controleren.

De hulpbronnen opschonen

De resources die in deze zelfstudie zijn gemaakt, hebben een effect op uw Azure-factuur.

Als u deze services niet op de lange termijn gaat gebruiken, gebruikt u de stappen om alles te verwijderen dat in deze zelfstudie is gemaakt.

  1. Zoek en selecteer resourcegroepen in Azure Portal.

  2. Selecteer mijn-gpu-demogroep.

  3. Selecteer Resourcegroep verwijderen.

  4. Voer in het bevestigingsvak mijn-gpu-demogroep in.

  5. Selecteer Verwijderen.

Voer de volgende opdracht uit.

az group delete --name $RESOURCE_GROUP

Volgende stappen