Aracılığıyla paylaş


Öğretici: Azure Container Apps'te sunucusuz GPU'ları kullanarak görüntü oluşturma

Bu makalede, yapay zeka uygulamasını desteklemek için sunucusuz GPU kullanan bir kapsayıcı uygulaması oluşturmayı öğreneceksiniz.

Sunucusuz GPU'larla, sürücüleri yükleme gibi el ile altyapı yapılandırması yapmak zorunda kalmadan GPU işlem kaynaklarına doğrudan erişiminiz olur. Tek yapmanız gereken yapay zeka modelinizin görüntüsünü dağıtmaktır.

Bu öğreticide siz:

  • Yeni bir kapsayıcı uygulaması ve ortam oluşturun
  • Ortamı sunucusuz GPU'ları kullanacak şekilde yapılandırma
  • Uygulamanızı Azure Container Apps'e dağıtma
  • Yeni sunucusuz GPU etkinleştirme uygulamasını kullanma
  • GPU soğuk başlangıç süresini azaltmak için artifakt akışını etkinleştirin.

Prerequisites

Resource Description
Azure hesabı Etkin aboneliği olan bir Azure hesabına ihtiyacınız vardır. Eğer sizde yoksa ücretsiz olarak bir hesap oluşturabilirsiniz.
Sunucusuz GPU'lara erişim GPU'lara erişim yalnızca GPU kotaları istendikten sonra kullanılabilir. GPU kota isteğinizi bir müşteri destek talebi aracılığıyla gönderebilirsiniz.
Resource Description
Azure hesabı Etkin aboneliği olan bir Azure hesabına ihtiyacınız vardır. Eğer sizde yoksa ücretsiz olarak bir hesap oluşturabilirsiniz.
Sunucusuz GPU'lara erişim GPU'lara erişim yalnızca GPU kotaları istendikten sonra kullanılabilir. GPU kota isteğinizi bir müşteri destek talebi aracılığıyla gönderebilirsiniz.
Azure CLI Azure CLI'yi yükleyin veya en son sürüme yükseltin.

Kapsayıcı uygulamanızı oluşturma

  1. Azure portalına gidin ve Container Apps'i arayın ve seçin.

  2. Oluştur'u ve ardından Container App'i seçin.

  3. Temel Bilgiler penceresinde her bölüme aşağıdaki değerleri girin.

    Proje ayrıntıları altında aşağıdaki değerleri girin:

    Setting Value
    Subscription Azure aboneliğinizi seçin.
    Kaynak grubu Yeni oluştur'u seçin ve my-gpu-demo-group girin.
    Kapsayıcı uygulama adı my-gpu-demo-app girin.
    Dağıtım kaynağı Kapsayıcı görüntüsü'ne tıklayın.

    Container Apps ortamı altında aşağıdaki değerleri girin:

    Setting Value
    Region İsveç Orta seçin.

    Daha fazla desteklenen bölge için bkz. Azure'da sunucusuz GPU'ları kullanma.
    Container Apps ortamı Yeni Oluştur'u seçin.

    Container Apps ortamı oluştur penceresinde aşağıdaki değerleri girin:

    Setting Value
    Ortam adı my-gpu-demo-env girin.

    Oluştur'i seçin.

    İleri: Kapsayıcı >'yı seçin.

  4. Kapsayıcı penceresinde aşağıdaki değerleri girin:

    Setting Value
    Name Girin my-gpu-demo-container.
    Görüntü kaynağı Docker Hub'ı veya diğer kayıt defterlerini seçin.
    Görüntü türü Genel'i seçin.
    Kayıt defteri oturum açma sunucusu mcr.microsoft.com girin.
    Resim ve etiket k8se/gpu-quickstart:latest girin.
    İş yükü profili Tüketim - En fazla 4 vCPU, 8 Gib bellek'i seçin.
    GPU Onay kutusunu seçin.
    GPU Türü Consumption-GPU-NC8as-T4 - En fazla 8 vCPU, 56 GiB bellek'i seçin ve profili ortamınıza eklemek için bağlantıyı seçin.

    İleri: Giriş'i >seçin.

  5. Giriş penceresinde aşağıdaki değerleri girin:

    Setting Value
    Ingress Etkin onay kutusunu seçin.
    Giriş trafiği Her yerden trafik kabul et radyo düğmesini seçin.
    Hedef bağlantı noktası 80 girin.
  6. Seçin, gözden geçir ve oluştur.

  7. Oluştur'i seçin.

  8. Dağıtımın tamamlanması için birkaç dakika bekleyin ve ardından Kaynağa git'i seçin.

    Bu işlemin tamamlanması beş dakika kadar sürebilir.

GPU uygulamanızı kullanma

Genel Bakışpenceresinden Uygulama Url'si bağlantısını seçerek web uygulamasının ön ucunu tarayıcınızda açın ve GPU uygulamasını kullanın.

Note

Ortam değişkenlerini oluşturma

Aşağıdaki ortam değişkenlerini tanımlayın. Bu komutu çalıştırmadan önce <PLACEHOLDERS> öğesini kendi değerlerinizle değiştirin.

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"

Kapsayıcı uygulamanızı oluşturma

  1. Bu öğreticide oluşturduğunuz kaynakları içerecek kaynak grubunu oluşturun. Bu komut Succeeded çıkışını vermelidir.

    az group create \
      --name $RESOURCE_GROUP \
      --location $LOCATION \
      --query "properties.provisioningState"
    
  2. Kapsayıcı uygulamanızı barındırmak için bir Container Apps ortamı oluşturun. Bu komut Succeeded çıkışını vermelidir.

    az containerapp env create \
      --name $ENVIRONMENT_NAME \
      --resource-group $RESOURCE_GROUP \
      --location "$LOCATION" \
      --query "properties.provisioningState"
    
  3. Ortamınıza bir iş yükü profili ekleyin.

    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. Kapsayıcı uygulamanızı oluşturun.

    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
    

    Bu komut, kapsayıcı uygulamanızın uygulama URL'sini oluşturur.

GPU uygulamanızı kullanma

Kapsayıcı uygulamanızın uygulama URL'sini tarayıcınızda açın. Kapsayıcı uygulamasının başlatılmasının beş dakika kadar sürebileceğini unutmayın.

Sunucusuz GPU'ları olan Azure Container Apps uygulaması, görüntü oluşturmak için bir istem girmenize olanak tanır. Basitçe Generate Image'a tıklayarak varsayılan istemi kullanmayı da seçebilirsiniz. Sonraki adımda GPU işlemenin sonuçlarını görüntüleyebilirsiniz.

Note

GPU'nuzu izleme

Görüntü oluşturduktan sonra, GPU işlemenin sonuçlarını görüntülemek için aşağıdaki adımları kullanın:

  1. Kapsayıcı uygulamanızı Azure portalında açın.

  2. İzleme bölümünde Konsol'a tıklayın.

  3. Kopyanızı seçin.

  4. Kapsayıcınızı seçin.

  5. Yeniden Bağlan'ı seçin.

  6. Başlangıç seç komut penceresinde /bin/bash'i ve ardından Bağlan'ı seçin.

  7. Kabuk ayarlandıktan sonra GPU'nuzun durumunu ve çıkışını gözden geçirmek için nvidia-smi komutunu girin.

Kaynakları temizle

Bu öğreticide oluşturulan kaynakların Azure faturanız üzerinde etkisi vardır.

Bu hizmetleri uzun vadeli kullanmayacaksanız, bu öğreticide oluşturulan her şeyi kaldırmak için adımları kullanın.

  1. Azure portalında Kaynak Grupları'nı arayın ve seçin.

  2. my-gpu-demo-group öğesini seçin.

  3. Kaynak grubunu sil seçeneğini seçin.

  4. Onay kutusuna my-gpu-demo-group yazın.

  5. 'ı seçin,'i silin.

Aşağıdaki komutu çalıştırın.

az group delete --name $RESOURCE_GROUP

Sonraki Adımlar