Kąt Andersona
Dlaczego modele językowe “zgubią się” w rozmowie

Nowy artykuł z Microsoft Research i Salesforce ujawnia, że nawet najbardziej zaawansowane duże modele językowe (LLM) rozpadają się, gdy instrukcje są podawane stopniowo, a nie wszystkie naraz. Autorzy stwierdzili, że wydajność spada średnio o 39 procent w sześciu zadaniach, gdy podpowiedź jest rozbita na wiele tur:

Rozmowa w jednej turze (po lewej) daje najlepsze wyniki, ale jest nienaturalna dla użytkownika końcowego. Rozmowa w wielu turach (po prawej) pokazuje, że nawet najwyżej oceniane i najlepsze LLM tracą skuteczną siłę napędową w rozmowie. Źródło: https://arxiv.org/pdf/2505.06120
Co więcej, niezawodność odpowiedzi spada gwałtownie, a prestiżowe modele, takie jak ChatGPT-4.1 i Gemini 2.5 Pro, wahają się między prawie idealnymi odpowiedziami a jawnymi niepowodzeniami, w zależności od tego, jak to samo zadanie jest sformułowane; ponadto spójność wyjścia może spaść o więcej niż połowę w tym procesie.
Aby zbadać to zachowanie, artykuł wprowadza metodę zwaną sharding, która dzieli w pełni określone podpowiedzi na mniejsze fragmenty i uwalnia je jeden po drugim do rozmowy.
W najbardziej podstawowych słowach, jest to równoznaczne z złożeniem spójnego i kompleksowego jednego zamówienia w restauracji, pozostawiając kelnera z niczym do zrobienia, jak tylko potwierdzić zamówienie; lub zdecydowanie się na podejście współpracujące:

