Pamięć współdzielona vs. przekazywanie komunikatów w systemach wieloagentowych
Pamięć współdzielona i przekazywanie komunikatów to dwa podstawowe paradygmaty koordynacji agentów. W modelu pamięci współdzielonej (wzorzec Blackboard) wszyscy agenci odczytują i zapisują wspólny stan. W modelu przekazywania komunikatów agenci komunikują się wyłącznie za pomocą komunikatów i nie współdzielą stanu. Wybór przesądza o spójności, sprzężeniu, skalowalności i łatwości debugowania systemu wieloagentowego.
W skrócie
- Pamięć współdzielona (Blackboard) oznacza wspólny stan, który wszyscy agenci odczytują i zapisują; przekazywanie komunikatów hermetyzuje każdego agenta i pozwala mu komunikować się wyłącznie za pomocą komunikatów.
- Kluczowa zasada spójności brzmi: odczyty mogą przebiegać równolegle w modelu fan-out, zapisy muszą pozostać jednowątkowe. Według Cognition współbieżne zapisy do współdzielonego stanu prowadzą do sprzecznych, niejawnych decyzji i kruchych wyników.
- Przekazywanie komunikatów dominuje w standardach z 2026 roku: A2A definiuje cykl życia zadania z nieprzejrzystymi szczegółami wewnętrznymi agentów, OpenAI Agents SDK korzysta z handoffów, a Anthropic Claude Agent SDK z narzędzia Agent (wcześniej narzędzie Task) ze skompresowanymi wynikami zwrotnymi.
- Pamięć współdzieloną da się debugować w topologiach z jednym zapisującym, ale przy swobodnym zapisie ten model się załamuje; przekazywanie komunikatów wymaga kompleksowego rozproszonego śledzenia z identyfikatorami korelacji.
- W praktyce systemy produkcyjne łączą oba podejścia: wewnętrznie współdzielony stan (np. obiekt stanu LangGraph z checkpointingiem), a na zewnątrz przekazywanie komunikatów przez A2A.
Pamięć współdzielona i przekazywanie komunikatów to dwa podstawowe paradygmaty, za pomocą których można koordynować wielu agentów AI. W modelu pamięci współdzielonej (w klasycznym wariancie jest to wzorzec Blackboard) wszyscy agenci odczytują i zapisują wspólny stan. W modelu przekazywania komunikatów każdy agent jest hermetyzowany i komunikuje się wyłącznie za pomocą komunikatów, bez współdzielonego stanu. Wybór między nimi przesądza o czterech właściwościach systemu wieloagentowego: spójności, sprzężeniu, skalowalności i łatwości debugowania. Ten artykuł porównuje oba paradygmaty według tych osi i pokazuje, kiedy który się sprawdza.
- Pamięć współdzielona / Blackboard: wspólny stan (scratchpad, baza wektorowa, obiekt stanu), który wszyscy agenci odczytują i zapisują. Silne sprzężenie, prosta wymiana kontekstu, ale ryzyko przy równoległych zapisach.
- Przekazywanie komunikatów: odizolowani agenci, wymiana wyłącznie za pomocą komunikatów. Luźne sprzężenie, skalowanie ponad granicami procesów i dostawców; to standard, na którym opierają się A2A, OpenAI Agents SDK i Anthropic Claude Agent SDK.
- Decydująca zasada: odczyt może przebiegać równolegle w modelu fan-out, zapis powinien pozostać jednowątkowy, niezależnie od wybranego paradygmatu.
Pamięć współdzielona i wzorzec Blackboard
W podejściu opartym na pamięci współdzielonej wszyscy agenci korzystają z jednej centralnej pamięci. Klasyczny wzorzec Blackboard wywodzi się z badań nad sztuczną inteligencją: wspólny „blackboard” przechowuje aktualny stan zadania, a wyspecjalizowani agenci go obserwują, odczytują istotne dla siebie fragmenty, wpisują swoje wyniki cząstkowe i reagują na zmiany wprowadzone przez innych agentów. Nie ma stałego planu przebiegu; kolejność wynika z tego, który agent może w danej chwili wnieść coś sensownego.
W nowoczesnych systemach wieloagentowych pamięć współdzielona występuje w kilku formach. Rozpowszechnione są cztery zewnętrzne warstwy pamięci:
- Bazy wektorowe (pgvector, Pinecone, Weaviate, Qdrant) dla kontekstu wspomaganego wyszukiwaniem.
- Ustrukturyzowane bazy danych (Postgres, BigQuery, SAP HANA, Snowflake) jako źródło faktów.
- Scratchpady jako efemeryczne, współdzielone notatniki, które agenci odczytują i zapisują, zwykle z semantyką append-only lub compare-and-swap.
- Trwała pamięć agentów (w stylu Letta/MemGPT, magazyn międzywątkowy w LangGraph, narzędzie Memory od Anthropic).
Częściowo należy tu także wzorzec peer-to-peer lub swarm: równorzędni agenci na współdzielonej magistrali komunikatów i/lub we współdzielonej pamięci, bez stałego orkiestratora. OpenAI Swarm jest tu punktem odniesienia: eksperymentalny framework opublikowany w październiku 2024 roku i w marcu 2025 roku zastąpiony przez gotowy do produkcji OpenAI Agents SDK. W realiach europejskich firm ten swobodny model rzadko jednak się sprawdza, bo cierpią na tym łatwość debugowania i rozliczalność.
Słabym punktem jest spójność. Gdy tylko dwaj agenci odczytują tę samą pamięć, a co najmniej jeden z nich zapisuje, potrzebna jest jasna strategia. Popularne są trzy opcje: (a) optymistyczna kontrola współbieżności, (b) jeden zapisujący i wielu odczytujących albo (c) jawna semantyka blokad. Większość systemów produkcyjnych wybiera (b), co odpowiada zasadzie Cognition „Writes stay single-threaded”.
Przekazywanie komunikatów i komunikacja agentów za pomocą wiadomości
W modelu przekazywania komunikatów każdy agent ma własny stan i własne okno kontekstowe. Informacje przepływają wyłącznie przez jawne komunikaty, nigdy przez bezpośredni dostęp do cudzego stanu. Dzięki temu agenci są luźno sprzężeni: agent nie musi nic wiedzieć o wewnętrznym działaniu, modelu ani pamięci innego agenta, wystarczy, że zna format komunikatów.
Dokładnie taka idea projektowa stoi za protokołem Agent-to-Agent (A2A), który Google opublikował w kwietniu 2025 roku podczas Cloud Next, a 23 czerwca 2025 roku przekazał Linux Foundation. A2A definiuje, jak agenci rozmawiają, a nie jak myślą: każdy agent publikuje AgentCard (dokument JSON z endpointem, możliwościami, skillami, modalnościami i schematami uwierzytelniania). Współpraca przebiega według cyklu życia zadania:
submitted -> working -> input-required -> completed | failed | canceled
Wewnętrzne procesy zdalnego agenta pozostają przy tym nieprzejrzyste. To właśnie pozwala agentowi Salesforce wywołać agenta SAP bez ujawniania sobie nawzajem promptów, pamięci czy modelu. Podczas gdy A2A obejmuje komunikację między agentami, Model Context Protocol (MCP) reguluje komunikację agenta z narzędziami. Popularna w branży zasada (stan na 2026 rok): MCP do możliwości (agent do narzędzia), A2A do współpracy (agent do agenta).
Inne stacki realizują przekazywanie komunikatów z własną semantyką:
Stack | Semantyka przekazywania komunikatów |
|---|---|
A2A | Cykl życia zadania, wieloczęściowe komunikaty, artefakty jako output, nieprzejrzyste szczegóły wewnętrzne między agentami |
OpenAI Agents SDK | Jawne handoffy: agent kończy swoją turę, kolejny przejmuje, historia konwersacji jest przekazywana dalej |
AutoGen (w trybie utrzymania, następca: Microsoft Agent Framework) | Czat grupowy z wymianą tur, współdzielona historia konwersacji, adresowanie za pomocą wzmianek |
LangGraph | Typowany obiekt stanu przekazywany przez węzły, z checkpointami, trwały mimo restartów serwera |
Anthropic Claude Agent SDK | Agent prowadzący uruchamia subagentów przez narzędzie Agent (wcześniej narzędzie Task), subagenci zwracają skompresowane, ustrukturyzowane outputy |
Bedrock Multi-Agent Collaboration | Supervisor plus agenci współpracujący, tryb routingu vs. pełna orkiestracja |
Agentforce | Atlas Reasoning Engine kieruje zapytania, wyspecjalizowani agenci zwracają wyniki, kontekst konwersacji zostaje zachowany |
LangGraph to tu ciekawy przypadek graniczny: typowany obiekt stanu jest de facto stanem współdzielonym, ale jest przekazywany w kontrolowany sposób od węzła do węzła i zapisywany w checkpointach, a więc nie jest swobodnie modyfikowany. To typowa w praktyce forma mieszana.
Kompromisy w bezpośrednim porównaniu
Wymiar | Pamięć współdzielona / Blackboard | Przekazywanie komunikatów |
|---|---|---|
Sprzężenie | Wysokie: wszyscy agenci znają schemat stanu | Niskie: współdzielony jest tylko format komunikatów |
Spójność | Ryzykowna: sytuacje wyścigu przy współbieżnych zapisach, wymaga jednego zapisującego lub blokad | Prostsza: brak współdzielonego stanu, który mógłby zostać uszkodzony |
Skalowalność | Ograniczona przez rywalizację o zapis we współdzielonej pamięci | Skaluje się ponad granicami procesów, zespołów i dostawców |
Wymiana kontekstu | Bardzo bezpośrednia: pełny stan widoczny od razu | Jawna: tylko to, co zostało celowo wysłane |
Łatwość debugowania | Dobra przy jednym zapisującym, załamuje się przy swobodnym zapisie | Wymaga rozproszonego śledzenia z identyfikatorami korelacji we wszystkich komunikatach |
Audytowalność | Snapshoty stanu, ale „kto co zdecydował” często pozostaje niejasne | Każdy komunikat jest istotnym dla audytu punktem danych |
Typowe zastosowanie | Ściśle sprzężone zadania cząstkowe w jednym procesie | Workflowy między systemami i dostawcami |
Standardowy protokół 2026 | własnościowy / wewnętrzny dla frameworka | A2A (Linux Foundation), MCP dla narzędzi |
Na szczególną uwagę zasługują dwa tryby awarii. Po pierwsze fragmentacja kontekstu: subagenci podejmują niekompatybilne, niejawne decyzje. Cognition formułuje to jako zasadę: działania niosą ze sobą niejawne decyzje, a sprzeczne decyzje prowadzą do złych wyników. Środkami zaradczymi są dzielenie się pełnymi śladami wykonania przy silnym sprzężeniu, jednowątkowe zapisy i jawne kontrakty decyzyjne. Po drugie załamanie debugowalności: przy przekazywaniu komunikatów nie ma jednego śladu obejmującego cały przebieg, lecz N trajektorii subagentów plus synteza. Środkiem zaradczym jest kompleksowe rozproszone śledzenie z identyfikatorami korelacji propagowanymi przez każde zadanie A2A i każde wywołanie MCP.
Konkretny przykład: fan-out odczytów z jednym zapisującym
Research Agent firmy Anthropic (czerwiec 2025) to punkt odniesienia dla właściwego podziału ról. Agent prowadzący (Claude Opus 4) rozkłada zapytanie na części i uruchamia N równoległych subagentów (Claude Sonnet 4). Każdy subagent ma własne okno kontekstowe o pojemności około 200k tokenów, prowadzi research niezależnie i zwraca agentowi prowadzącemu skompresowane podsumowanie (a nie pełny transkrypt), a ten dokonuje syntezy. To czyste przekazywanie komunikatów z odizolowanymi kontekstami. Wynik według wewnętrznej ewaluacji badawczej Anthropic: system wieloagentowy wypadł o 90,2% lepiej niż pojedynczy agent z Claude Opus 4. Ceną jest mniej więcej 15-krotnie wyższe zużycie tokenów niż przy zwykłej interakcji na czacie; w przypadku pojedynczego agenta to około 4-krotność. Taka ekonomia uzasadnia się tylko przy wartościowych zadaniach, które da się zrównoleglić.
Odpowiednikiem z praktyki ubezpieczeniowej jest Allianz Project Nemo: siedmiu wyspecjalizowanych agentów (Planner, Cyber, Coverage, Weather, Fraud, Payout, Audit) do obsługi szkód związanych z zepsuciem żywności po klęskach żywiołowych. W studium przypadku Allianz od zgłoszenia szkody do końcowej weryfikacji mija mniej niż pięć minut. Ta weryfikacja pozostaje w rękach człowieka: likwidator szkód czyta podsumowanie audytu i podejmuje ostateczną decyzję o wypłacie (human-in-the-loop jako wyraźny wymóg). Allianz opracował system w niecałe 100 dni i uruchomił go w lipcu 2025 roku w Australii. Udokumentowany wynik: o 80% krótszy czas obsługi i likwidacji uzasadnionych szkód poniżej AUD 500.
W pseudokodzie topologia fan-out odczytów z jednym zapisującym wygląda tak:
fragmente = parallel_map(sub_agent.recherchiere, teilaufgaben): odczyty przebiegają równolegle jako fan-out z odizolowanymi kontekstami.ergebnis = lead.synthetisiere(fragmente): dokładnie jeden zapisujący scala fragmenty.commit(ergebnis): zapis pozostaje jednowątkowy.
Należy natomiast unikać współbieżnych zapisów wielu agentów do tego samego stanu, ponieważ agenci zapisujący równolegle podejmują wzajemnie sprzeczne, niejawne decyzje.
Który paradygmat i kiedy
- Wybierz przekazywanie komunikatów, gdy agenci współpracują ponad granicami procesów, zespołów lub dostawców, gdy szczegóły wewnętrzne mają pozostać hermetyzowane i gdy audyt musi obejmować każdy komunikat. To domyślny wybór dla workflowów między systemami (z Agentforce do Joule i dalej do Copilota za pośrednictwem A2A) i dla fan-outu z przewagą odczytów (research, wyszukiwanie informacji, klasyfikacja, przegląd).
- Wybierz pamięć współdzieloną, gdy ściśle sprzężone zadania cząstkowe działają w obrębie jednego procesu, wspólny stan jest niewielki, a częstotliwość zapisu niska, i gdy można ustanowić jednego zapisującego. Blackboard sprawdza się w zadaniach bez stałego planu przebiegu.
- Połącz oba podejścia, bo tak wygląda rzeczywistość produkcyjna: wewnętrzny flow LangGraph z trwałym obiektem stanu i checkpointingiem, wystawiony na zewnątrz jako endpoint A2A z AgentCard. Wewnątrz stan współdzielony w kontrolowany sposób, na zewnątrz czyste przekazywanie komunikatów.
Dla agencji i decydentów B2B
Wybór paradygmatu to kwestia ryzyka operacyjnego. Jeśli wdrażasz workflowy wieloagentowe w swojej firmie, domyślnie wybierz przekazywanie komunikatów w oparciu o konwergentne standardowe połączenie MCP i A2A, a pamięć współdzieloną świadomie ogranicz do ściśle sprzężonych wewnętrznych zadań cząstkowych z jednym zapisującym. Dla agencji marketingowych oznacza to konkretnie, że pipeline'y do tworzenia treści, researchu i przeglądu zyskują na równoległym fan-oucie odczytów, a końcowy krok zapisu (publikacja, wpis w CRM) pozostaje jednowątkowy. Jeśli planujesz gotową do produkcji, audytowalną architekturę agentów dla swoich klientów lub własnej firmy, wcześnie ustal profil sprzężenia, strategię spójności i infrastrukturę śledzenia, zanim powstanie pierwsza linijka orkiestracji. Właśnie tu wkracza doradztwo Blck Alpaca.
Otwiera czat z przygotowanym promptem.
Najczęściej zadawane pytania
Czym różni się pamięć współdzielona od przekazywania komunikatów w przypadku agentów?
Czym jest wzorzec Blackboard w przypadku agentów?
Kiedy wybrać przekazywanie komunikatów zamiast pamięci współdzielonej?
Dlaczego równoległe zapisy do współdzielonego stanu są problematyczne?
Jaki paradygmat stosują popularne frameworki w 2026 roku?
Chcesz zgłębić temat?
Otrzymuj nowe analizy prosto na swoją skrzynkę albo zobacz, jak wykorzystujemy tę wiedzę w firmach.