(Kliknij obrazek powyżej, aby obejrzeć wideo z tej lekcji)
Gdy tylko zaczniesz pracować nad projektem obejmującym wielu agentów, będziesz musiał rozważyć zastosowanie wzorca projektowego dla systemów wieloagentowych. Jednak nie zawsze jest od razu jasne, kiedy należy przejść na system wieloagentowy i jakie są z tego korzyści.
W tej lekcji postaramy się odpowiedzieć na następujące pytania:
Po tej lekcji powinieneś być w stanie:
Jaki jest szerszy kontekst?
Systemy wieloagentowe to wzorzec projektowy, który pozwala wielu agentom współpracować w celu osiągnięcia wspólnego celu.
Ten wzorzec jest szeroko stosowany w różnych dziedzinach, takich jak robotyka, systemy autonomiczne i obliczenia rozproszone.
W jakich sytuacjach warto zastosować systemy wieloagentowe? Odpowiedź brzmi: istnieje wiele scenariuszy, w których wykorzystanie wielu agentów jest korzystne, szczególnie w następujących przypadkach:
System z jednym agentem może dobrze działać w przypadku prostych zadań, ale w przypadku bardziej złożonych zadań zastosowanie wielu agentów może przynieść kilka korzyści:
Weźmy przykład rezerwacji podróży dla użytkownika. System z jednym agentem musiałby obsłużyć wszystkie aspekty procesu rezerwacji podróży, od wyszukiwania lotów po rezerwację hoteli i wynajem samochodów. Aby to osiągnąć, agent musiałby mieć narzędzia do obsługi wszystkich tych zadań. Mogłoby to prowadzić do powstania skomplikowanego i monolitycznego systemu, który trudno utrzymać i skalować. System wieloagentowy, z kolei, mógłby mieć różnych agentów wyspecjalizowanych w wyszukiwaniu lotów, rezerwacji hoteli i wynajmie samochodów. Dzięki temu system byłby bardziej modułowy, łatwiejszy w utrzymaniu i skalowalny.
Porównaj to do biura podróży prowadzonego jako mały rodzinny biznes w porównaniu z biurem podróży działającym jako franczyza. W małym rodzinnym biznesie jeden agent obsługuje wszystkie aspekty procesu rezerwacji podróży, podczas gdy w franczyzie różni agenci zajmują się różnymi aspektami procesu rezerwacji.
Zanim będziesz mógł wdrożyć wzorzec projektowy dla systemów wieloagentowych, musisz zrozumieć podstawowe elementy, które go tworzą.
Przyjrzyjmy się temu na przykładzie rezerwacji podróży dla użytkownika. W tym przypadku podstawowe elementy obejmują:
Ważne jest, aby mieć wgląd w to, jak agenci współdziałają ze sobą. Taka widoczność jest kluczowa dla debugowania, optymalizacji i zapewnienia skuteczności całego systemu. Aby to osiągnąć, musisz mieć narzędzia i techniki do śledzenia działań i interakcji agentów. Mogą to być narzędzia do logowania i monitorowania, narzędzia wizualizacyjne oraz metryki wydajności.
Na przykład w przypadku rezerwacji podróży dla użytkownika możesz mieć pulpit nawigacyjny, który pokazuje status każdego agenta, preferencje i ograniczenia użytkownika oraz interakcje między agentami. Taki pulpit może pokazywać daty podróży użytkownika, loty polecane przez agenta lotów, hotele polecane przez agenta hoteli i samochody polecane przez agenta wynajmu samochodów. Dzięki temu będziesz mieć jasny obraz tego, jak agenci współdziałają ze sobą i czy preferencje oraz ograniczenia użytkownika są spełniane.
Przyjrzyjmy się bliżej każdemu z tych aspektów.
Narzędzia do logowania i monitorowania: Chcesz rejestrować każdą akcję podjętą przez agenta. Wpis w dzienniku może zawierać informacje o agencie, który podjął akcję, podjętej akcji, czasie jej podjęcia i wyniku. Te informacje mogą być następnie wykorzystane do debugowania, optymalizacji i innych celów.
Narzędzia wizualizacyjne: Narzędzia wizualizacyjne mogą pomóc w intuicyjnym zobrazowaniu interakcji między agentami. Na przykład możesz mieć wykres pokazujący przepływ informacji między agentami. Może to pomóc w identyfikacji wąskich gardeł, nieefektywności i innych problemów w systemie.
Metryki wydajności: Metryki wydajności mogą pomóc w śledzeniu skuteczności systemu wieloagentowego. Na przykład możesz śledzić czas potrzebny na wykonanie zadania, liczbę zadań wykonanych w jednostce czasu oraz dokładność rekomendacji agentów. Te informacje mogą pomóc w identyfikacji obszarów wymagających poprawy i optymalizacji systemu.
Przyjrzyjmy się konkretnym wzorcom, które można wykorzystać do tworzenia aplikacji wieloagentowych. Oto kilka interesujących wzorców wartych rozważenia:
Ten wzorzec jest przydatny, gdy chcesz stworzyć aplikację czatu grupowego, w której wielu agentów może się ze sobą komunikować. Typowe przypadki użycia tego wzorca obejmują współpracę zespołową, obsługę klienta i sieci społecznościowe.
W tym wzorcu każdy agent reprezentuje użytkownika w czacie grupowym, a wiadomości są wymieniane między agentami za pomocą protokołu komunikacyjnego. Agenci mogą wysyłać wiadomości do czatu grupowego, odbierać wiadomości z czatu grupowego i odpowiadać na wiadomości od innych agentów.
Ten wzorzec można zaimplementować za pomocą architektury scentralizowanej, w której wszystkie wiadomości są przesyłane przez centralny serwer, lub architektury zdecentralizowanej, w której wiadomości są wymieniane bezpośrednio.
Ten wzorzec jest przydatny, gdy chcesz stworzyć aplikację, w której wielu agentów może przekazywać sobie zadania.
Typowe przypadki użycia tego wzorca obejmują obsługę klienta, zarządzanie zadaniami i automatyzację procesów.
W tym wzorcu każdy agent reprezentuje zadanie lub krok w procesie, a agenci mogą przekazywać zadania innym agentom na podstawie wcześniej zdefiniowanych reguł.
Ten wzorzec jest przydatny, gdy chcesz stworzyć aplikację, w której wielu agentów może współpracować, aby rekomendować użytkownikom różne opcje.
Dlaczego warto, aby wielu agentów współpracowało? Ponieważ każdy agent może mieć różne kompetencje i wnosić różne perspektywy do procesu rekomendacji.
Weźmy przykład, w którym użytkownik chce uzyskać rekomendację dotyczącą najlepszej akcji do zakupu na giełdzie.
Rozważmy scenariusz, w którym klient próbuje uzyskać zwrot za produkt. W procesie tym może być zaangażowanych wielu agentów, ale podzielmy ich na agentów specyficznych dla tego procesu oraz agentów ogólnych, którzy mogą być używani w innych procesach.
Agenci specyficzni dla procesu zwrotu:
Oto niektórzy agenci, którzy mogą być zaangażowani w proces zwrotu:
Agenci ogólni:
Ci agenci mogą być używani w innych częściach Twojego biznesu.
Wymieniono tutaj wielu agentów, zarówno specyficznych dla procesu zwrotu, jak i ogólnych, którzy mogą być używani w innych częściach Twojego biznesu. Mamy nadzieję, że daje to wyobrażenie o tym, jak można zdecydować, których agentów użyć w swoim systemie Zaprojektuj system wieloagentowy dla procesu obsługi klienta. Zidentyfikuj agentów zaangażowanych w proces, ich role i obowiązki oraz sposób, w jaki współdziałają ze sobą. Rozważ zarówno agentów specyficznych dla procesu obsługi klienta, jak i ogólnych agentów, którzy mogą być używani w innych częściach Twojego biznesu.
Zastanów się, zanim przeczytasz poniższe rozwiązanie, możesz potrzebować więcej agentów, niż Ci się wydaje.
TIP: Pomyśl o różnych etapach procesu obsługi klienta, a także rozważ agentów potrzebnych dla każdego systemu.
Pytanie: Kiedy warto rozważyć użycie systemu wieloagentowego?
W tej lekcji omówiliśmy wzorzec projektowy wieloagentowy, w tym scenariusze, w których wieloagenty są stosowne, zalety korzystania z wieloagentów w porównaniu z pojedynczym agentem, podstawowe elementy wdrażania wzorca projektowego wieloagentowego oraz sposób uzyskania wglądu w interakcje między wieloma agentami.
Dołącz do Azure AI Foundry Discord, aby spotkać się z innymi uczącymi się, uczestniczyć w godzinach konsultacji i uzyskać odpowiedzi na pytania dotyczące AI Agentów.
Zastrzeżenie:
Ten dokument został przetłumaczony za pomocą usługi tłumaczeniowej AI Co-op Translator. Chociaż dokładamy wszelkich starań, aby tłumaczenie było precyzyjne, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub nieścisłości. Oryginalny dokument w jego rodzimym języku powinien być uznawany za wiarygodne źródło. W przypadku informacji o kluczowym znaczeniu zaleca się skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia.