Microsoft Foundry veya Azure Machine Learning Stüdyosu çevrimiçi uç noktasına dağıtma

Azure Geliştirici CLI'si (azd), Azure Machine Learning Stüdyosu veya Microsoft Foundry çevrimiçi uç noktasına dağıtmanızı sağlar. azd , sonraki bölümlerde açıklanan aşağıdaki özellikleri destekler:

Önkoşullar

Microsoft Foundry veya Azure Machine Learning Stüdyosu çevrimiçi uç noktalarıyla çalışmak için şunlar gerekir:

Foundry Starter şablonu Foundry uç noktalarını kullanmaya başlamak için gerekli tüm altyapının oluşturulmasına yardımcı olabilir.

Çevrimiçi uç noktayı yapılandırma

Dosyanın services bölümünde çevrimiçi uç noktalar için desteği yapılandırın:

  • host değerini olarak ai.endpointayarlayın.
  • config için ai.endpoint bölümü aşağıdaki yapılandırmaları destekler:
    • workspace: Microsoft Foundry çalışma alanının adı. Çevre değişkeni ikamelerini ve sözdizimini destekler azd.
      • Belirtilmezse, azd adlı AZUREAI_PROJECT_NAMEbir ortam değişkeni arar.
    • ortam: ML ortamları için isteğe bağlı özel yapılandırma. azd başvuruda bulunılan YAML dosya tanımından yeni bir ortam sürümü oluşturur.
    • flow: Akışlar için isteğe bağlı özel yapılandırma. azd belirtilen dosya yolundan yeni bir istem akışı oluşturur.
    • model: ML modelleri için isteğe bağlı özel yapılandırma. azd , başvuruda bulunılan YAML dosya tanımından yeni bir model sürümü oluşturur.
    • dağıtım: Çevrimiçi uç nokta dağıtımları için gerekli yapılandırma. azd , başvuruda bulunılan YAML dosya tanımından ilişkili çevrimiçi uç noktaya yeni bir çevrimiçi dağıtım oluşturur.

Bu özellikleri yapılandıran aşağıdaki örnek azure.yaml dosyayı göz önünde bulundurun:

name: contoso-chat
metadata:
  template: contoso-chat@0.0.1-beta
services:
  chat:
    # Referenced new ai.endpoint host type
    host: ai.endpoint
    # New config flow for AI project configuration
    config:
      # The name of the Foundry workspace
      workspace: ${AZUREAI_PROJECT_NAME}
      # Optional: Path to custom ML environment manifest
      environment:
        path: deployment/docker/environment.yml
      # Optional: Path to your prompt flow folder that contains the flow manifest
      flow:
        path: ./contoso-chat
      # Optional: Path to custom model manifest
      model:
        path: deployment/chat-model.yaml
        overrides:
          "properties.azureml.promptflow.source_flow_id": ${AZUREAI_FLOW_NAME}
      # Required: Path to deployment manifest
      deployment:
        path: deployment/chat-deployment.yaml
        environment:
          PRT_CONFIG_OVERRIDE: deployment.subscription_id=${AZURE_SUBSCRIPTION_ID},deployment.resource_group=${AZURE_RESOURCE_GROUP},deployment.workspace_name=${AZUREAI_PROJECT_NAME},deployment.endpoint_name=${AZUREAI_ENDPOINT_NAME},deployment.deployment_name=${AZUREAI_DEPLOYMENT_NAME}

config.deployment bölümü gereklidir ve başvuruda bulunılan YAML dosya tanımından ilişkili çevrimiçi uç noktaya yeni bir çevrimiçi dağıtım oluşturur. Bu işlev aşağıdakileri işler:

  • uygun olduğunda ilişkili ortama ve modele başvurulur.
  • azd dağıtımın bir terminal sağlama durumuna girmesini bekler.
  • Başarılı dağıtımlarda tüm trafik yeni dağıtım sürümüne kaydırılır.
  • Gelecekteki dağıtımlar için bilgi işlem kaynaklarını serbest bırakmak amacıyla önceki tüm dağıtımlar silinir.

Yapılandırma seçeneklerini keşfetme

AI/ML çevrimiçi uç noktaları için desteklenen her özellik, aşağıdaki bölümlerde açıklanan seçenekleri kullanarak belirli senaryonuz için özelleştirmeleri destekler.

Flow

Yapılandırma flow bölümü isteğe bağlıdır ve aşağıdaki değerleri destekler:

  • name: Akışın adı. Belirtilmezse <service-name>-flow-<timestamp> varsayılan olarak kullanılır.

  • path: Akış bildirimini içeren bir klasörün göreli yolu.

  • geçersiz kılmalar: Akışa uygulanacak tüm özel geçersiz kılmalar.

    Uyarı

    Her bir çağrı azd deploy yeni bir zaman damgasına sahip bir akış oluşturur.

Çevre

Yapılandırma environment bölümü isteğe bağlıdır ve aşağıdaki değerleri destekler:

  • name: Özel ortamın adı. Belirtilmezse <service-name>-environment varsayılan olarak kullanılır.

  • path: Özel environment YAML manifestosu için göreli yol.

  • geçersiz kılmalar: Ortama uygulanacak tüm özel geçersiz kılmalar.

    Uyarı

    Her bir çağrı azd deploy yeni bir ortam sürümü oluşturur.

Model

Yapılandırma model bölümü isteğe bağlıdır ve aşağıdaki değerleri destekler:

  • name: Özel modelin adı. Belirtilmezse <service-name>-model varsayılan olarak kullanılır.

  • path: Özel model YAML bildiriminin göreli yolu.

  • geçersiz kılmalar: Modele uygulanacak tüm özel geçersiz kılmalar.

    Uyarı

    Her çağrısı azd deploy yeni bir model sürümü oluşturur.

Dağıtım

Yapılandırma deployment bölümü gereklidir ve aşağıdaki değerleri destekler:

  • name: Özel dağıtımın adı. Belirtilmezse <service-name>-deployment varsayılan olarak kullanılır.

  • path: Özel dağıtım yaml bildiriminin göreli yolu.

  • ortam: Dağıtım için ortam değişkenlerini ayarlamak için anahtar değer çiftlerinin haritası. OS/AZD ortam değişkenlerinden ortam değişkeni yer değiştirmelerini ${VAR_NAME} sözdizimi kullanarak destekler.

  • geçersiz kılmalar: Dağıtıma uygulanacak tüm özel geçersiz kılmalar.

    Uyarı

    Yalnızca yönetilen çevrimiçi dağıtımları destekler.

AgentSchema ve agent.yaml

AgentSchema , yapay zeka aracılarını kod öncelikli YAML biçiminde tanımlamaya yönelik açık bir belirtimdir. Dosya agent.yaml , modeli, yönergeleri, araçları ve bağlantıları dahil olmak üzere aracının yapılandırmasını açıklar. AgentSchema, Microsoft Copilot Studio, Microsoft Foundry ve diğer platformlar arasında birleşik bir değişim biçimi görevi görür.

AgentSchema iki birincil biçimi destekler:

  • AgentDefinition — Doğrudan yürütülebilen bir aracının eksiksiz, somut belirtimi. Tüm yapılandırma değerlerinin bilindiği ve sabit olduğu tek amaçlı aracılar için bu biçimi kullanın.
  • AgentManifest — Aracıları dinamik olarak oluşturmak için parametreli bir şablon. Model adları, bağlantılar veya yönergeler gibi değerlerin çalışma zamanında {{parameter}} söz dizimi kullanılarak yapılandırıldığı yeniden kullanılabilir aracı desenleri için bu biçimi kullanın.

Örnek agent.yaml

Aşağıdaki örnek, azd’in Microsoft Foundry’ye dağıtabileceği barındırılan agent.yaml tanımını gösterir. En üstteki şema notu, YAML’i destekleyen düzenleyicilere yayımlanmış AgentSchema’ya göre doğrulama yapmalarını belirtir:

# yaml-language-server: $schema=https://raw.githubusercontent.com/microsoft/AgentSchema/refs/heads/main/schemas/v1.0/ContainerAgent.yaml

kind: hosted
name: customer-support
description: Handles customer inquiries and support requests
protocols:
  - protocol: responses
    version: v1
code_configuration:
  runtime: python_3_14
  entry_point: main.py

Bu örnekte, code_configuration bloğuyla birlikte kind: hosted kullanılır; bu da azd’ye kaynak kodunuzu ZIP olarak paketlemesini ve çalışma zamanını Foundry’nin yönetmesini söyler. Bunun yerine önceden oluşturulmuş bir kapsayıcı görüntüsü dağıtmak için code_configuration öğesini, Azure Container Registry'deki bir görüntüyü işaret eden bir image alanıyla değiştirin.

agent.yaml azd ile kullanma

azure.yaml şeması, Microsoft Foundry'ye aracı dağıtmak için azure.ai.agent konak türünü destekler. host’ı azure.ai.agent olarak ayarladığınızda, azd hizmet dizininizdeki agent.yaml dosyasını okur ve aracının nasıl dağıtılacağını belirlemek için kind alanını kullanır. Daha fazla bilgi için azure.yaml şema referansına bakın.

Desteklenen kind değerleri

En kind üstündeki agent.yaml alan dağıtım şeklini seçer. azd bu alanı aşağıdaki tabloda yer alan değerlerle doğrular ve dağıtım zamanındaki diğer değerleri reddeder.

kind azd öğesinin dağıttıkları Ne zaman kullanılır?
hosted Foundry tarafından barındırılan bir ajan. Dağıtım alt modu, dosyaya eklediğiniz alanlara bağlıdır: kod dağıtımı için ekleme code_configuration (ZIP yükleme, Foundry ile yönetilen çalışma zamanı) veya kapsayıcı dağıtımı için ekleme image (Azure Container Registry'dan önceden oluşturulmuş görüntünüz). azd ai agent init tarafından oluşturulan aracıların çoğu. Foundry'nin çalışma zamanını yönetmesini istediğinizde kod dağıtımı kullanın; görüntü üzerinde tam denetime ihtiyacınız olduğunda kapsayıcı dağıtımı kullanın.

Uyarı

AgentSchema, azd’ın bugün devreye aldığından daha geniş kapsamlı bir belirtimdir. AgentSchema referansında başka kind değerleri görürseniz (örneğin, yalnızca istemden oluşan aracı tanımları), bu biçimler azd tarafından desteklenmez ve azd deploy tarafından kabul edilmez.

AgentSchema hakkında daha fazla bilgi için aşağıdaki kaynaklara bakın:

Yardım isteme

Azure Geliştirici CLI'si için hata oluşturma, yardım isteme veya yeni bir özellik önerme hakkında bilgi için lütfen troubleshooting and support sayfasını ziyaret edin.