Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Crie, teste e implemente fluxos de trabalho Foundry Agent utilizando o Foundry Toolkit para Visual Studio Code. O kit de ferramentas suporta a criação de agentes a partir de templates, testes locais e depuração com o Agent Inspector para suporte à visualização e rastreamento, bem como a implementação direta para o Foundry Agent Service a partir do VS Code. Os fluxos de trabalho alojados permitem que múltiplos agentes colaborem em sequência, cada um com o seu próprio modelo, ferramentas e instruções.
Antes de começar, crie um agente no Foundry Agent Service usando a extensão. Depois podes adicionar fluxos de trabalho alojados a esse agente.
Este artigo aborda a criação de um projeto de workflow, execução local, visualização da execução e implementação no seu espaço de trabalho Foundry.
Pré-requisitos
- Um projeto Foundry com um modelo implementado, ou um recurso Azure OpenAI.
- O kit de ferramentas Foundry para Visual Studio Code está instalado.
- A identidade gerida do projeto com as funções Azure AI User e AcrPull atribuídas. Atribua também o
acrPullpapel à identidade gerida do projeto Foundry onde planeias implementar o agente alojado. - Uma região suportada para agentes hospedados.
- Python 3.12 ou superior.
- .NET 9 SDK ou posterior.
Criar um fluxo de trabalho de agente alojado
Pode usar o Foundry Toolkit para o Visual Studio Code para criar fluxos de trabalho de agentes alojados. Um fluxo de trabalho de agente hospedado é uma sequência de agentes que trabalham em conjunto para realizar uma tarefa. Cada agente no fluxo de trabalho pode ter o seu próprio modelo, ferramentas e instruções.
Abra a paleta de comandos (Ctrl+Shift+P).
Executa este comando:
>Microsoft Foundry: Create a New Hosted Agent.Escolha um framework, seja o Microsoft Agent Framework ou o LangGraph.
Escolha um modelo, seja o Assistente de Hotel para Agente Único ou o Fluxo de Trabalho do Agente Writer-Reviewer (multi-agente).
Selecione uma linguagem de programação.
Escolha um modelo, seja um que já tenha implementado no seu projeto, ou explore o catálogo de modelos.
Seleciona uma pasta onde queres guardar o teu novo fluxo de trabalho.
Os ficheiros do seu projeto de agente alojado são gerados na pasta selecionada com base no framework, modelo e linguagem que escolheu para começar. Podes remover ou modificar esse código conforme necessário.
Instalar dependências
Instala as dependências necessárias para o teu projeto de agente alojado. As dependências variam consoante a linguagem de programação que escolheste ao criar o projeto.
Crie um ambiente virtual.
python -m venv .venvAtiva o ambiente virtual.
# PowerShell ./.venv/Scripts/Activate.ps1 # Windows cmd .venv\Scripts\activate.bat # Unix/MacOS source .venv/bin/activateInstale o seguinte pacote:
pip install azure-ai-agentserver-agentframework
Vá ao diretório do seu projeto e execute este comando para obter os pacotes NuGet necessários:
dotnet restore
Executa o teu fluxo de trabalho alojado localmente
O projeto de workflow de exemplo cria um ficheiro .env com as variáveis de ambiente necessárias. Crie ou atualize o ficheiro .env com as suas credenciais Foundry:
PROJECT_ENDPOINT=https://<your-resource-name>.services.ai.azure.com/api/projects/<your-project-name>
MODEL_DEPLOYMENT_NAME=<your-model-deployment-name>
Importante
Nunca comprometas o .env ficheiro no controlo de versões. Adiciona isso ao teu .gitignore ficheiro.
Autentique o seu agente alojado
O exemplo de agente hospedado autentica-se usando DefaultAzureCredential. Configure o seu ambiente de desenvolvimento para fornecer credenciais através de uma das fontes suportadas, por exemplo:
- CLI do Azure (
az login) - Início de sessão de conta no Visual Studio Code
- Início de sessão no Visual Studio
- Variáveis de ambiente para um principal de serviço (AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET)
Confirme a autenticação localmente executando os comandos CLI do Azure az account show ou az account get-access-token antes de executar a amostra.
Pode executar o agente hospedado em modo interativo ou contentor.
Coloca o teu agente alojado no Agent Inspector
Para executar o seu agente hospedado localmente em Visual Studio Code, selecione a tecla F5. Isto abre o Inspetor de Agentes e executa a sua aplicação.
Isto irá:
-
Inicia o servidor agente: A
agentdevCLI envolve o seu agente como um servidor HTTP na porta 8087, com o debugpy ligado na porta 5679. -
Descobrir agentes: A interface recolhe agentes/fluxos de trabalho disponíveis a partir de
/agentdev/entities. -
Execução do stream: As entradas do chat vão para
/v1/responses, que transmite eventos via SSE para visualização em tempo real. - Ativar a navegação por código: Clique duas vezes nos nós do fluxo de trabalho para abrir o ficheiro-fonte correspondente no editor.
- Ative a conversa com o agente local e visualize as respostas, atingir pontos de interrupção para depuração, e assim por diante.
O projeto de workflow de exemplo cria um ficheiro .env com as variáveis de ambiente necessárias. Crie ou atualize o ficheiro .env com as suas credenciais Foundry:
Configura as variáveis do teu ambiente com base no teu sistema operativo:
$env:AZURE_AI_PROJECT_ENDPOINT="https://<your-resource-name>.services.ai.azure.com/api/projects/<your-project-name>" $env:AZURE_AI_MODEL_DEPLOYMENT_NAME="your-deployment-name"
Autentique o seu agente alojado
O exemplo de agente hospedado autentica-se usando DefaultAzureCredential. Configure o seu ambiente de desenvolvimento para fornecer credenciais através de uma das fontes suportadas, por exemplo:
- CLI do Azure (
az login) - Início de sessão de conta no Visual Studio Code
- Início de sessão no Visual Studio
- Variáveis de ambiente para um principal de serviço (AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET)
Confirme a autenticação localmente executando os comandos CLI do Azure az account show ou az account get-access-token antes de executar a amostra.
Pode executar o agente hospedado em modo interativo ou contentor.
Execute o seu agente alojado em modo interativo
Execute o agente hospedado diretamente para desenvolvimento e teste:
dotnet restore
dotnet build
dotnet run
Execute o seu agente hospedado em modo contentor
Dica
Abra o playground local antes de iniciar o agente do container para garantir que a visualização funcione corretamente.
Para executar o agente em modo contentor:
- Abra a Paleta de Comandos Visual Studio Code e execute o comando
Microsoft Foundry: Open Container Agent Playground Locally. - Use o comando seguinte para inicializar o agente hospedado containerizado.
dotnet restore dotnet build dotnet run - Envie um pedido ao agente através da interface do playground. Por exemplo, introduza um prompt como: "Crie um slogan para um novo SUV elétrico que seja acessível e divertido de conduzir."
- Veja a resposta do agente na interface do playground.
Visualizar a execução do fluxo de trabalho do agente alojado
O Foundry Toolkit para Visual Studio Code fornece um grafo de execução em tempo real que mostra como os agentes no seu fluxo de trabalho interagem e colaboram. Ative a observabilidade no seu projeto para usar esta visualização.
Adicione a seguinte referência ao seu ficheiro csproj:
<ItemGroup>
<PackageReference Include="OpenTelemetry" Version="1.12.0" />
<PackageReference Include="OpenTelemetry.Exporter.Console" Version="1.12.0" />
<PackageReference Include="OpenTelemetry.Exporter.OpenTelemetryProtocol" Version="1.12.0" />
<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="9.0.10" />
</ItemGroup>
Atualize o seu programa para incluir o seguinte excerto de código:
using System.Diagnostics;
using OpenTelemetry;
using OpenTelemetry.Logs;
using OpenTelemetry.Metrics;
using OpenTelemetry.Resources;
using OpenTelemetry.Trace;
var otlpEndpoint =
Environment.GetEnvironmentVariable("OTLP_ENDPOINT") ?? "http://localhost:4319";
var resourceBuilder = OpenTelemetry
.Resources.ResourceBuilder.CreateDefault()
.AddService("WorkflowSample");
var s_tracerProvider = OpenTelemetry
.Sdk.CreateTracerProviderBuilder()
.SetResourceBuilder(resourceBuilder)
.AddSource("Microsoft.Agents.AI.*") // All agent framework sources
.SetSampler(new AlwaysOnSampler()) // Ensure all traces are sampled
.AddOtlpExporter(options =>
{
options.Endpoint = new Uri(otlpEndpoint);
options.Protocol = OpenTelemetry.Exporter.OtlpExportProtocol.Grpc;
})
.Build();
Monitorize e visualize o fluxo de trabalho do seu agente hospedado
Para monitorizar e visualizar a execução do fluxo de trabalho do seu agente alojado em tempo real:
Abra a paleta de comandos (Ctrl+Shift+P).
Executa este comando:
>Microsoft Foundry: Open Visualizer for Hosted Agents.
Abre-se um novo separador em VS Code para mostrar o gráfico de execução. A visualização atualiza-se automaticamente à medida que o seu fluxo de trabalho avança, para mostrar o fluxo entre os agentes e as suas interações.
Conflitos portuários
Para conflitos de porta, podes alterar a porta de visualização definindo-a nas definições da extensão Foundry. Para isso, siga estes passos:
- Na barra lateral esquerda do VS Code, selecione o ícone de engrenagem para abrir o menu de definições.
- Seleciona
Extensions>Microsoft Foundry Configuration. - Localiza a
Hosted Agent Visualization Portdefinição e muda-a para um número de porta disponível. - Reiniciar o VS Code para aplicar as alterações.
Alterar porta no código
Para quaisquer conflitos de porta, altere a porta de visualização definindo a FOUNDRY_OTLP_PORT variável de ambiente. Atualize o endpoint OTLP no seu programa em conformidade.
Por exemplo, para mudar a porta para 4318, use este comando:
$env:FOUNDRY_OTLP_PORT="4318"
No seu programa, atualize o endpoint OTLP para usar o novo número de porta:
var otlpEndpoint =
Environment.GetEnvironmentVariable("OTLP_ENDPOINT") ?? "http://localhost:4318";
Implementar o agente alojado
Depois de testares o teu agente alojado localmente, implementa-o no teu espaço de trabalho Foundry para que outros membros da equipa e aplicações possam usá-lo.
Importante
Certifique-se de que concede as permissões necessárias para implementar agentes alojados no seu espaço de trabalho Foundry, conforme indicado nos Pré-requisitos. Pode ser necessário trabalhar com o seu administrador do Azure para obter as atribuições de funções necessárias.
- Abra a Paleta de Comandos Visual Studio Code e execute o comando
Microsoft Foundry: Deploy Hosted Agent. - Configure as definições de implementação selecionando o seu espaço de trabalho de destino, especificando o ficheiro agente do contentor (
container.py), e definindo quaisquer outros parâmetros de implementação conforme necessário. - Após a implementação bem-sucedida, o agente hospedado aparece na secção
Hosted Agents (Preview)da árvore de visualização da extensão Microsoft Foundry. - Selecione o agente implementado para aceder a informações detalhadas e funcionalidades de teste usando a interface integrada do playground.
- Abra a Paleta de Comandos Visual Studio Code e execute o comando
Microsoft Foundry: Deploy Hosted Agent. - Configure as definições de implementação selecionando o seu espaço de trabalho de destino, especificando o ficheiro agente do contentor (
<your-project-name>.csproj), e definindo quaisquer outros parâmetros de implementação conforme necessário. - Após a implementação bem-sucedida, o agente hospedado aparece na secção
Hosted Agents (Preview)da árvore de visualização da extensão Microsoft Foundry. - Selecione o agente implementado para aceder a informações detalhadas e funcionalidades de teste usando a interface integrada do playground.