Właśnie głęboko przeanalizowałem MiroThinker 1.5, ich sposób kompresji Agentów jest trochę dziwny, ale po zrozumieniu, rzeczywiście jest przydatny. Kluczowym rozwiązaniem jest problem „jak zmieścić 400 użyć narzędzi w kontekście 256K”. Zrobili niezwykle odważny krok: fizycznie zamaskowali Observation (wyniki zwracane przez narzędzia) w historii ReAct w think-action-observation. Oprócz zachowania oryginalnego tekstu w ostatnich K rundach, wszystkie wcześniejsze setki wyników narzędzi zostały zastąpione zdaniem „Wynik narzędzia został pominięty, aby zaoszczędzić tokeny”. Jednak wszystkie <thought> zostały w pełni zachowane. Jest tu jeden bardzo nieintuicyjny aspekt: ten agent sam w sobie prowadzi głębokie badania, więc zostawia tylko ostatnie K rund, czyli 5 rund oryginalnego tekstu, a wcześniejsze zniknęły, jak może więc odpowiadać na pytania. To stawia bardzo subtelny, ale kluczowy warunek: tak długo, jak Thought jest wystarczająco gęsty, w rzeczywistości zbliża się do podsumowania. Każda generacja Thought w istocie jest jednym zrzutem informacji modelu na temat bieżącej Observation. Kiedy T1 powstaje, kluczowe dane z O1 są już „zjedzone” przez model. Chociaż O1 zostało zastąpione miejscem, T1 nadal istnieje. T1 staje się „pakietem kompresji informacji” O1. Nie ma potrzeby dodawania osobnego Agenta Podsumowującego, ten kompletny łańcuch Thought jest sam w sobie ciągle aktualizowanym, wysokiej wierności „dynamicznym podsumowaniem”.