Skille przestają pomagać, gdy model mądrzeje

Projektowanie agentówZespół SwarmAttacker w JolocorpOpublikowano 7 min czytania

Czarny robotyczny szerszeń zrzucający dodatkowe skrzydła rozpadające się w czerwone cząstki: eksperckie skille zanikające na nowszych modelach

SwarmAttacker dostarczany jest z ponad 60 ręcznie napisanymi eksperckimi skillami, po jednym na klasę podatności. SQL injection, XSS, SSRF, IDOR i cała reszta dostają zwykły tekstowy poradnik: oto jak działa ta klasa, oto jak zamieniasz ją w prawdziwe ustalenie. W czasie działania wstrzykujemy pasujący skill prosto do agenta-workera, który ściga dany trop. To rzecz, którą wszyscy każą ci budować. Wyselekcjonowana wiedza ekspercka, głosi utarta mądrość, to wielka wygrana.

Zmierzyliśmy to więc w jedyny uczciwy sposób: wyłączyliśmy każdy skill i uruchomiliśmy ponownie cały zestaw 104 aplikacji. Wynik był ciekawszy niż „skille są dobre”.

Ile faktycznie kosztowało wyłączenie wszystkich skilli?

Ze wszystkimi wyłączonymi skillami wskaźnik rozwiązań spadł z 94% (98 z 104) do 87% (90 z 104). Osiem benchmarków straconych. Realnie, ale nie jest to załamanie, jakiego można by się spodziewać po wyrwaniu 60 eksperckich poradników.

A koszt poszedł w drugą stronę, mocno. Worker bez skilli zużył mniej niż połowę tokenów: z 2.14M na aplikację do 0,91M. To była największa pojedyncza zmiana kosztu spośród wszystkich komponentów, które testowaliśmy. Cała ta wstrzyknięta wiedza ekspercka nie była darmowa; była najdroższą rzeczą w prompcie, a jej usunięcie sprawiło, że agent stał się dramatycznie szczuplejszy.

Pełny system kontra brak skilli

Wyłączenie wszystkich 60 skilli kosztowało osiem benchmarków, ale ponad o połowę zmniejszyło rachunek za tokeny.

94%
pełny system
87%
brak skilli
−8
straconych benchmarków
2.14M → 0.91M
tokenów na aplikację

Przez pierwsze 20 minut agent bez skilli prowadził

Oto najlepsze. W dwudziestej minucie konfiguracja bez skilli rozwiązała więcej niż pełny system: 79 kontra 71. Przez cały pierwszy akt każdego przebiegu skille były martwym balastem. Szczupły, ogólny worker był, jeśli już, szybszy na starcie. Skille odrobiły prowadzenie dopiero w drugiej połowie, kończąc 90 do 98.

Rozwiązane w dwudziestej minucie

Przez cały pierwszy akt worker bez skilli prowadził. Prowadzenie odwróciło się dopiero pod koniec przebiegu.

Brak skilli
79
Pełny system
71

Kiedy przyjrzeliśmy się, gdzie przepadło osiem straconych benchmarków, wzorzec był czysty. Odkrywanie radziło sobie dobrze bez skilli. Worker wciąż znajdował punkt wstrzyknięcia, wciąż zdobywał przyczółek. To, co przepadało, to ostatni, specyficzny dla klasy krok: zamiana działającego przyczółka w faktyczną flagę na trudniejszych, związanych konwencją celach, gdzie trzeba znać tę jedną dokładną sztuczkę, której wymaga dana klasa. Skille są teraz narzędziem na trudny ogon, nie bazowym mnożnikiem.

Dlaczego skille zarabiają mniej na mądrzejszym modelu

Cofnij się o krok, a nabiera to sensu. Nowoczesny model bazowy zna już rzeczy powszechne. Nie musisz mówić GPT-5.5, czym jest XSS ani jak działa SQL injection oparty na UNION. Przeczytał cały internet, w tym każdy tutorial, każdy opis, każdą analizę powłamaniową z CTF, którą sparafrazowalibyśmy w skill. Eksperckie rusztowanie, które było ogromnym wsparciem na starszych modelach, po cichu zostało wchłonięte w wagi.

Nie możemy tu porównać A/B dwóch generacji modeli, więc nie będziemy udawać, że zmierzyliśmy „skille pomogły GPT-4 o X, a GPT-5.5 o Y”. Nie zmierzyliśmy. Ale kształt wyniku, model bazowy przechodzący łatwe i średnie przypadki zupełnie bez pomocy, jest dokładnie tym, czego można się spodziewać, jeśli model wchłonął już większość tego, co skille kiedyś dodawały. Na modelu frontier skille zarabiają na siebie tylko na marginesach.

Wiedza ekspercka, którą dwa lata temu wpisałbyś ręcznie w skill, jest już w modelu. W powszechnych przypadkach płacisz tokenami, by powiedzieć mu rzeczy, które zna.

Co to oznacza, jeśli budujesz

Nie wlewaj miesięcy w gigantyczną bibliotekę skilli albo RAG dla modelu frontier. Instynkt, by z góry wpychać każdy strzępek wiedzy dziedzinowej, miał sens, gdy model bazowy był słabszy; dziś w większości kupuje ci tylko większy rachunek za tokeny i wolniejszy pierwszy akt. Zamiast tego:

  • Pozwól modelowi bazowemu obsłużyć powszechne przypadki. Obsłuży je, i zrobi to szybciej bez twojego rusztowania na drodze.
  • Trzymaj skille szczupłe i wymierzone w długi ogon, związane konwencją przypadki brzegowe, gdzie liczy się dokładna sztuczka i model inaczej utknąłby o jeden krok za wcześnie.
  • Pilnuj kosztu tokenowego swojej wiedzy eksperckiej. Wstrzyknięta wiedza jest najdroższą rzeczą w prompcie. Jeśli nie podnosi wskaźnika rozwiązań, to czysty narzut.

To ta sama historia, którą obserwujemy gdzie indziej: model wciąż wchłania rusztowanie, które wokół niego budujemy. Widzieliśmy to też przy prompt engineeringu, gdzie staranne reguły, które napisaliśmy, okazały się rzeczami, które silny model już robi sam z siebie. Skille to kolejna warstwa, która robi się cienka. Buduj pod marginesy, nie pod środek.