SWE-Prime pokazuje, że trenowanie na starannie wybranym 10% przebiegów typu „pass” produkuje silniejsze agenty AI niż wprowadzanie do modelu każdej udanej trajektorii, co podważa wieloletni nawyk traktowania etykiety „pass” jako niezawodnego filtra jakości.

Wynik ten ma znaczenie dla każdego, kto buduje agenty do generowania kodu lub automatycznego debugowania: więcej danych nie zawsze przekłada się na lepszą wydajność, a naiwne poleganie na binarnym znaczniku pass/fail może w rzeczywistości uczyć modele błądzenia, powtarzania bezużytecznych wywołań narzędzi i polegania na szczęściu zamiast na rozumowaniu.

Dlaczego ufano znacznikowi „pass”

W większości potoków uczenia ze wzmocnieniem na podstawie informacji zwrotnej od człowieka (RLHF), inżynierowie oznaczają trajektorię — pełną sekwencję obserwacji, działań i wywołań narzędzi — jako „pass”, gdy końcowy wynik spełnia kryteria testu. Założenie jest proste: jeśli agent odniósł sukces, cały epizod musi zawierać użyteczne zachowania. Dlatego wrzucają każdy udany przebieg do puli treningowej, mając nadzieję, że model przyswoi wzorce, które doprowadziły do sukcesu.

To założenie kierowało masowym zbieraniem danych dla agentów inżynierii oprogramowania (SWE) przez wiele miesięcy. Logika wydaje się solidna: „pass” oznacza, że agent rozwiązał problem, więc epizod powinien wzmacniać polityki (policies), które to umożliwiły.

Co SWE-Prime zrobiło inaczej

Badanie SWE-Prime odwróciło ten scenariusz. Naukowcy wzięli standardowy benchmark zadań pisania kodu i podzielili udane przebiegi na dwie grupy:

  1. Wszystkie trajektorie „pass” – konwencjonalny zbiór treningowy, zawierający każdy epizod, który przeszedł test.
  2. Wyselekcjonowany 10-procentowy podzbiór – ręcznie wybrany z pełnego zbioru.

W obu grupach przeprowadzono dostrajanie (fine-tuning) identycznych architektur modeli. Podczas ewaluacji na problemach testowych (held-out), model trenowany na wyselekcjonowanym podzbiorze osiągnął lepsze wyniki niż jego odpowiednik trenowany na pełnym zbiorze „pass”.

Wzorce, które psują etykietę „pass”

Badanie skatalogowało kilka powtarzających się trybów błędów ukrytych za znacznikiem „pass”:

  • Powtarzalny spam narzędziowy – agent może wielokrotnie wywoływać ten sam kompilator lub linter, zanim w końcu uzyska poprawny wynik. Końcowy sukces maskuje nieefektywność.
  • Długie fazy błądzenia – agenci czasami wykonują pięć lub więcej nieistotnych kroków, zanim przypadkowo trafią na właściwe rozwiązanie. Epizod wciąż kończy się jako „pass”, mimo że większość trajektorii nie ma żadnej wartości instruktażowej.
  • Trywialne testy – niektóre benchmarki są tak łatwe, że agent może odnieść sukces za pomocą jednego zgadnięcia lub wykorzystując lukę. Etykieta „pass” nie odróżnia rzeczywistego rozumowania od szczęścia.

Gdy takie epizody wracają do pętli treningowej, model uczy się kojarzyć przypadkowe błądzenie i nadużywanie narzędzi z sukcesem. W efekcie agent internalizuje heurystykę „próbuj dalej, aż coś zadziała”, co jest niepożądane w systemach klasy produkcyjnej, które wymagają wydajności i interpretowalności.

Jakość na poziomie segmentu a wynik na poziomie trajektorii

Kluczowym wnioskiem z SWE-Prime jest rozróżnienie między ogólnym wynikiem trajektorii a jakością jej poszczególnych segmentów. Trajektoria to etykieta ogólna: mówi nam, czy końcowa odpowiedź była poprawna, ale ukrywa wewnętrzny proces podejmowania decyzji. Badanie wykazało, że:

  • Dobre trajektorie mogą zawierać złe segmenty – rozwiązanie, które w innych aspektach jest wydajne, może zawierać kilka zmarnowanych kroków, które nie przyczyniają się do końcowej odpowiedzi.
  • Nieudane trajektorie mogą ukrywać genialne segmenty – agent może wygenerować perfekcyjnie przemyślany plan, zanim niepowiązany błąd spowoduje niepowodzenie testu.

Oceniając segmenty zamiast całych przebiegów, badacze zachowali te epizody, w których agent działał celowo od pierwszego kroku, i odrzucili resztę. Pozwala to dopasować sygnał treningowy do wzorców rozumowania, które faktycznie chcemy, aby modele naśladowały.

Zalety kosztowe i prędkościowe

Trenowanie na jednej dziesiątej danych drastycznie obniżyło również koszty obliczeniowe. Zespół potrzebował znacznie mniej godzin GPU, a cały proces zakończył się w ułamku czasu wymaganego dla pełnego zbioru „pass”. Paradoks jest uderzający: zapłacili mniej za moc obliczeniową, osiągając jednocześnie wyższą wydajność. Dla organizacji z ograniczonym budżetem lub celami masowego wdrażania, oszczędności są znaczące.

Wyzwanie związane z selekcją

Największą przeszkodą w przyjęciu tego podejścia jest zdefiniowanie tego, co stanowi „dobry segment”. Zespół SWE-Prime zauważył, że ocenianie segmentów bez kosztownego modelu nagrody (reward model) jest trudne i wymaga sprytnej, lekkiej metryki.

Podsumowanie<turn|>

SWE-Prime pokazuje, że binarna flaga „test zaliczony” jest niewiarygodnym filtrem dla danych treningowych. Poprzez eliminację meandrujących epizodów, nadmiarowych wywołań narzędzi oraz trywialnie łatwych przebiegów, programiści mogą trenować bardziej kompetentne i wydajne agenty, jednocześnie obniżając koszty obliczeniowe. Lekcja jest jasna: jakość ma większe znaczenie niż ilość, a droga do inteligentniejszych agentów AI prowadzi przez szczegółową ocenę tego, co faktycznie wnosi każdy pojedynczy krok.