Dwa skrajne wersje rozmowy w restauracji (nie z nowego artykułu, tylko do celów ilustracyjnych).
Dla podkreślenia, powyższy przykład może przedstawić klienta w negatywnym świetle. Ale podstawowa idea przedstawiona w drugiej kolumnie jest taka, że transakcyjna wymiana, która wyjaśnia problem, przed jego rozwiązaniem – jest to racjonalne i rozsądne podejście do zadania.
To ustawienie jest odzwierciedlone w nowej pracy, w podejściu sharded do interakcji z LLM.
Autorzy zauważają, że LLM często generują zbyt długie odpowiedzi i nadal polegają na własnych spostrzeżeniach nawet po tym, jak okazało się, że są one błędne lub niewłaściwe. Ta tendencja, w połączeniu z innymi czynnikami, może spowodować, że system całkowicie straci ślad rozmowy.
W rzeczywistości badacze zauważają to, co wiele z nas znalazło anegdotycznie – że najlepszym sposobem, aby rozmowę wrócić na właściwe tory, jest rozpoczęcie nowej rozmowy z LLM.
‘Jeśli rozmowa z LLM nie doprowadziła do oczekiwanych wyników, rozpoczęcie nowej rozmowy, która powtarza te same informacje, może dać znacznie lepsze wyniki niż kontynuowanie trwającej rozmowy.’
‘To dlatego, że bieżące LLM mogą zgubić się w rozmowie, a nasze eksperymenty pokazują, że kontynuowanie rozmowy z modelem jest nieskuteczne. Ponadto, ponieważ LLM generują tekst z losowością, nowa rozmowa może doprowadzić do poprawy wyników.’
Autorzy uznają, że systemy agencji, takie jak Autogen lub LangChain, mogą potencjalnie poprawić wyniki, działając jako warstwy interpretacyjne między użytkownikiem a LLM, komunikując się z LLM tylko wtedy, gdy zgromadzą wystarczająco wielu sharded odpowiedzi, aby utworzyć jedną spójną kwerendę (której użytkownik nie zostanie poddany).
Jednak autorzy twierdzą, że oddzielna warstwa abstrakcji nie powinna być konieczna, lub powinna być zbudowana bezpośrednio w źródłowym LLM:
‘Można twierdzić, że możliwości wieloturkowe nie są konieczną cechą LLM, ponieważ mogą być przeniesione do ramy agenta. Innymi słowy, czy potrzebujemy rodzimej obsługi wielu tur w LLM, gdy ramy agenta mogą prowadzić interakcje z użytkownikami i wykorzystywać LLM tylko jako operatorów jednej tury?…’
Ale po przetestowaniu tej propozycji w swoich przykładach, dochodzą do wniosku:
‘[Ufanie] na ramie agenta do przetwarzania informacji może być ograniczające, a twierdzimy, że LLM powinny rodzinnie obsługiwać interakcje wieloturkowe’
To interesujący nowy artykuł nosi tytuł LLM Get Lost In Multi-Turn Conversation i pochodzi od czterech badaczy z MS Research i Salesforce,
Fragmentaryzacja rozmów
Nowa metoda najpierw rozdziela konwencjonalne instrukcje jednej tury na mniejsze fragmenty, zaprojektowane do wprowadzania w kluczowych momentach podczas interakcji z LLM, struktura, która odzwierciedla eksploracyjny, wahający się styl zaangażowania widoczny w systemach takich jak ChatGPT lub Google Gemini.
Każda oryginalna instrukcja jest pojedynczą, samodzielną podpowiedzią, która dostarcza całe zadanie w jednym przejściu, łącząc pytanie na wysokim poziomie, kontekst pomocy i wszelkie istotne warunki. Wersja sharded rozdziela to na wiele mniejszych części, z każdym fragmentem dodając tylko jeden element informacji:
<img class=" wp-image-217458" src="https://www.unite.ai/wp-content/uploads/2025/05/sharded-and-unsharded.jpg" alt="Pary instrukcji pokazujące (a) kompletną podpowiedź dostarczoną w jednej turze i (b) jej wersję sharded używaną do symulacji niedookreślonej, wieloturkowej interakcji. Semantycznie, każda wersja dostarcza ten sam ładunek informacyjny.” width=”908″ height=”213″ /> Pary instrukcji pokazujące (a) kompletną podpowiedź dostarczoną w jednej turze i (b) jej wersję sharded używaną do symulacji niedookreślonej, wieloturkowej interakcji. Semantycznie, każda wersja dostarcza ten sam ładunek informacyjny.
Pierwszy fragment zawsze wprowadza główny cel zadania, podczas gdy reszta dostarcza wyjaśniające szczegóły. Razem dostarczają ten sam treść, co oryginalna podpowiedź, ale rozłożony naturalnie na wiele tur w rozmowie.
Każda symulowana rozmowa rozgrywa się między trzema komponentami: asystentem, modelem poddawanym ocenie; użytkownikiem, symulowanym agentem z dostępem do pełnej instrukcji w postaci sharded; oraz systemem, który nadzoruje i ocenia wymianę.
Rozmowa zaczyna się od ujawnienia pierwszego fragmentu przez użytkownika i odpowiedzi asystenta. System klasyfikuje tę odpowiedź do jednej z kilku kategorii, takich jak wniosek o wyjaśnienie lub pełna próba odpowiedzi.
Jeśli model próbuj odpowiedzieć, oddzielny komponent wyodrębnia tylko istotny zakres do oceny, ignorując wszelki otaczający tekst. Na każdej nowej turze użytkownik ujawnia jeden dodatkowy fragment, wywołując kolejną odpowiedź. Wymiana trwa, aż model uzyska odpowiedź poprawną lub nie ma już fragmentów do ujawnienia:
<img class=" wp-image-217459" src="https://www.unite.ai/wp-content/uploads/2025/05/simulating-sharded-conversations.jpg" alt="Diagram symulacji rozmowy sharded, z modelem ocenianym wyróżnionym na czerwono.” width=”906″ height=”265″ /> Diagram symulacji rozmowy sharded, z modelem ocenianym wyróżnionym na czerwono.
Wczesne testy pokazały, że modele często pytają o informacje, które jeszcze nie zostały udostępnione, więc autorzy porzucili pomysł ujawniania fragmentów w ustalonej kolejności. Zamiast tego symulator został użyty do decyzji, który fragment ujawnić jako następny, w zależności od przebiegu rozmowy.
Symulator użytkownika, zaimplementowany przy użyciu GPT-4o-mini, miał pełny dostęp do całej instrukcji i historii rozmowy, a jego zadaniem było decydowanie, na każdej turze, który fragment ujawnić jako następny, w zależności od przebiegu wymiany.
Symulator użytkownika również przeformułowywał każdy fragment, aby utrzymać płynność rozmowy, nie zmieniając znaczenia. To pozwoliło symulacji odzwierciedlać “dawanie i branie” prawdziwej rozmowy, przy zachowaniu kontroli nad strukturą zadania.
Przed rozpoczęciem rozmowy asystent otrzymuje tylko podstawowe informacje niezbędne do wykonania zadania, takie jak schemat bazy danych lub odniesienie do interfejsu API. Nie jest informowany, że instrukcje będą rozdzielone, i nie jest nakierowany na konkretny sposób obsługi rozmowy. To jest robione celowo: w prawdziwym użyciu modele są prawie nigdy nieinformowane, że podpowiedź będzie niekompletna lub zaktualizowana w czasie, a pominięcie tego kontekstu pomaga symulacji odzwierciedlać, jak model zachowuje się w bardziej realistycznym kontekście.
GPT-4o-mini został również użyty do decydowania, jak odpowiedzi modelu powinny być klasyfikowane, oraz do wyciągnięcia ostatecznych odpowiedzi z tych odpowiedzi. To pomogło symulacji pozostać elastyczną, ale wprowadziło okazjonalne błędy: jednak po sprawdzeniu kilkuset rozmów ręcznie, autorzy stwierdzili, że mniej niż pięć procent miało jakiekolwiek problemy, a mniej niż dwa procent pokazały zmianę wyniku z powodu nich, i uznali to za wystarczająco niski wskaźnik błędów w ramach projektu.
Scenariusze symulacji
Autorzy użyli pięciu typów symulacji, aby przetestować zachowanie modelu w różnych warunkach, każdy z nich jest wariacją na to, jak i kiedy części instrukcji są ujawnione.
W ustawieniu Full model otrzymuje całą instrukcję w jednej turze. To reprezentuje standardowy format benchmarkowy i służy jako podstawa wydajności.
Ustawienie Sharded rozdziela instrukcję na wiele części i dostarcza je jeden po drugim, symulując bardziej realistyczną, niedookreśloną rozmowę. To jest główne ustawienie używane do testowania, jak dobrze modele radzą sobie z wejściem wieloturkowym.
W ustawieniu Concat fragmenty są ponownie zszywane jako jeden list, zachowując ich sformułowanie, ale usuwając strukturę tur. To pomaga izolować efekty fragmentacji rozmowy od przeformułowania lub utraty treści.
Ustawienie Recap działa jak Sharded, ale dodaje ostateczną turę, w której wszystkie poprzednie fragmenty są powtórzone przed udzieleniem przez model ostatecznej odpowiedzi. To testuje, czy podsumowująca podpowiedź może pomóc odzyskać zagubiony kontekst.
Wreszcie, Snowball idzie dalej, powtarzając wszystkie poprzednie fragmenty na każdej turze, utrzymując pełną instrukcję widoczną, gdy rozmowa się rozwija – i oferując bardziej wyrozumiały test zdolności wieloturkowych.
<img class=" wp-image-217460" src="https://www.unite.ai/wp-content/uploads/2025/05/simulation-types.jpg" alt="Typy symulacji oparte na instrukcjach sharded. W pełni określona podpowiedź jest rozdzielona na mniejsze części, które mogą być następnie użyte do symulowania albo rozmów jednej tury (Full, Concat), albo wieloturkowych (Sharded, Recap, Snowball), w zależności od tego, jak szybko informacje są ujawnione.” width=”839″ height=”410″ /> Typy symulacji oparte na instrukcjach sharded. W pełni określona podpowiedź jest rozdzielona na mniejsze części, które mogą być następnie użyte do symulowania albo rozmów jednej tury (Full, Concat), albo wieloturkowych (Sharded, Recap, Snowball), w zależności od tego, jak szybko informacje są ujawnione.
Zadania i metryki
Wybrano sześć zadań generacyjnych, aby objąć zarówno programowanie, jak i domeny języka naturalnego: podpowiedzi generowania kodu pochodziły z HumanEval i LiveCodeBench; zapytania Text-to-SQL pochodziły z Spider; wywołania interfejsu API były konstruowane przy użyciu danych z Berkeley Function Calling Leaderboard; elementarne problemy matematyczne były dostarczane przez GSM8K; zadania podpisania tabelarycznego były oparte na ToTTo; oraz podsumowania wielodokumentowe były pobierane z Summary of a Haystack dataset.
Wydajność modelu była mierzona przy użyciu trzech podstawowych metryk: średniej wydajności, zdolności i niewiarygodności.
Średnia wydajność ujmowała, jak dobrze model radził sobie ogólnie w wielu próbach; zdolność odzwierciedlała najlepsze wyniki, jakie model mógł osiągnąć, oparte na jego najlepszych odpowiedziach; oraz niewiarygodność mierzyła, jak bardzo te wyniki się różniły, z większymi lukami między najlepszymi i najgorszymi wynikami wskazującymi na mniej stabilne zachowanie.
Wszystkie wyniki były umieszczane na skali 0-100, aby zapewnić spójność w całym zadaniu, a metryki były obliczane dla każdej instrukcji – a następnie średnie, aby dać ogólny obraz wydajności modelu.
<img class=" wp-image-217462" src="https://www.unite.ai/wp-content/uploads/2025/05/code.jpg" alt="Sześć zadań sharded użytych w eksperymentach, obejmujących zarówno programowanie, jak i generację języka naturalnego. Każde zadanie jest pokazane z pełną instrukcją i jej wersją sharded. Między 90 a 120 instrukcji zostało dostosowanych z uznanych benchmarków dla każdego zadania.” width=”863″ height=”500″ /> Sześć zadań sharded użytych w eksperymentach, obejmujących zarówno programowanie, jak i generację języka naturalnego. Każde zadanie jest pokazane z pełną instrukcją i jej wersją sharded. Między 90 a 120 instrukcji zostało dostosowanych z uznanych benchmarków dla każdego zadania.
Konkurenci i testy
W początkowych symulacjach (z oszacowanym kosztem 5000 dolarów) 600 instrukcji obejmujących sześć zadań zostało sharded i użytych do symulowania trzech typów rozmów: full, concat i sharded. Dla każdej kombinacji modelu, instrukcji i typu symulacji, uruchomiono dziesięć rozmów, wytwarzając ponad 200 000 symulacji – schemat, który umożliwił uchwycenie zarówno ogólnej wydajności, jak i głębszych miar zdolności i niezawodności.
Przetestowano piętnaście modeli, obejmujących szeroki zakres dostawców i architektur: modele OpenAI GPT-4o (wersja 2024-11-20), GPT-4o-mini (2024-07-18), GPT-4.1 (2025-04-14) oraz model myślowy o3 (2025-04-16).
Modele Anthropic były Claude 3 Haiku (2024-03-07) i Claude 3.7 Sonnet (2025-02-19), dostępne za pośrednictwem Amazon Bedrock.
Google wniósł Gemini 2.5 Flash (preview-04-17) i Gemini 2.5 Pro (preview-03-25). Modele Meta były Llama 3.1-8B-Instruct i Llama 3.3-70B-Instruct, a także Llama 4 Scout-17B-16E, za pośrednictwem Together AI.
Inne wpisy to OLMo 2 13B, Phi-4 i Command-A, wszystkie dostępne lokalnie za pośrednictwem Ollama lub Cohere API; oraz Deepseek-R1, dostępny za pośrednictwem Amazon Bedrock.
Dla dwóch ‘myślących’ modeli (o3 i R1) limity tokenów zostały podniesione do 10 000, aby pomieścić dłuższe łańcuchy myślowe:

