Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Skapa, testa och distribuera värdbaserade Foundry Agent-arbetsflöden med hjälp av tillägget Microsoft Foundry for Visual Studio Code. Med värdbaserade arbetsflöden kan flera agenter samarbeta i följd, var och en med sin egen modell, sina verktyg och instruktioner.
Innan du börjar skapar du en agent i Foundry Agent Service med hjälp av tillägget. Du kan sedan lägga till värdbaserade arbetsflöden i agenten.
Den här artikeln beskriver hur du skapar ett arbetsflödesprojekt, kör det lokalt, visualiserar körningen och distribuerar det till din Foundry-arbetsyta.
Förutsättningar
- Ett Foundry-projekt med en distribuerad modell eller en Azure OpenAI-resurs.
- Microsoft Foundry for Visual Studio Code-tillägget har installerats.
- Projektets hanterade identitet med Azure AI-användare och AcrPull-rollerna tilldelade. Tilldela
acrPulläven rollen till den hanterade identiteten för Foundry-projektet där du planerar att distribuera den värdbaserade agenten. - En region som stöds för värdbaserade agenter.
- Python 3.10 eller senare.
- .NET 9 SDK eller senare.
Skapa ett arbetsflöde för värdbaserad agent
Du kan använda foundry for Visual Studio Code-tillägget för att skapa värdbaserade agentarbetsflöden. Ett arbetsflöde för värdbaserad agent är en sekvens med agenter som arbetar tillsammans för att utföra en uppgift. Varje agent i arbetsflödet kan ha sin egen modell, sina verktyg och instruktioner.
Öppna kommandopaletten (Ctrl+Skift+P).
Kör det här kommandot:
>Microsoft Foundry: Create a New Hosted Agent.Välj ett programmeringsspråk.
Välj en mapp där du vill spara det nya arbetsflödet.
Ange ett namn för arbetsflödesprojektet.
En ny mapp skapas med nödvändiga filer för ditt värdbaserade agentprojekt, inklusive en exempelkodfil för att komma igång.
Installera beroenden
Installera nödvändiga beroenden för ditt värdbaserade agentprojekt. Beroendena varierar baserat på vilket programmeringsspråk du valde när du skapade projektet.
Skapa en virtuell miljö.
python -m venv .venvAktivera den virtuella miljön.
# PowerShell ./.venv/Scripts/Activate.ps1 # Windows cmd .venv\Scripts\activate.bat # Unix/MacOS source .venv/bin/activateInstallera följande paket:
pip install azure-ai-agentserver-agentframework
Gå till projektkatalogen och kör det här kommandot för att hämta nödvändiga NuGet-paket:
dotnet restore
Kör ditt värdbaserade arbetsflöde lokalt
Exempelarbetsflödesprojektet skapar en .env-fil med nödvändiga miljövariabler. Skapa eller uppdatera .env-filen med dina Foundry-autentiseringsuppgifter:
AZURE_AI_PROJECT_ENDPOINT=https://<your-resource-name>.services.ai.azure.com/api/projects/<your-project-name>
AZURE_AI_MODEL_DEPLOYMENT_NAME=<your-model-deployment-name>
Viktigt!
Lägg aldrig filen i versionskontroll .env. Lägg till den i .gitignore filen.
Autentisera din värdbaserade agent
Det värdbaserade agentexemplet autentiserar med defaultAzureCredential. Konfigurera utvecklingsmiljön för att ange autentiseringsuppgifter via en av de källor som stöds, till exempel:
- Azure CLI (
az login) - Inloggning för Visual Studio Code-konto
- Inloggning med Visual Studio-konto
- Miljövariabler för tjänstens huvudnamn (AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET)
Bekräfta autentiseringen lokalt genom att köra antingen Azure CLI az account show eller az account get-access-token kommandon innan du kör exemplet.
Du kan köra den värdbaserade agenten i interaktivt läge eller containerläge.
Kör din värdbaserade agent i interaktivt läge
Tryck på F5 i VS Code för att börja felsöka. Du kan också använda felsökningsmenyn för VS Code:
- Öppna vyn Kör och felsök (Ctrl+Skift+D/Cmd+Skift+D)
- Välj "Felsöka HTTP-server för lokalt arbetsflöde" i listrutan
- Välj den gröna knappen Starta felsökning (eller tryck på F5)
Detta kommer att:
- Starta HTTP-servern med felsökning aktiverat
- Öppna AI Toolkit Agent Inspector för interaktiv testning
- Gör att du kan ange brytpunkter och inspektera arbetsflödets körning i realtid.
Kör din värdbaserade agent i containerläge
Tips/Råd
Öppna den lokala lekplatsen innan du startar containeragenten för att säkerställa att visualiseringen fungerar korrekt.
Så här kör du den värdbaserade agenten i containerläge:
- Öppna Visual Studio Code-kommandopaletten och kör
Microsoft Foundry: Open Container Agent Playground Locallykommandot. - Kör
main.pyför att initiera den containerbaserade värdbaserade agenten. - Skicka en begäran till agenten via playground-gränssnittet. Ange till exempel en uppmaning som: "Skapa en slogan för en ny elektrisk SUV som är prisvärd och rolig att köra."
- Granska agentens svar i playground-gränssnittet.
Exempelarbetsflödesprojektet skapar en .env-fil med nödvändiga miljövariabler. Skapa eller uppdatera .env-filen med dina Foundry-autentiseringsuppgifter:
Konfigurera miljövariabler baserat på ditt operativsystem:
$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"
Autentisera din värdbaserade agent
Det värdbaserade agentexemplet autentiserar med defaultAzureCredential. Konfigurera utvecklingsmiljön för att ange autentiseringsuppgifter via en av de källor som stöds, till exempel:
- Azure CLI (
az login) - Inloggning för Visual Studio Code-konto
- Inloggning med Visual Studio-konto
- Miljövariabler för tjänstens huvudnamn (AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET)
Bekräfta autentiseringen lokalt genom att köra antingen Azure CLI az account show eller az account get-access-token kommandon innan du kör exemplet.
Du kan köra den värdbaserade agenten i interaktivt läge eller containerläge.
Kör din värdbaserade agent i interaktivt läge
Kör den värdbaserade agenten direkt för utveckling och testning:
dotnet restore
dotnet build
dotnet run
Kör din värdbaserade agent i containerläge
Tips/Råd
Öppna den lokala lekplatsen innan du startar containeragenten för att säkerställa att visualiseringen fungerar korrekt.
Så här kör du agenten i containerläge:
- Öppna Visual Studio Code-kommandopaletten och kör
Microsoft Foundry: Open Container Agent Playground Locallykommandot. - Använd följande kommando för att initiera den containerbaserade värdbaserade agenten.
dotnet restore dotnet build dotnet run - Skicka en begäran till agenten via playground-gränssnittet. Ange till exempel en uppmaning som: "Skapa en slogan för en ny elektrisk SUV som är prisvärd och rolig att köra."
- Granska agentens svar i playground-gränssnittet.
Visualisera körning av värdbaserade agentarbetsflöden
Foundry for Visual Studio Code-tillägget innehåller ett realtidskörningsdiagram som visar hur agenter i arbetsflödet interagerar och samarbetar. Aktivera observerbarhet i projektet för att använda den här visualiseringen.
Aktivera visualisering i dina arbetsflöden genom att lägga till följande kodfragment:
from agent_framework.observability import setup_observability
setup_observability(vs_code_extension_port=4319) # Default port is 4319
Lägg till följande referens till csproj-filen:
<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>
Uppdatera programmet så att det innehåller följande kodfragment:
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();
Övervaka och visualisera ditt värdbaserade agentarbetsflöde
Så här övervakar och visualiserar du körningen av värdbaserade agentarbetsflöden i realtid:
Öppna kommandopaletten (Ctrl+Skift+P).
Kör det här kommandot:
>Microsoft Foundry: Open Visualizer for Hosted Agents.
En ny flik öppnas i VS Code för att visa exekveringsdiagrammet. Visualiseringen uppdateras automatiskt när arbetsflödet fortskrider för att visa flödet mellan agenter och deras interaktioner.
Portkonflikter
För portkonflikter kan du ändra visualiseringsporten genom att ange den i inställningarna för Foundry-tillägget. Det gör du genom att följa dessa steg:
- I det vänstra sidofältet i VS Code väljer du kugghjulsikonen för att öppna inställningsmenyn.
- Välj
Extensions>Microsoft Foundry Configuration. - Leta upp inställningen
Hosted Agent Visualization Portoch ändra den till ett tillgängligt portnummer. - Starta om VS Code för att tillämpa ändringarna.
Ändra port i kod
Ändra visualiseringsporten genom att FOUNDRY_OTLP_PORT ange miljövariabeln. Uppdatera observerbarhetsporten i workflow.py-filen därefter.
Om du till exempel vill ändra porten till 4318 använder du det här kommandot:
export FOUNDRY_OTLP_PORT=4318
I workflow.pyuppdaterar du portnumret i konfigurationen för observerbarhet:
setup_observability(vs_code_extension_port=4318)
Tips/Råd
Om du vill aktivera mer felsökningsinformation lägger du till parametern enable_sensitive_data=True i setup_observability funktionen.
För eventuella portkonflikter ändrar du visualiseringsporten genom att FOUNDRY_OTLP_PORT ange miljövariabeln. Uppdatera OTLP-slutpunkten i programmet i enlighet med detta.
Om du till exempel vill ändra porten till 4318 använder du det här kommandot:
$env:FOUNDRY_OTLP_PORT="4318"
I programmet uppdaterar du OTLP-slutpunkten så att den använder det nya portnumret:
var otlpEndpoint =
Environment.GetEnvironmentVariable("OTLP_ENDPOINT") ?? "http://localhost:4318";
Distribuera den värdbaserade agenten
När du har testat din värdbaserade agent lokalt distribuerar du den till din Foundry-arbetsyta så att andra teammedlemmar och program kan använda den.
Viktigt!
Se till att du ger de behörigheter som krävs för att distribuera värdbaserade agenter på din Foundry-arbetsyta enligt kraven. Du kan behöva arbeta med Azure-administratören för att få de rolltilldelningar som krävs.
- Öppna Visual Studio Code-kommandopaletten och kör
Microsoft Foundry: Deploy Hosted Agentkommandot. - Konfigurera distributionsinställningarna genom att välja målarbetsytan, ange containeragentfilen (
container.py) och definiera andra distributionsparametrar efter behov. - När distributionen är klar visas den värdbaserade agenten
Hosted Agents (Preview)i avsnittet i trädvyn för Microsoft Foundry-tillägget. - Välj den distribuerade agenten för att få åtkomst till detaljerad information och testfunktioner med hjälp av det integrerade playground-gränssnittet.
- Öppna Visual Studio Code-kommandopaletten och kör
Microsoft Foundry: Deploy Hosted Agentkommandot. - Konfigurera distributionsinställningarna genom att välja målarbetsytan, ange containeragentfilen (
<your-project-name>.csproj) och definiera andra distributionsparametrar efter behov. - När distributionen är klar visas den värdbaserade agenten
Hosted Agents (Preview)i avsnittet i trädvyn för Microsoft Foundry-tillägget. - Välj den distribuerade agenten för att få åtkomst till detaljerad information och testfunktioner med hjälp av det integrerade playground-gränssnittet.