Implementar para um endpoint online do Microsoft Foundry ou do Azure Machine Learning Studio

A CLI Azure Developer (azd) permite-lhe implementar para um endpoint online Estúdio do Azure Machine Learning ou Microsoft Foundry. azd suporta as seguintes funcionalidades, descritas nas secções seguintes:

Pré-requisitos

Para trabalhar com endpoints online do Microsoft Foundry ou Estúdio do Azure Machine Learning, precisa de:

O modelo Foundry Starter pode ajudar a criar toda a infraestrutura necessária para começar com os endpoints Foundry.

Configurar o endpoint online

Configure o suporte para endpoints online na secção services do ficheiro azure.yaml.

  • Defina o host valor para ai.endpoint.
  • A config secção para ai.endpoint suporta as seguintes configurações:
    • workspace: O nome do espaço de trabalho Microsoft Foundry. Suporta azd substituições de variáveis de ambiente e sintaxe.
      • Se não for especificado, azd procura uma variável de ambiente com o nome AZUREAI_PROJECT_NAME.
    • ambiente: Configuração personalizada opcional para ambientes de ML. azd cria uma nova versão do ambiente a partir da definição do ficheiro YAML referenciada.
    • flow: Configuração personalizada opcional para flows. azd cria um novo fluxo de prompt a partir do caminho do ficheiro especificado.
    • modelo: Configuração personalizada opcional para modelos ML. azd cria uma nova versão do modelo a partir da definição de ficheiro YAML referenciada.
    • Implantação: Configuração necessária para implementações online de endpoints. azd cria uma nova implementação online para o endpoint online associado a partir da definição de ficheiro YAML referenciada.

Considere o seguinte ficheiro de exemplo azure.yaml que configura estas funcionalidades:

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}

A config.deployment secção é obrigatória e cria uma nova implementação online para o endpoint online associado a partir da definição do ficheiro YAML referenciada. Esta funcionalidade trata do seguinte:

  • O ambiente e modelo associados são referenciados quando disponíveis.
  • azd espera que a implementação entre num estado de provisionamento terminal.
  • Em implantações bem-sucedidas, todo o tráfego é deslocado para a nova versão de implantação.
  • Todas as implementações anteriores são eliminadas para libertar computação para futuras implementações.

Explore as opções de configuração

Cada funcionalidade suportada para endpoints online de IA/ML oferece suporte a personalizações para o seu cenário específico usando as opções descritas nas secções a seguir.

Flow

A flow secção de configuração é opcional e suporta os seguintes valores:

  • nome: O nome do fluxo. O valor padrão é <service-name>-flow-<timestamp> se não for especificado.

  • path: O caminho relativo para uma pasta que contém o manifesto do fluxo.

  • sobrescrições: Quaisquer sobrescrições personalizadas para aplicar ao fluxo.

    Observação

    Cada chamada a azd deploy cria um novo fluxo com data e hora.

Meio Ambiente

A environment secção de configuração é opcional e suporta os seguintes valores:

  • nome: O nome do ambiente personalizado. O valor padrão é <service-name>-environment se não for especificado.

  • Path: O caminho relativo para um manifesto yaml de ambiente personalizado.

  • sobrescrições: Quaisquer sobrescrições personalizadas para aplicar ao ambiente.

    Observação

    Cada chamada a azd deploy cria uma nova versão do ambiente.

Modelo

A model secção de configuração é opcional e suporta os seguintes valores:

  • nome: O nome do modelo personalizado. O valor padrão é <service-name>-model se não for especificado.

  • path: O caminho relativo para um manifesto YAML de modelo personalizado.

  • sobrescrições: Quaisquer sobrescrições personalizadas para aplicar ao modelo.

    Observação

    A cada chamada a azd deploy cria uma nova versão do modelo.

Implantação

A deployment secção de configuração é necessária e suporta os seguintes valores:

  • nome: O nome da implementação personalizada. O valor padrão é <service-name>-deployment se não for especificado.

  • path: O caminho relativo para um manifesto yaml personalizado de implantação.

  • ambiente: Um mapa de pares-chave-valor para definir variáveis de ambiente para a implementação. Suporta substituições de variáveis de ambiente a partir das variáveis de ambiente OS/AZD com a sintaxe ${VAR_NAME}.

  • sobrescrições: Quaisquer sobrescrições personalizadas para aplicar à implementação.

    Observação

    Suporta apenas implantações online gerenciadas.

AgentSchema e agent.yaml

AgentSchema é uma especificação aberta para definir agentes de IA num formato YAML centrado em código. Um agent.yaml ficheiro descreve a configuração de um agente, incluindo o seu modelo, instruções, ferramentas e ligações. O AgentSchema serve como um formato de troca unificado entre Microsoft Copilot Studio, Microsoft Foundry e outras plataformas.

O AgentSchema suporta dois formatos principais:

  • AgentDefinition — Uma especificação completa e concreta de um agente que pode ser executada diretamente. Use este formato para agentes de propósito único onde todos os valores de configuração são conhecidos e fixos.
  • AgentManifest — Um modelo parametrizado para criar agentes de forma dinâmica. Use este formato para padrões de agentes reutilizáveis onde valores como nomes de modelos, ligações ou instruções são configurados em tempo de execução usando {{parameter}} sintaxe.

Exemplo agent.yaml

O exemplo seguinte mostra uma definição hospedada agent.yaml que azd pode implementar no Microsoft Foundry. A anotação de esquema no topo indica aos editores com suporte para YAML que validem em relação ao AgentSchema publicado:

# 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

Este exemplo usa kind: hosted com um code_configuration bloco, que indica azd para empacotar o seu código-fonte como um ZIP e deixar a Foundry gerir o tempo de execução. Para implementar uma imagem de contentor pré-construída, substitua code_configuration por um image campo que aponte para uma imagem no Azure Container Registry.

Usando agent.yaml com azd

O esquema azure.yaml suporta o tipo de host azure.ai.agent para implementar agentes no Microsoft Foundry. Quando defines host para azure.ai.agent, azd lê o ficheiro agent.yaml no teu diretório de serviço e usa o seu campo kind para determinar como fazer a implementação do agente. Para mais informações, consulte a Referência do Esquema Azure.yaml.

Valores de kind suportados

O campo kind, no topo de agent.yaml, seleciona a configuração de implementação. azd valida este campo em relação aos valores da tabela seguinte e rejeita qualquer outro valor no momento da implantação.

kind O que azd implementa Quando utilizar
hosted Um agente hospedado na Foundry. O submodo de implementação depende dos campos que inclui no ficheiro: adicionar code_configuration para implementação de código (carregamento de ZIP, ambiente de execução gerido pelo Foundry), ou adicionar image para implementação em contentor (a sua imagem pré-criada do Azure Container Registry). A maioria dos agentes criados por azd ai agent init. Use a implementação de código quando quiser que o Foundry faça a gestão do ambiente de execução; use a implementação de contentores quando precisar de controlo total sobre a imagem.

Observação

O AgentSchema é uma especificação mais abrangente do que a azd que é implementada atualmente. Se vir outros valores kind na referência do AgentSchema (por exemplo, definições de agentes baseadas apenas em prompt), esses formatos não são suportados por azd nem aceites por azd deploy.

Para mais informações sobre o AgentSchema, consulte os seguintes recursos:

Pedir ajuda

Para informações sobre como registar um bug, pedir ajuda ou propor uma nova funcionalidade para a Azure Developer CLI, por favor visite a página troubleshooting and support.