Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Tworzenie, testowanie i wdrażanie przepływów pracy agenta hosted Foundry Agent przy użyciu Microsoft Foundry dla rozszerzenia Visual Studio Code. Hostowane przepływy pracy umożliwiają współpracę wielu agentów w sekwencji, z których każdy ma własny model, narzędzia i instrukcje.
Przed rozpoczęciem zbuduj agenta w Foundry Agent Service przy użyciu rozszerzenia. Następnie możesz dodać hostowane przepływy pracy do tego agenta.
W tym artykule opisano tworzenie projektu przepływu pracy, uruchamianie go lokalnie, wizualizowanie wykonania i wdrażanie go w obszar roboczy w Foundry.
Wymagania wstępne
- Projekt Foundry z wdrożonym modelem lub zasób Azure OpenAI.
- Zainstalowano rozszerzenie Microsoft Foundry dla Visual Studio Code.
- Tożsamość zarządzana projektu z przypisanymi rolami Azure AI User i AcrPull. Przypisz również rolę
acrPulldo tożsamości zarządzanej usługi Foundry project, w której planujesz wdrożyć hostowanego agenta. - Obsługiwany region dla hostowanych agentów.
- Python 3.12 lub nowszy.
- zestaw SDK .NET 9 lub nowszy.
Tworzenie przepływu pracy hostowanego agenta
Możesz użyć rozszerzenia Foundry dla Visual Studio Code, aby utworzyć hostowane przepływy pracy agenta. Przepływ pracy hostowanego agenta to sekwencja agentów, które współpracują ze sobą w celu wykonania zadania. Każdy agent w przepływie pracy może mieć własny model, narzędzia i instrukcje.
Otwórz paletę poleceń (Ctrl+Shift+P).
Uruchom następujące polecenie:
>Microsoft Foundry: Create a New Hosted Agent.Wybierz strukturę Microsoft Agent Framework lub LangGraph.
Wybierz szablon: asystenta hotelowego z pojedynczym agentem lub przepływ pracy agenta Recenzent-Pisarz (wielu agentów).
Wybierz język programowania.
Wybierz model, który został już wdrożony w projekcie, lub przeglądaj katalog modeli.
Wybierz folder, w którym chcesz zapisać nowy przepływ pracy.
Pliki projektu hostowanego agenta są generowane w wybranym folderze na podstawie struktury, szablonu i języka wybranego do rozpoczęcia pracy. Możesz usunąć lub zmodyfikować ten kod zgodnie z potrzebami.
Instalowanie zależności
Zainstaluj wymagane zależności dla projektu hostowanego agenta. Zależności różnią się w zależności od języka programowania wybranego podczas tworzenia project.
Tworzenie środowiska wirtualnego.
python -m venv .venvAktywuj środowisko wirtualne.
# PowerShell ./.venv/Scripts/Activate.ps1 # Windows cmd .venv\Scripts\activate.bat # Unix/MacOS source .venv/bin/activateZainstaluj następujący pakiet:
pip install azure-ai-agentserver-agentframework
Przejdź do katalogu project i uruchom to polecenie, aby uzyskać niezbędne pakiety NuGet:
dotnet restore
Uruchamianie hostowanego przepływu pracy lokalnie
Przykładowy projekt przepływu pracy tworzy plik .env z niezbędnymi zmiennymi środowiskowymi. Utwórz lub zaktualizuj plik .env za pomocą poświadczeń Foundry.
PROJECT_ENDPOINT=https://<your-resource-name>.services.ai.azure.com/api/projects/<your-project-name>
MODEL_DEPLOYMENT_NAME=<your-model-deployment-name>
Ważna
Nigdy nie zatwierdzaj .env pliku do kontroli wersji. Dodaj go do .gitignore pliku.
Uwierzytelnianie hostowanego agenta
Przykład hostowanego agenta uwierzytelnia się przy użyciu DefaultAzureCredential. Skonfiguruj środowisko deweloperskie, aby podać poświadczenia za pośrednictwem jednego z obsługiwanych źródeł, na przykład:
- Azure CLI (
az login) - logowanie do konta Visual Studio Code
- logowanie do konta Visual Studio
- Zmienne środowiskowe jednostki usługi (AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET)
Potwierdź uwierzytelnianie lokalnie, uruchamiając polecenia Azure CLI az account show lub az account get-access-token przed uruchomieniem przykładu.
Możesz uruchomić hostowanego agenta w trybie interaktywnym lub w trybie kontenera.
Uruchom swojego hostowanego agenta w Inspectorze Agenta
Aby uruchomić hostowanego agenta lokalnie w Visual Studio Code, wybierz klucz F5. Spowoduje to otwarcie inspektora agenta i wykonanie aplikacji.
Spowoduje to:
-
Uruchom serwer agenta: CLI
agentdevopakowuje agenta jako serwer HTTP na porcie 8087 z debugpy dołączonym na porcie 5679. -
Odnajdywanie agentów: Interfejs użytkownika pobiera dostępnych agentów/przepływów pracy z programu
/agentdev/entities. -
Wykonywanie strumienia: Dane wejściowe czatu przechodzą do
/v1/responses, który przesyła z powrotem zdarzenia za pośrednictwem SSE w celu wizualizacji w czasie rzeczywistym. - Włącz nawigację po kodzie: Kliknij dwukrotnie węzły przepływu pracy, aby otworzyć odpowiedni plik źródłowy w edytorze.
- Włącz czatowanie z agentem lokalnym i wyświetlanie odpowiedzi, naciśnięcie punktów przerwania na potrzeby debugowania itd.
Przykładowy projekt przepływu pracy tworzy plik .env z niezbędnymi zmiennymi środowiskowymi. Utwórz lub zaktualizuj plik .env za pomocą poświadczeń Foundry.
Skonfiguruj zmienne środowiskowe na podstawie systemu operacyjnego:
$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"
Uwierzytelnianie hostowanego agenta
Przykład hostowanego agenta uwierzytelnia się przy użyciu DefaultAzureCredential. Skonfiguruj środowisko deweloperskie, aby podać poświadczenia za pośrednictwem jednego z obsługiwanych źródeł, na przykład:
- Azure CLI (
az login) - logowanie do konta Visual Studio Code
- logowanie do konta Visual Studio
- Zmienne środowiskowe jednostki usługi (AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET)
Potwierdź uwierzytelnianie lokalnie, uruchamiając polecenia Azure CLI az account show lub az account get-access-token przed uruchomieniem przykładu.
Możesz uruchomić hostowanego agenta w trybie interaktywnym lub w trybie kontenera.
Uruchamianie hostowanego agenta w trybie interaktywnym
Uruchom hostowanego agenta bezpośrednio na potrzeby programowania i testowania:
dotnet restore
dotnet build
dotnet run
Uruchamianie hostowanego agenta w trybie kontenera
Wskazówka
Otwórz lokalny plac zabaw przed uruchomieniem agenta kontenera, aby upewnić się, że wizualizacja działa poprawnie.
Aby uruchomić agenta w trybie kontenera:
- Otwórz paletę poleceń Visual Studio Code i wykonaj polecenie
Microsoft Foundry: Open Container Agent Playground Locally. - Użyj następującego polecenia, aby zainicjować konteneryzowanego hostowanego agenta.
dotnet restore dotnet build dotnet run - Prześlij żądanie do agenta za pośrednictwem interfejsu placu zabaw. Na przykład wprowadź monit, taki jak: "Utwórz hasło dla nowego elektrycznego SUV-a, który jest przystępny cenowo i zabawny do jazdy".
- Przejrzyj odpowiedź agenta w interfejsie placu zabaw.
Wizualizowanie wykonywania przepływu pracy hostowanego agenta
Rozszerzenie Foundry dla Visual Studio Code udostępnia wykres wykonywania w czasie rzeczywistym, który pokazuje, jak agenci w przepływie pracy współdziałają i współpracują ze sobą. Włącz obserwowalność w swoim projekcie, aby użyć tej wizualizacji.
Dodaj następujące odwołanie do pliku 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>
Zaktualizuj program w celu uwzględnienia następującego fragmentu kodu:
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();
Monitorowanie i wizualizowanie przepływu pracy hostowanego agenta
Aby monitorować i wizualizować realizację przepływu pracy hostowanego agenta w czasie rzeczywistym:
Otwórz paletę poleceń (Ctrl+Shift+P).
Uruchom następujące polecenie:
>Microsoft Foundry: Open Visualizer for Hosted Agents.
Zostanie otwarta nowa karta w programie VS Code, aby wyświetlić graf wykonywania. Wizualizacja automatycznie aktualizuje się w miarę postępu przepływu pracy, aby pokazać przepływ między agentami a ich interakcjami.
Konflikty portów
W przypadku konfliktów portów można zmienić port wizualizacji, ustawiając go w ustawieniach rozszerzenia Foundry. Aby to zrobić, wykonaj następujące kroki:
- Na lewym pasku bocznym programu VS Code wybierz ikonę koła zębatego, aby otworzyć menu ustawień.
- Wybierz
Extensions>Microsoft Foundry Configuration. -
Hosted Agent Visualization PortZnajdź ustawienie i zmień je na dostępny numer portu. - Uruchom ponownie program VS Code, aby zastosować zmiany.
Zmienianie portu w kodzie
W przypadku konfliktów portów zmień port wizualizacji, ustawiając zmienną FOUNDRY_OTLP_PORT środowiskową. Odpowiednio zaktualizuj punkt końcowy OTLP w programie.
Aby na przykład zmienić port na 4318, użyj następującego polecenia:
$env:FOUNDRY_OTLP_PORT="4318"
W programie zaktualizuj punkt końcowy OTLP, aby użyć nowego numeru portu:
var otlpEndpoint =
Environment.GetEnvironmentVariable("OTLP_ENDPOINT") ?? "http://localhost:4318";
Wdrażanie hostowanego agenta
Po przetestowaniu hostowanego agenta lokalnie wdróż go w obszarze roboczym rozwiązania Foundry, aby inni członkowie zespołu i aplikacje mogli z niego korzystać.
Ważna
Upewnij się, że masz uprawnienia niezbędne do wdrażania hostowanych agentów w obszarze roboczym rozwiązania Foundry, zgodnie z wymaganiami wstępnymi. Aby uzyskać wymagane przypisania ról, może być konieczne współdziałanie z administratorem Azure.
- Otwórz paletę poleceń Visual Studio Code i uruchom polecenie
Microsoft Foundry: Deploy Hosted Agent. - Skonfiguruj ustawienia wdrożenia, wybierając docelowy obszar roboczy, określając plik agenta kontenera (
container.py) i definiując wszelkie inne parametry wdrożenia zgodnie z potrzebami. - Po pomyślnym wdrożeniu hostowany agent zostanie wyświetlony w sekcji
Hosted Agents (Preview)widoku drzewa rozszerzenia Microsoft Foundry. - Wybierz wdrożonego agenta, aby uzyskać dostęp do szczegółowych informacji i przetestować funkcjonalność przy użyciu zintegrowanego interfejsu testowego.
- Otwórz paletę poleceń Visual Studio Code i uruchom polecenie
Microsoft Foundry: Deploy Hosted Agent. - Skonfiguruj ustawienia wdrożenia, wybierając docelowy obszar roboczy, określając plik agenta kontenera (
<your-project-name>.csproj) i definiując wszelkie inne parametry wdrożenia zgodnie z potrzebami. - Po pomyślnym wdrożeniu hostowany agent zostanie wyświetlony w sekcji
Hosted Agents (Preview)widoku drzewa rozszerzenia Microsoft Foundry. - Wybierz wdrożonego agenta, aby uzyskać dostęp do szczegółowych informacji i przetestować funkcjonalność przy użyciu zintegrowanego interfejsu testowego.