Dodawanie innych agentów — omówienie

Korzystaj z Copilot Studio, aby ulepszyć swoich agentów, łącząc ich z innymi agentami. Agenci mogą przekazać sobie interakcje użytkowników lub reagować na autonomiczne wyzwalacze. Efektywnie skaluj swoje rozwiązania, korzystając z modułowych agentów dostosowanych do konkretnych zadań lub zestawów danych.

Istnieje kilka sposobów dodawania innych agentów do istniejącego agenta programu Copilot Studio:

Wszyscy agenci dodawani do agenta są wyświetlani na stronie Agenci .

Nawiązywanie połączenia z agentami utworzonymi za pomocą Microsoft Foundry, Microsoft Fabric i Zestaw SDK agentów usługi Microsoft 365 jest obecnie dostępne w publicznej wersji zapoznawczej.

Ważna

Ten artykuł zawiera dokumentację usługi Microsoft Copilot Studio w wersji zapoznawczej i może ulec zmianie.

Funkcje w wersji zapoznawczej nie są przeznaczone do użytku w środowiskach produkcyjnych i mogą mieć ograniczoną funkcjonalność. Te funkcje są udostępniane przed oficjalnym wydaniem, dzięki czemu można szybciej uzyskać do nich dostęp i przekazać opinie na ich temat.

Jeśli tworzysz agenta gotowego do użycia w środowisku produkcyjnym, zobacz Omówienie usługi Microsoft Copilot Studio.

Zagadnienia dotyczące projektowania rozwiązań z wieloma agentami

Orkiestracja wielu agentów może być potężna, ale nie zawsze jest konieczna, i należy dokładnie rozważyć jej zastosowanie przed wdrożeniem podejścia obejmującego wiele agentów w twoim rozwiązaniu. Poniższe zagadnienia są ważne podczas podejmowania decyzji, czy i jak korzystać z agentów podrzędnych w ramach głównego agenta, lub połączyć agenta z oddzielnym agentem.

Kiedy używać agentów podrzędnych

Utwórz agentów podrzędnych w ramach swojego agenta, gdy:

  • Tworzysz pojedynczy przypadek użycia, aby odpowiedzieć na pojedynczą potrzebę lub wykonać pojedyncze zadanie (na przykład utworzyć bilet, sprawdzić stan, zarezerwować lot).
  • Jeden deweloper lub mały, spójny zespół zarządza całym rozwiązaniem agenta.
  • Chcesz logicznie grupować narzędzia, instrukcje i wiedzę w jasno zdefiniowanych podagentach w kontekście większego agenta.
  • Nie potrzebujesz oddzielnych ustawień konfiguracji, uwierzytelniania ani możliwości wdrażania dla podagentów.
  • Nie zamierzasz publikować tych agentów oddzielnie ani udostępniać ich niezależnie.
  • Nie ma potrzeby ponownie używać tego samego agenta dla różnych zadań.

Kiedy rozważyć podzielenie jednego agenta na wielu połączonych agentów

Należy rozważyć podzielenie agenta na wielu połączonych agentów, gdy jego możliwość rozróżniania dostępnych narzędzi na podstawie nazwy i opisu zaczyna spadać.

Z reguły spadek wydajności może wystąpić, gdy główny agent ma więcej niż 30–40 wyborów akcji (narzędzi, tematów lub innych agentów). Jednak pogorszenie wydajności może wystąpić także u agenta z mniejszą liczbą narzędzi o podobnych opisach.

Ostatecznie należy ocenić wydajność agenta względem własnych ocen. Chociaż zawsze należy zacząć od przejrzenia opisów, aby sprawdzić, czy możliwe jest dalsze zróżnicowanie, dzielenie funkcji między wieloma agentami może pomóc zachować precyzję.

Inne powody, dla których warto rozważyć podzielenie rozwiązania między wielu połączonych agentów, to:

  • Wiele zespołów lub deweloperów zarządza różnymi agentami niezależnie.
  • Agentów należy publikować i obsługiwać oddzielnie oraz udostępniać bezpośrednio w niezależnych kanałach, a także udostępniać innym agentom.
  • Agenci muszą mieć własne dedykowane ustawienia, takie jak model skonfigurowany do użycia przez agenta.
  • Potrzebujesz niezależnych procesów zarządzania cyklem życia aplikacji (ALM) dla każdego agenta.
  • Chcesz uczynić swojego agenta ponownie używalnym (czyli możliwym do połączenia z wieloma agentami i używania przez nie).

W swoim rozwiązaniu można mieszać agentów połączonych i agentów podrzędnych. Możesz na przykład podzielić części rozwiązania na oddzielnych agentów, do których użytkownicy mogą również uzyskiwać bezpośredni dostęp. Każdy z tych agentów może mieć własnych niezależnych agentów podrzędnych do kluczowych celów.

Potencjalny wpływ rozwiązań obejmujących wiele agentów

Podzielenie rozwiązania między wieloma agentami może:

  • Zwiększone opóźnienie z powodu dodatkowych etapów orkiestracji. Na przykład orkiestracja głównego agenta identyfikuje połączonego z nim agenta, który może obsłużyć zapytanie. Następnie połączony agent uruchamia własną warstwę orkiestracji, aby określić, jak obsłużyć zapytanie za pomocą dostępnych narzędzi.
  • Zwiększ powierzchnię testowania, zarządzania i nadzoru rozwiązania.

