Wdrażanie w punkcie końcowym usługi Microsoft Foundry lub Azure Machine Learning studio online

Interfejs wiersza polecenia dewelopera Azure (azd) umożliwia wdrażanie do punktu końcowego online Azure Machine Learning Studio lub Microsoft Foundry. azd program obsługuje następujące funkcje, które zostały opisane w kolejnych sekcjach:

Wymagania wstępne

Aby pracować z punktami końcowymi usługi Microsoft Foundry lub Azure Machine Learning studio online, potrzebne są następujące elementy:

Szablon szablonu Foundry Starter może pomóc w utworzeniu całej wymaganej infrastruktury, aby rozpocząć pracę z punktami końcowymi rozwiązania Foundry.

Konfigurowanie punktu końcowego online

Skonfiguruj obsługę punktów końcowych online w services sekcji azure.yaml pliku:

  • host Ustaw wartość na ai.endpoint.
  • Sekcja config dla programu ai.endpoint obsługuje następujące konfiguracje:
    • workspace: nazwa obszaru roboczego Microsoft Foundry. Obsługuje azd podstawianie zmiennych środowiskowych i składnię.
      • Jeśli nie zostanie określony, azd wyszukaj zmienną środowiskową o nazwie AZUREAI_PROJECT_NAME.
    • środowisko: opcjonalna konfiguracja niestandardowa dla środowisk uczenia maszynowego. azd Tworzy nową wersję środowiska na podstawie przywoływanej definicji pliku YAML.
    • przepływ: opcjonalna konfiguracja niestandardowa dla przepływów. azd Tworzy nowy przepływ monitu z określonej ścieżki pliku.
    • model: opcjonalna konfiguracja niestandardowa dla modeli uczenia maszynowego. azd Tworzy nową wersję modelu na podstawie przywoływanej definicji pliku YAML.
    • wdrożenie: wymagana konfiguracja dla wdrożeń punktów końcowych online. azd Tworzy nowe wdrożenie online do powiązanego punktu końcowego online zdefiniowanego w pliku YAML.

Rozważmy następujący przykładowy azure.yaml plik, który konfiguruje te funkcje:

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}

Sekcja config.deployment jest wymagana i tworzy nowe wdrożenie online do skojarzonego punktu końcowego online na podstawie zdefiniowanego pliku YAML. Ta funkcja obsługuje następujące funkcje:

  • Skojarzone środowisko i model są przywołyne, gdy są dostępne.
  • azd czeka, aż wdrożenie wejdzie w stan końcowy aprowizacji.
  • W przypadku pomyślnych wdrożeń cały ruch jest przesuwany do nowej wersji wdrożenia.
  • Wszystkie poprzednie wdrożenia są usuwane w celu zwolnienia zasobów obliczeniowych na potrzeby przyszłych wdrożeń.

Eksplorowanie opcji konfiguracji

Każda obsługiwana funkcja dla punktów końcowych online sztucznej inteligencji/uczenia maszynowego obsługuje dostosowania określonego scenariusza przy użyciu opcji opisanych w poniższych sekcjach.

Flow

Sekcja konfiguracji jest opcjonalna flow i obsługuje następujące wartości:

  • name: nazwa przepływu. Wartość domyślna to <service-name>-flow-<timestamp> , jeśli nie zostanie określona.

  • path: ścieżka względna do folderu zawierającego manifest przepływu.

  • przesłonięcia: wszelkie niestandardowe przesłonięcia, które mają być stosowane do przepływu.

    Uwaga / Notatka

    Każde wywołanie azd deploy tworzy nowy przepływ ze znacznikami czasu.

Środowisko

Sekcja konfiguracji jest opcjonalna environment i obsługuje następujące wartości:

  • name: nazwa środowiska niestandardowego. Wartość domyślna to <service-name>-environment , jeśli nie zostanie określona.

  • path: ścieżka względna do niestandardowego manifestu yaml środowiska.

  • nadpisania: wszelkie niestandardowe nadpisania, które mają być zastosowane w środowisku.

    Uwaga / Notatka

    Każde wywołanie azd deploy tworzy nową wersję środowiska.

Model

Sekcja konfiguracji jest opcjonalna model i obsługuje następujące wartości:

  • name: nazwa modelu niestandardowego. Wartość domyślna to <service-name>-model , jeśli nie zostanie określona.

  • path: ścieżka względna do niestandardowego manifestu YAML modelu.

  • przesłonięcia: wszelkie niestandardowe przesłonięcia, które mają być stosowane do modelu.

    Uwaga / Notatka

    Każde wywołanie azd deploy tworzy nową wersję modelu.