Średnie wyniki wydajności dla każdego modelu w sześciu zadaniach: kod, baza danych, akcje, dane do tekstu, matematyka i podsumowanie. Wyniki są pokazane dla trzech typów symulacji: pełnej, concat i sharded. Modele są uporządkowane według ich średniego wyniku w ustawieniu pełnym. Cieniowanie odzwierciedla stopień spadku wydajności od ustawienia pełnego, z dwoma ostatnimi kolumnami raportującymi średnie spadki dla concat i sharded w porównaniu z pełnym.
W odniesieniu do tych wyników autorzy stwierdzają†:
‘Na wysokim poziomie, każdy model widzi spadek wydajności we wszystkich zadaniach, gdy porównujemy pełne i sharded wyniki, ze średnim spadkiem o -39%. Nazywamy to zjawisko Lost in Conversation: modele, które osiągają wyśmienite (90%+) wyniki w laboratoryjnym ustawieniu w pełni określonej, jednej tury rozmowy, mają trudności w tych samych zadaniach w bardziej realistycznym ustawieniu, gdy rozmowa jest niedookreślona i wieloturkowa.’
Concat wyniki średnio wynoszą 95 procent wyników pełnych, co wskazuje, że spadek wydajności w ustawieniu sharded nie może być wyjaśniony utratą informacji. Mniejsze modele, takie jak Llama3.1-8B-Instruct, OLMo-2-13B i Claude 3 Haiku, wykazywały większy spadek w ustawieniu concat, co sugeruje, że mniejsze modele są ogólnie mniej odporne na przeformułowanie niż większe.
Autorzy zauważają†:
‘Co zaskakujące, modele o lepszej wydajności (Claude 3.7 Sonnet, Gemini 2.5, GPT-4.1) mają równie duże straty w rozmowie w porównaniu z mniejszymi modelami (Llama3.1-8B-Instruct, Phi-4), ze średnimi spadkami o 30-40%. To częściowo wynika z definicji metryk. Ponieważ mniejsze modele osiągają niższe wyniki absolutne w FULL, mają mniej możliwości spadku niż lepsze modele.
‘Krótko mówiąc, niezależnie od tego, jak silna jest wydajność jednej tury LLM, obserwujemy duże spadki wydajności w ustawieniu wieloturkowym.’
Początkowy test wskazuje, że niektóre modele radzą sobie lepiej w określonych zadaniach: Command-A w akcjach, Claude 3.7 Sonnet i GPT-4.1 w kodzie; oraz Gemini 2.5 Pro w danych do tekstu, co wskazuje, że zdolność wieloturkowa różni się w zależności od domeny. Modele myślowe, takie jak o3 i Deepseek-R1, nie radziły sobie lepiej ogólnie, być może dlatego, że ich dłuższe odpowiedzi wprowadzały więcej założeń, które miały tendencję do wprowadzania zamieszania w rozmowę.
Niezawodność
Związek między zdolnością a niezawodnością, widoczny w symulacjach jednej tury, wydaje się rozpadnąć w warunkach wieloturkowych. Podczas gdy zdolność spada tylko nieznacznie, niezawodność podwaja się średnio. Modele, które były stabilne w pełnych podpowiedziach, takie jak GPT-4.1 i Gemini 2.5 Pro, stawały się równie kapryśne jak słabsze modele, takie jak Llama3.1-8B-Instruct lub OLMo-2-13B, gdy instrukcja była fragmentaryzowana.