Przekierowywanie do agenta z tematu

Możesz jawnie przekierować do podrzędnego lub połączonego agenta z poziomu tematu. Po zakończeniu działania agenta temat źródłowy, w którym nastąpiło przekierowanie, jest wznawiany. Można dodać więcej węzłów po węźle przekierowania agenta, jeśli jest to potrzebne.

  1. Wybierz ikonę Dodaj węzeł w węźle, po którym ma nastąpić przekierowanie, wybierz agenta, do którego chcesz przekierować, w menu podrzędnym Dodaj agenta.

  2. Niektórzy agenci obsługują przekazywanie zmiennych wejściowych i pobierania danych wyjściowych, takich jak podczas konfigurowania danych wejściowych i wyjściowych agenta podrzędnego. Jeśli dane wejściowe są dostępne, możesz dodać je za pośrednictwem węzła i ustawić wartość dla każdego z nich. Każde dane wyjściowe agenta automatycznie zawierają utworzoną zmienną tematu, w której są umieszczane wartości z danych wyjściowych.

  3. Teraz możesz zapisać i przetestować temat, aby upewnić się, że przekierowanie agenta działa zgodnie z oczekiwaniami.

Note

Przekierowywanie do agentów Fabric Data nie jest obecnie obsługiwane.

Zarządzanie istniejącymi połączonymi agentami

Możesz sprawić, że dowolne dziecko lub agent powiązany będzie chwilowo niedostępny lub całkowicie go usunąć z rozwiązania.

Tymczasowe uniedostępnienie agenta podrzędnego lub połączonego dla głównego agenta

Na stronie Agenci dla głównego agenta użyj przełącznika Włączone obok agenta, który chcesz włączyć lub wyłączyć.

Wyłączenie agenta podrzędnego lub połączonego agenta powoduje, że staje się nieaktywny — czyli nie reaguje na użytkowników ani wyzwalacze.

Usuń agenta podrzędnego

Na stronie Agenci głównego agenta wybierz trzy kropki (...) obok agenta podrzędnego, który chcesz usunąć, i wybierz pozycję Usuń.

Usuwanie połączonego agenta

Na stronie Agenci głównego agenta wybierz trzy kropki (...) obok połączonego agenta, który chcesz usunąć, a następnie wybierz pozycję Rozłącz agenta.

Odwołaj się do agenta podrzędnego lub połączonego w instrukcjach agenta głównego.

Może to być przydatne, zwłaszcza dla agentów autonomicznych, aby móc odnosić się do agentów podrzędnych, które stworzyłeś, lub innych agentów, z którymi się połączyłeś. Dzięki tej metodzie można podzielić długi zestaw instrukcji dla agenta na mniejsze skoncentrowane elementy.

  1. Zostanie wyświetlona strona głównego agenta Przegląd.

  2. W polu Instrukcje wprowadź ukośnik (/) i wybierz żądanego agenta. Program Copilot Studio automatycznie zapisuje instrukcje.

  3. Przetestuj swojego agenta. Jeśli używasz panelu testowego w programie Copilot Studio, powinieneś zobaczyć odniesienie do swojego agenta na mapie aktywności.

Znane ograniczenia

Następujące ograniczenia dotyczą agentów podrzędnych i połączonych.

  • Agenci platformy Fabric Data nie mogą być obecnie przekierowywani do korzystania z węzła Przekierowanie w temacie. Nie można obecnie jawnie odwoływać się do agentów danych Fabric w ramach instrukcji.

  • Agenci Fabric Data obecnie nie działają, gdy główny agent jest wdrożony na Microsoft Copilot.

  • Cytaty mogą nie zawsze być zachowywane podczas przekazywania danych wyjściowych z powrotem z agenta do agenta wywołującego.

  • Agenci podrzędni i powiązani przestrzegają ustawienia Użycia ogólnej wiedzy głównego agenta. W tym przypadku inni agenci nie używają wiedzy ogólnej jako źródła odpowiedzi generowanych przez wbudowane narzędzie wiedzy. Jednak inni agenci czasem mogą wykorzystywać wiedzę o modelu językowym podczas generowania pytań lub komunikatów.

  • Jeśli używasz agenta jako głównego agenta z jednym lub kilkoma połączonymi agentami, nie możesz używać tego samego agenta jako powiązanego agenta jako drugiego głównego agenta. Możesz jednak użyć dowolnego agenta, który nie ma połączonych agentów, jako powiązanego agenta w wielu głównych agentach.

  • W konfiguracjach wieloagentowych, gdy agent nadrzędny opiera się wyłącznie na podagentach (bez tematów ani źródeł wiedzy), a dla agenta podrzędnego ustawisz w agencie nadrzędnym opcję po uruchomieniu na Nie odpowiadaj, platforma może wysłać dodatkowy komunikat explanation_of_tool_call wygenerowany przez system po tym, jak agent podrzędny odpowie. Środowisko uruchomieniowe orkiestracji (nie agenci potomni) generuje ten komunikat. Komunikat nie wskazuje na problem z konfiguracją agenta.