Sztuczna inteligencja wieloagentowa z AutoGen: agenci, czat grupowy, człowiek w pętli oraz plan nauki.
Jak framework AutoGen firmy Microsoft buduje systemy wieloagentowe: agenci, czat grupowy, człowiek w pętli, narzędzia, dziesciostopowy plan nauki oraz typowe przypadki użycia.
Źródła: A Complete Guide to Multi-Agent AI Development with AutoGen
Praca z sztuczną inteligencją oddala się od pojedynczych chatbotów opartych na jednym modelu. Zespoły chcą teraz systemów, które potrafią analizować problemy, korzystać z narzędzi, przekazywać zadania innym agentom i realizować zadania składające się z wielu kroków. To prowadzi do rosnącego zainteresowania rozwojem systemów wieloagentowych, w których kilka specjalistycznych agentów sztucznej inteligencji współpracuje w celu osiągnięcia jednego celu. AutoGen, framework o otwartym kodzie pochodzący z Microsoft Research, jest jednym z najbardziej znanych sposobów na budowanie takich systemów. Jego zaletą jest to, że umożliwia tworzenie aplikacji z kilku agentów, które ze sobą komunikują się, aż zadanie zostanie wykonane.
Jeśli sztuczna inteligencja w formie agentów będzie dalej rozwijać się do 2026 roku, AutoGen jest godzien uwagi dla wszystkich, którzy tworzą procesy pracy, asystentów lub systemy automatyzacji przedsiębiorstw. Poniżej znajdują się informacje na temat jego funkcjonowania, zadania głównych elementów (agentów, czatu grupowego, narzędzi oraz zatwierdzenia przez człowieka), sensownego porządku nauki oraz ograniczeń, które decydują o tym, czy nadaje się on do danego projektu.
Czym jest AutoGen
AutoGen to framework do tworzenia agentów oraz systemów wieloagentowych w oparciu o duże modele językowe. Można w nim zdefiniować dostosowywalne agenty, które wymieniają się wiadomościami między sobą, a także z ludźmi lub zewnętrznymi narzędziami. Microsoft Research wprowadził go po to, aby ułatwić tworzenie złożonych procesów opartych na modelach językowych. Zamiast umieszczać wszystkie zadania w jednym systemie AI, definiuje się specjalistyczne agenty oraz wzorce interakcji między nimi.
Prosta aplikacja może zawierać:
- agent badawczy, który zbiera informacje
- agent analityczny, który je analizuje
- agent programisty, który pisze kod
- agent recenzenta, który sprawdza wyniki
- agent ludzki, który wydaje zatwierdzenie w razie potrzeby
Dlaczego jest to ważne obecnie
Sztuczna inteligencja agentowa stała się głównym kierunkiem prac nad sztuczną inteligencją generatywną. Organizacje pragną czegoś więcej niż tylko generowanych odpowiedzi – chcą aplikacji, które potrafią planować, korzystać z narzędzi, współpracować z innymi systemami oraz wspierać procesy biznesowe. Projekt AutoGen koncentruje się na współpracy agentów oraz orkiestracji przepływów pracy, dzięki czemu bezpośrednio odpowiada tym wymaganiom.
Projekt również uległ zmianie. Wersja v0.4 wprowadziła strukturę warstwową, składającą się z warstwy Core, warstwy AgentChat oraz rozszerzeń, które mają na celu wspieranie aplikacji zdolnych do skalowania i stabilnego funkcjonowania. Przyniosła ona również możliwość interoperacyjności między Pythonem a .NET.
Istnieje kilka powodów, dla których ludzie się nim interesują. Sztuczna inteligencja typu agencji jest coraz szerzej stosowana, coraz więcej zespołów prosi o aplikacje wieloagentowe, automatyzacja oparta na modelach językowych stale się rozprzestrzenia, procesy wymagają orkiestracji, sztuczna inteligencja musi łączyć się z narzędziami i API, przedsiębiorstwa są zainteresowane automatyzacją, a praktyczne umiejętności inżynierskie w dziedzinie generatywnej sztucznej inteligencji są bardzo poszukiwane.
Jak to działa
AutoGen łączy kilka agentów, które ze sobą komunikują się, aby wykonać złożone zadanie. Programiści przypisują agentom różne role, a następnie decydują, jak będą ze sobą współpracować, jakie narzędzia mogą używać oraz jak będzie przepływać informacja. Proces może łączyć modele językowe, dane od ludzi oraz zewnętrzne narzędzia w celu planowania, działania i sprawdzania wyników, co nadaje się zarówno do aplikacji wieloagentowych, jak i zautomatyzowanych procesów.
Główne elementy składowe
Agenci. Są to podstawowe jednostki. Każdy agent ma określoną rolę, zachowanie oraz cel. Do powszechnie spotykanych typów należą agenci asystentowi oraz agenci proxy użytkownika, a ich zadania obejmują konfigurację zachowania, zarządzanie pamięcią i kontekstem oraz kontrolę całego cyklu życia agenta.
Komunikacja między agentami. Agenci wymieniają się informacjami i koordynują zadania, co umożliwia współpracę w ramach procesów pracy, w których każdy pełni inną rolę.
Czat grupowy. Ten model pozwala kilku agentom brać udział w wspólnym procesie pracy, co jest przydatne, gdy rozwiązanie problemu wymaga perspektywy więcej niż jednego specjalisty.
Człowiek w procesie. Nie każda decyzja powinna być podejmowana w sposób całkowicie autonomiczny. Ludzie mogą sprawdzać lub zatwierdzać określone działania, co ma szczególne znaczenie w środowiskach korporacyjnych, gdzie ważna jest dokładność, bezpieczeństwo oraz kontrola biznesowa.
Narzędzia i API. Agenci stają się znacznie bardziej przydatni, gdy mogą łączyć się z zewnętrznymi systemami. Aplikacje AutoGen mogą korzystać z wywoływania funkcji, API, baz danych oraz innych narzędzi.
Integracja z modelami językowymi. Aplikacje łączą się z modelami językowymi i kierują zachowaniem agentów poprzez konfigurację modelu oraz projektowanie zapytań.
Ścieżka samokształcenia
Rozsądna ścieżka prowadzi od podstaw do ukończonego projektu w dziesięciu etapach. Organizatorzy kursów szkoleniowych strukturują swoje kursy w podobny sposób, chociaż można je również przejść samodzielnie za pomocą oficjalnej dokumentacji.
- Poznaj framework. Dowiedz się, czym są agenci, systemy wieloagentowe oraz ich architektura, utwórz środowisko i zapoznaj się z ekosystemem oraz typowymi zastosowaniami.
- Podstawy Pythona. Ten język stanowi fundament wszystkiego, więc omów środowiska wirtualne, wywoływanie API, obsługę JSON, obsługę błędów oraz debugowanie.
- Praca z LLM. Przestudiuj zachowanie modeli, połącz się z dostawcami takimi jak OpenAI i Azure OpenAI, skonfiguruj modele, pisz instrukcje, zarządzaj tokenami i miej na oku koszty.
- Budowanie agentów. Stwórz agenty asystentów i proxy użytkowników oraz zbadaj ich zachowanie, pamięć, kontekst i cykl życia.
- Kolaboracja. Ćwicz komunikację między agentami, czaty grupowe, planowanie zadań, delegowanie, procesy z udziałem człowieka oraz wspólne podejmowanie decyzji.
- Narzędzia i automatyzacja. Dodaj wywoływanie funkcji, integrację z API, połączenia z bazami danych oraz narzędzia zewnętrzne.
- Rozwój zaawansowany. Przejdź do tematów takich jak niestandardowe agenty, orkiestracja, przepływy pracy oparte na zdarzeniach, zarządzanie stanem oraz optymalizacja wydajności.
- Debugowanie, monitorowanie i bezpieczeństwo. Wypracuj nawyki związane z rejestracją działań, obserwowaniem wydajności agentów, radzeniem sobie z wyjątkami, bezpieczeństwem oraz odpowiedzialnym AI.
- Aplikacje biznesowe. Spróbuj swoich sił w obsłudze klienta, przetwarzaniu dokumentów, asystentach badawczych, rozwoju oprogramowania oraz automatyzacji procesów.
- Kompleksowe zakończenie. Zakończ kurs projektowaniem i budową kompletnego rozwiązania wieloagentowego, przeprowadzając testy agentów, mierząc ich wydajność oraz prezentując wyniki.
Dlaczego kilka agentów zamiast jednego
AutoGen umożliwia różnym agentom współpracę przy trudnych zadaniach. Zamiast polegać na jednym modelu, tworzysz specjalistów do badań, programowania, analizy, planowania lub przeglądania i decydujesz, w jaki sposób będą ze sobą komunikować się. Rezultatem jest elastyczny proces pracy, który łączy LLM-y, zewnętrzne narzędzia oraz wkład ludzki w celu zautomatyzowania procesów składających się z wielu kroków.
Ta elastyczność ma jednak swoją cenę. Więcej agentów oznacza więcej połączeń, większą opóźnioność oraz więcej punktów awarii, więc taka podziałka musi być uzasadniona. Dekompozycja musi odpowiadać rzeczywistemu podziałowi pracy.
W porównaniu z tradycyjną automatyzacją
Tradycyjna automatyzacja opiera się na z góry określonych zasadach i stałych procedurach. AutoGen umożliwia bardziej swobodny styl, w którym agenci współpracują i reagują na zmieniające się wymagania.
| Tradycyjna automatyzacja | Automatyzacja w stylu AutoGen |
|---|---|
| Procesy pracy oparte na zasadach | Przepływy pracy oparte na agentach |
| Proces stały | Elastyczna współpraca |
| Ograniczone podejmowanie decyzji | Uzasadnianie wspierane przez LLM |
| Z góry zdefiniowane działania | Działania wykonywane za pomocą narzędzi |
| Zazwyczaj jeden przepływ pracy | Kilku agentów pracujących razem |
| Mniej elastyczny | Bardziej elastyczny |
| Udział człowieka może być ręczny | Możliwa jest wbudowana weryfikacja przez człowieka |
Żadne z tych rozwiązań nie czyni konwencjonalnej automatyzacji przestarzałą. W wielu firmach najskuteczniejsze rozwiązania łączą automatyzację deterministyczną z agentami AI.
Gdzie jest stosowana
- Obsługa klienta. Kilku agentów może klasyfikować zapytania, pobierać informacje i przygotowywać odpowiedzi, przy czym agent ludzki sprawdza delikatne przypadki przed wysłaniem jakichkolwiek informacji.
- Rozwój oprogramowania. Agenci mogą pomagać w analizie wymagań, programowaniu, testowaniu, debugowaniu oraz przeglądzie kodu.
- Badania. Niektórzy agenci zbierają materiały, inni organizują uzyskane wyniki, a jeszcze inni przygotowują ustrukturyzowane raporty.
- Analiza danych. Agenci przetwarzają zbiory danych, wykrywają wzorce i tworzą raporty spełniające potrzeby biznesowe.
- Obsługa dokumentów. Procesy pracy wydobywają informacje z dokumentów, podsumowują je i organizują wyniki.
- Procesy biznesowe. Operacje powtarzalne, które wymagają kilku etapów rozumowania i interakcji, dobrze sprawdzają się w układach wieloagentowych.
- Asystenci wiedzy. Agenci mogą pomagać ludziom w znajdowaniu i przetwarzaniu własnej wiedzy organizacji pochodzącej z powiązanych źródeł.
Co zyskujesz, ucząc się tego
Czas spędzony na AutoGen rozwija szereg powiązanych umiejętności: projektowanie aplikacji wieloagentowych, koordynowanie działań agentów, integracja modeli LLM, automatyzacja złożonych procesów pracy, praca z narzędziami i API, efektywniejsze wykorzystanie sztucznej inteligencji generatywnej, tworzenie realistycznych projektów, stosowanie podejść z udziałem człowieka oraz dostarczanie rozwiązań klasy korporacyjnej. Umiejętności te są również zgodne z nowo pojawiającymi się możliwościami kariery.
Dla kogo?
Odbiorcy są szeroko zróżnicowani. Najwięcej zyskają z tego inżynierowie pracujący nad sztuczną inteligencją i uczeniem maszynowym lub nad sztuczną inteligencją generatywną, a także programiści w Pythonie i ogólni deweloperzy oprogramowania, specjaliści od nauki o danych i inżynierii danych, praktycy automatyzacji i RPA, architekci rozwiązań, konsultanci techniczni, inżynierowie chmurowi i DevOps, badacze, zespoły innowacyjne oraz studenci. Profesjonaliści biznesowi zainteresowani automatyzacją przy użyciu sztucznej inteligencji również mogą korzystać z tych koncepcji.
Wymagania wstępne są niewielkie: podstawowa wiedza z Pythona oraz pewna znajomość sztucznej inteligencji generatywnej lub modeli językowych wielkich rozmiarów. Znajomość API i Git pomaga, ale nie jest konieczna.
Stanowiska, do których może prowadzić
Umiejętności w zakresie rozwoju systemów wieloagentowych, integracji modeli językowych wielkich rozmiarów oraz automatyzacji procesów pracy otwierają drogę do kilku stanowisk, gdy firmy wykorzystują takie rozwiązania do złożonych procesów:
- Rozwijający agentów AI – osoba, która tworzy i uruchamia inteligentne agenty
- Inżynier sztucznej inteligencji generatywnej – osoba, która tworzy aplikacje wykorzystujące modele językowe wielkich rozmiarów
- Rozwijający systemy wieloagentowe – osoba, która projektuje współpracujące procesy pracy agentów
- Inżynier automatyzacji AI – osoba, która automatyzuje procesy biznesowe za pomocą sztucznej inteligencji
- Architekt rozwiązań AI – osoba, która projektuje skalowalne architektury przedsiębiorstw
- Inżynier uczenia maszynowego, który stosuje techniki ML w inteligentnych aplikacjach
- Konsultant ds. sztucznej inteligencji, który pomaga organizacjom znajdować i wdrażać możliwości automatyzacji
- Rozwijacz aplikacji AI, który tworzy aplikacje przy użyciu modeli językowych, agentów i narzędzi
- Naukowiec zajmujący się sztuczną inteligencją, który bada nowe podejścia oparte na agentach
- Specjalista od AI w środowisku korporacyjnym, który wspiera wdrażanie rozwiązań AI
Trendy, na które należy zwrócić uwagę
Agenci napędzani zdarzeniami. Współczesne systemy oparte na agentach przechodzą na projektowanie oparte na zdarzeniach, które reagują na zdarzenia i dynamicznie wykonywają zadania. Wersja v0.4 położyła podwaliny pod taki styl.
Rozwój międzyjęzykowy. Ta sama wersja umożliwiła współpracę agentów napisanych w Pythonie i .NET, a prace nad dodatkowymi językami są w toku.
Projektowanie z ludźmi w centrum. Agenty są coraz częściej projektowane tak, aby pracować obok ludzi, a nie bez nadzoru. Prace Microsoftu nad Magentic-UI odzwierciedlają ten sam zainteresowanie.
Narzędzia typu low-code. AutoGen Studio to interfejs typu low-code służący do tworzenia i debugowania złożonych procesów z udziałem wielu agentów, mający na celu ułatwienie rozwoju oprogramowania.
Zarządzanie. Ponieważ agenci mogą wykonywać coraz więcej działań, bezpieczeństwo, monitorowanie, zarządzanie oraz nadzór ludzki stają się ważniejsze w środowisku produkcyjnym.
Kierunek rozwoju
Rozwój sztucznej inteligencji zmierza w stronę systemów, które wykonywają zadania, a nie tylko generują odpowiedzi. Architektury wieloagentowe wspierają to poprzez dzielenie dużych celów na specjalistyczne obowiązki. Dążenie AutoGen do możliwości rozszerzania, struktury opartej na zdarzeniach, interoperacyjności między językami oraz narzędzi dla agentów pokazuje, w którym kierunku zmierza ten framework.
Budowa dobrych agentów wymaga jednak czegoś więcej niż po prostu połączenia autonomicznych komponentów. Programiści muszą również znać się na bezpieczeństwie, ocenie, monitorowaniu, kontrolowaniu kosztów, nadzorze ludzkim oraz odpowiedzialnej praktyce. Osoby, które łączą AutoGen z solidnymi umiejętnościami w zakresie Pythona, modeli językowych, API oraz ogólnej inżynierii sztucznej inteligencji, mają lepsze szanse na stworzenie aplikacji agentowych, które faktycznie działają w praktyce.
Podsumowanie
AutoGen oferuje praktyczne narzędzie do rozwoju systemów opartych na wielu agentach oraz automatyzacji inteligentnych procesów pracy. Umożliwia tworzenie dostosowywalnych agentów, które mogą komunikować się, współpracować, korzystać z narzędzi oraz pracować z ludźmi przy złożonych zadaniach. Od integracji agentów z modelami językowymi po komunikację między agentami, połączenia API, automatyzację, debugowanie, zabezpieczenia oraz zastosowania w przedsiębiorstwach – umiejętności te są przydatne we szerokim spektrum nowoczesnych projektów AI. W miarę jak organizacje coraz bardziej eksplorują możliwości agentów, umiejętność projektowania i zarządzania współpracującymi systemami AI może stać się prawdziwą przewagą zawodową.
Literatura pokrewna
- Jak subagenty i systemy wielu agentów dzielą pracę oraz koszty tokenów: Proste wyjaśnienie różnic między subagentami a systemami wielu agentów, projektu orkiestrator-pracownik, czterech topologii, kosztów tokenów oraz sytuacji, gdy jeden agent jest lepszym wyborem.
- Pięć warstw narzędzia dla agentów, wraz z kodem, który bez nich nie działa: Praktyczny przegląd pięciu miejsc, w których narzędzie dla agentów wprowadza zasady w kodzie, od granic wykonywania po łańcuchy kontekstowe, oraz tego, co badania mogą, a czego nie mogą udowodnić.