Przegląd zdolności i niezawodności, jak pokazano w wykresie pudełkowym (a), po którym następują wyniki niezawodności z eksperymentów z piętnastoma modelami (b), oraz wyniki z testu stopniowego shardingu, gdzie instrukcje były dzielone na jeden do ośmiu fragmentów (c).
Odpowiedzi modelu często różniły się o tyle, co 50 punktów w tym samym zadaniu, nawet gdy nic nowego nie zostało dodane, co sugeruje, że spadek wydajności nie był spowodowany brakiem umiejętności, ale modelem stającym się coraz bardziej niestabilnym w czasie tur.
Artykuł stwierdza†:
‘[Chociaż] lepsze modele mają nieznacznie wyższą zdolność wieloturkową, wszystkie testowane modele wykazują podobne poziomy niezawodności. Innymi słowy, w ustawieniu wieloturkowym i niedookreślonym, wszystkie testowane modele wykazują bardzo wysoką niezawodność, ze spadkiem wydajności o 50 punktów średnio między najlepszymi i najgorszymi symulowanymi przebiegami dla ustalonej instrukcji.’
Aby przetestować, czy spadek wydajności był związany z liczbą tur, autorzy przeprowadzili eksperyment z stopniowym shardingiem, dzieląc każdą instrukcję na jeden do ośmiu fragmentów (patrz kolumna po prawej stronie powyższego obrazu).
Im więcej fragmentów rosło, tym niezawodność rosła stabilnie, potwierdzając, że even niewielki wzrost liczby tur sprawia, że modele stają się bardziej niestabilne. Zdolność pozostała w dużej mierze niezmieniona, potwierdzając, że problem leży w konsystencji, a nie w zdolności.
Kontrola temperatury
Oddzielny zestaw eksperymentów przetestował, czy niezawodność była po prostu produktem losowości. Aby to zrobić, autorzy zmieniali ustawienie temperatury zarówno asystenta, jak i symulatora użytkownika, na trzy wartości: 1,0, 0,5 i 0,0.
W formatach jednej tury, takich jak pełne i concat, zmniejszenie temperatury asystenta znacznie poprawiło niezawodność, redukując zmienność o tyle, co 80 procent; ale w ustawieniu sharded ta sama interwencja miała niewielki wpływ:

Wyniki niezawodności dla różnych kombinacji temperatur asystenta i użytkownika w ustawieniach pełnym, concat i sharded, z niższymi wartościami wskazującymi większą spójność odpowiedzi.
Nawet gdy zarówno asystent, jak i użytkownik zostali ustawieni na temperaturę zero, niezawodność pozostała wysoka, z modelem GPT-4o wykazującym zmienność wokół 30 procent, co sugeruje, że niestabilność widziana w rozmowach wieloturkowych nie jest tylko szumem stochastycznym, ale słabością strukturalną w tym, jak modele obsługują fragmentaryzowane dane wejściowe.
Implikacje
Autorzy piszą o implikacjach swoich odkryć w nietypowy sposób na końcu artykułu, twierdząc, że silna wydajność jednej tury nie gwarantuje niezawodności wieloturkowej, i ostrzegając przed zbyt dużym poleganiem na w pełni określonych benchmarkach przy ocenianiu gotowości do świata rzeczywistego (ponieważ takie benchmarki maskują niestabilność w bardziej naturalnych, fragmentaryzowanych interakcjach).
Zalecają również, że niezawodność nie jest tylko artefaktem próbkowania, ale podstawową ograniczeniem w tym, jak bieżące modele przetwarzają ewoluujące dane wejściowe, i sugerują, że to podnosi obawy dotyczące ram agentów, które polegają na utrzymującym się rozumowaniu w czasie tur.
W końcu twierdzą, że zdolność wieloturkowa powinna być traktowana jako podstawowa zdolność LLM, a nie coś, co można przerzucić na zewnętrzne systemy.
Autorzy zauważają, że ich wyniki zaniżają prawdziwą skalę problemu i zwracają uwagę na idealne warunki testu: symulator użytkownika w ich ustawieniu miał pełny dostęp do instrukcji i mógł ujawniać fragmenty w optymalnej kolejności, co dało asystentowi nierzeczywiste korzyści.
Dodatkowo asystent był oceniany natychmiast po każdej turze, zanim cała rozmowa się rozwinęła, uniemożliwiając późniejsze zamieszanie lub sprzeczności z samym sobą, co inaczej pogorszyłoby wydajność.
Te wybory, choć konieczne do kontroli eksperymentalnej, oznaczają, że luki w niezawodności obserwowane w praktyce są prawdopodobnie jeszcze większe niż te zgłoszone.
Kończą:
‘[Wierzymy, że przeprowadzone symulacje reprezentują łagodne środowisko testowe dla zdolności wieloturkowych LLM. Ponieważ warunki symulacji są zbyt uproszczone, uważamy, że obserwowany spadek w eksperymentach jest najprawdopodobniej zaniżeniem niezawodności LLM i częstotliwości, z jaką LLM zgubią się w rozmowach w środowiskach rzeczywistych.‘
Podsumowanie
Każdy, kto spędził znaczną ilość czasu z LLM, prawdopodobnie rozpozna problemy sformułowane tutaj, z praktycznego doświadczenia; i większość z nas, wydaje mi się, porzuciła “zgubione” rozmowy LLM na rzecz nowych, w nadziei, że LLM “zacznie od nowa” i przestanie obsesyjnie zajmować się materiałem, który pojawił się w długiej, skręconej i coraz bardziej wściekłej wymianie.
To ciekawe, że rzucanie więcej kontekstu na problem może nie koniecznie rozwiązać go; i rzeczywiście, obserwować, że artykuł podnosi więcej pytań, niż dostarcza odpowiedzi (poza sposobami, aby ominąć ten problem).
* Niepokojąco, to nie jest związane z konwencjonalnym znaczeniem ‘sharding’ w AI.
† Własne wyróżnienia autorów.
Pierwotnie opublikowane w poniedziałek, 12 maja 2025