Wdrożenie

Sekcja konfiguracji jest deployment i obsługuje następujące wartości:

  • name: nazwa wdrożenia niestandardowego. Wartość domyślna to <service-name>-deployment , jeśli nie zostanie określona.

  • path: ścieżka względna do niestandardowego manifestu wdrożenia YAML.

  • środowisko: mapa par klucz-wartość do ustawiania zmiennych środowiskowych dla wdrożenia. Obsługuje zastępowanie zmiennych środowiskowych za pomocą zmiennych środowiskowych OS/AZD przy użyciu składni ${VAR_NAME}.

  • przesłonięcia: wszelkie niestandardowe przesłonięcia, które mają być stosowane do wdrożenia.

    Uwaga / Notatka

    Obsługuje tylko zarządzane wdrożenia online.

AgentSchema i agent.yaml

AgentSchema to otwarta specyfikacja do definiowania agentów sztucznej inteligencji w formacie YAML pierwszego kodu. Plik agent.yaml opisuje konfigurację agenta, w tym jego model, instrukcje, narzędzia i połączenia. AgentSchema służy jako ujednolicony format wymiany między Microsoft Copilot Studio, Microsoft Foundry i innymi platformami.

AgentSchema obsługuje dwa podstawowe formaty:

  • AgentDefinition — kompletna, konkretna specyfikacja agenta, który można wykonać bezpośrednio. Użyj tego formatu dla agentów pojedynczego przeznaczenia, gdzie wszystkie wartości konfiguracji są znane i stałe.
  • AgentManifest — sparametryzowany szablon do dynamicznego tworzenia agentów. Użyj tego formatu dla wzorców agentów wielokrotnego użytku, w których wartości, takie jak nazwy modelu, połączenia lub instrukcje, są konfigurowane w czasie wykonywania przy użyciu {{parameter}} składni.

Przykład: agent.yaml

Poniższy przykład przedstawia definicję hostowaną agent.yaml, którą azd może wdrożyć do usługi Microsoft Foundry. Adnotacja schematu u góry informuje edytory obsługujące YAML, aby walidowały względem opublikowanego schematu AgentSchema:

# 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

Ten przykład używa kind: hosted z blokiem code_configuration, który nakazuje azd spakować kod źródłowy jako plik ZIP i pozwala narzędziu Foundry zarządzać środowiskiem uruchomieniowym. Aby wdrożyć wstępnie utworzony obraz kontenera, zastąp code_configuration pole polem image wskazującym obraz w Azure Container Registry.

Używanie agent.yaml z azd

Schemat azure.yaml obsługuje typ hosta azure.ai.agent na potrzeby wdrażania agentów w Microsoft Foundry. Gdy ustawisz host na azure.ai.agent, azd odczytuje plik agent.yaml w katalogu usługi i używa pola kind, aby określić, jak wdrożyć agenta. Aby uzyskać więcej informacji, zobacz dokumentację schematu azure.yaml.

Obsługiwane wartości kind

Pole kind u góry agent.yaml służy do wyboru wariantu wdrożenia. azd Sprawdza poprawność tego pola względem wartości w poniższej tabeli i odrzuca wszelkie inne wartości w czasie wdrażania.

kind Co azd wdraża Kiedy stosować
hosted Agent hostowany w systemie Foundry. Podtryb wdrożenia zależy od pól zawartych w pliku: dodaj code_configuration dla wdrożenia kodu (przesyłanie archiwum ZIP, środowisko uruchomieniowe zarządzane przez Foundry) albo dodaj image dla wdrożenia kontenera (wstępnie utworzony obraz z usługi Azure Container Registry). Większość agentów utworzonych przez azd ai agent init. Użyj wdrażania kodu, jeśli chcesz, aby Foundry zarządzało środowiskiem uruchomieniowym; użyj wdrażania kontenera, jeśli potrzebujesz pełnej kontroli nad obrazem.

Uwaga / Notatka

AgentSchema jest szerszą specyfikacją niż to, co azd wdraża obecnie. Jeśli w dokumentacji referencyjnej AgentSchema występują inne wartości kind (na przykład definicje agentów oparte wyłącznie na promptach), te formaty nie są obsługiwane przez azd ani akceptowane przez azd deploy.

Aby uzyskać więcej informacji na temat AgentSchema, zobacz następujące zasoby:

Zażądaj pomocy

Aby uzyskać informacje o tym, jak zgłosić usterkę, poprosić o pomoc lub zaproponować nową funkcję dla interfejsu wiersza polecenia dewelopera Azure, odwiedź stronę troubleshooting i pomoc techniczną.