Open B M B przeskalował swój mały model z jednego miliarda parametrów do dwóch i twierdzi, że bije teraz modele czteromiliardowe. Sam Witteveen sprawdził to lokalnie na trzech wersjach modelu naraz i odpowiedź brzmi: częściowo. Na części benchmarków Mini C P M pięć faktycznie wyprzedza Quena trzy i pół o czterech miliardach parametrów, na części przegrywa z nim dwukrotnie. Ale w testach wywołań funkcji model zalicza osiem na osiem, chodzi z prędkością ponad czterystu tokenów na sekundę i — co ważniejsze — nie udaje, że coś wie, kiedy ma do dyspozycji narzędzie. To czyni z niego dobrego kandydata na sub-agenta.
Skalowanie dwukrotne, ten sam przepis
Kilka miesięcy temu Open B M B wypuścił wersję o jednym miliardzie parametrów. To był mały model kognitywny wycelowany w agentów kodujących i użycie narzędzi. Teraz wraca druga pozycja serii: dwa miliardy parametrów, choć w praktyce jest to raczej dwa i pół miliarda.
Przepis został w dużej mierze ten sam, tylko przeskalowany dwukrotnie. Pytanie brzmiało: czy podwojenie danych i post-treningu nagle czyni ten model realnie zdatnym do trudnego wywoływania funkcji? I czy razem z tym skaluje się też część agentowa?
Na wykresach producenta model wychodzi na prowadzenie nad Quenem trzy i pół o czterech miliardach parametrów, między innymi na S W E bench verified.
Co się zmieniło w treningu
Nadzorowane dostrajanie wersji jednomiliardowej to było dwieście miliardów tokenów głębokiego myślenia plus dwieście miliardów tokenów hybrydowych. Wersja dwumiliardowa poszła w czterysta miliardów tokenów wyłącznie głębokiego myślenia.
Zmiany widać też w etapie uczenia ze wzmocnieniem i w destylacji on-policy. Pojawia się coś, co autorzy nazywają R L dwa, czyli Just R L dwa. Ma o tym powstać osobny artykuł naukowy, na razie jest wczesny preprint. Kluczowa różnica polega na dołożeniu krytyka do procesu uczenia ze wzmocnieniem. Autorzy twierdzą, że daje to lepszą stabilność niż klasyczne G R P O, i że model wyraźnie zyskuje na wielu benchmarkach.
Cały post-trening rozbija się na trzy części:
- Standardowe nadzorowane dostrajanie, które ustawia format wyjścia i podstawowe zachowania myślowe.
- Uczenie ze wzmocnieniem osobno per domena, z wieloma modelami eksperckimi. Osobno zadania rozumowania, osobno zadania ogólne, osobno część agentowa. Każdy ekspert musi być dobry tylko w jednej rzeczy.
- Warstwa destylacji on-policy, w której model próbkuje własne trajektorie, porównuje je z modelami nauczycielskimi i aktualizuje się w pętli.
Efekt jest taki, że model wyraźnie przewyższa inne modele dwumiliardowe, a z czteromiliardowymi radzi sobie zaskakująco dobrze. Przejście z jednego miliarda do dwóch nie jest dużym kosztem, a w zamian dostajemy model istotnie lepszy, który ma też trochę wiedzy ogólnej.
Na G P Q A Diamond wynik jest nieco poniżej modelu czteromiliardowego, ale znacznie powyżej innych dwumiliardowych. Od modeli frontierowych, które siedzą w wysokich dziewięćdziesiątkach, dzielą go lata świetlne. Ale nie tak dawno taki wynik uchodził za dobry dla modeli dziesięć do stu razy większych.
Gdzie skalowanie nie zadziałało
Czy wszystko się przeskalowało i czy model naprawdę bije modele czteromiliardowe? Nie.
Na S W E bench Pro Quen jest istotnie lepszy — mniej więcej dwukrotnie. Na Terminal Bench Mini C P M pięć zostaje daleko w tyle za Quenem. Wciąż wyprzedza wiele innych modeli czteromiliardowych, ale nie ten konkretny.
Warto przy tym pamiętać, że Quen ma zapewne dużo większy budżet na pre-trening, więcej tokenów i więcej wszystkiego. Szkoda, że naprawdę małe modele Quena nie doczekały się jeszcze aktualizacji do wersji trzy i osiem. Być może przyjdzie to z generacją Quen cztery.
Wersje modelu
Open B M B wypuścił cały zestaw:
- Model finalny, ze wszystkimi etapami treningu.
- Modele po samym nadzorowanym dostrajaniu, przed uczeniem ze wzmocnieniem.
- Modele z etapu mid-training.
- Model bazowy.
- Zestaw kwantyzacji oraz wariant D Spark, przydatny przy dekodowaniu spekulatywnym.
Przy tej wielkości dochodzi jeszcze jedna zaleta: model bardzo łatwo dostroić pod własny przypadek użycia.
Test lokalny: gdzie model nie błyszczy
Witteveen uruchomił trzy wersje jednocześnie: bfloat16, D Spark ze spekulatywnym dekodowaniem oraz czterobitowy G G U F na Lama c p p. Dwie większe chodziły na S G Lang, wszystko na karcie R T X Pro sześć tysięcy. Prędkości tokenów zgodnie z oczekiwaniami — bardzo dobre.
Z wiedzą model radzi sobie słabo i to było do przewidzenia. Poproszony o esej na pięć tysięcy słów przemyślał to krótko i wyprodukował tekst, który nawet z daleka nie zbliża się do zamówionej długości.
Zagadki logiczne przelatuje błyskawicznie i dochodzi do poprawnej odpowiedzi. Trudna matematyka również wypada dobrze. To wzmacnia obraz tego, w czym ten model jest naprawdę mocny.
Test z pelikanem w S V G wychodzi kiepsko. Prędkości tokenów są bardzo wysokie, ale wyniki nadają się raczej na sztukę abstrakcyjną. Podobnie z generowaniem strony w HTML-u: nie chodzi o to, że kod ma jakiś rażący błąd, tylko o to, że jest znacznie gorszy niż to, czego używa się dziś do kodowania. Ale to po prostu nie jest zadanie dla tego modelu.
Test lokalny: wywołania narzędzi
Ten model świeci gdzie indziej — w użyciu narzędzi.
Na wersji G G U F prędkość przekracza czterysta tokenów na sekundę. Podstawowy zestaw testów agentowych, sprawdzający między innymi czy model podaje poprawne argumenty funkcji, zalicza w całości.
Przy trudniejszym zestawie pojawia się jedna uwaga techniczna. Obecna konfiguracja S G Lang wygląda na zwracającą zły format wywołań narzędzi, więc wersje bfloat16 i D Spark dawały problemy. To nie wina modelu, tylko konfiguracji. Na Lama c p p z czterobitowym G G U F, gdzie można było spodziewać się wyników gorszych, wszystko działa poprawnie: osiem na osiem zaliczonych testów.
Najciekawsze pozycje z tego zestawu:
- Testy planowania, gdzie model używa wielu różnych narzędzi po kolei i musi poradzić sobie z błędami, zanim dojdzie do poprawnego wyniku.
- Odporność na wstrzykiwanie promptu, gdzie model musi wyłuskać właściwą treść mimo prób sterowania nim.
- Testy ponawiania po błędzie, czyli klasyczna słabość wcześniejszych modeli. Narzędzie celowo udaje awarię dwa razy i sprawdza się, czy model dalej próbuje uzyskać wynik. Model nie odpuszcza i dochodzi do oczekiwanej odpowiedzi.
- Przynęta z narzędziem odciągającym uwagę, gdzie model mimo wszystko trafia we właściwą informację.
Pokazany przebieg to jeden z co najmniej dziesięciu uruchomień. Odporność na wstrzykiwanie promptu zawiodła kilka razy, ale przechodzi mniej więcej w osiemdziesięciu procentach.
W piaskownicy narzędziowej model bez problemu obsługuje wiele wywołań naraz, w tym wyszukiwanie w DuckDuckGo połączone z pobraniem adresu U R L. Całość leci błyskawicznie, ponad pięćset tokenów na sekundę od początku do końca. Przy tak małym modelu duże pre-fille stron nie stanowią problemu, a wyciąganie właściwej informacji działa sprawnie.
Najważniejsza cecha: model nie udaje, że wie
Model nie próbuje opierać się na własnej wiedzy. Brak wiedzy sam w sobie nie jest problemem, dopóki model nie udaje, że ją ma. Chcemy, żeby delegował do narzędzi zamiast zmyślać.
To jest największe ryzyko przy modelach tej wielkości. Dajemy mu dużo narzędzi i prosimy, żeby ufał narzędziom, a nie sobie. Mini C P M pięć wygląda na model, który to rozumie: kiedy dostaje narzędzia, wie, żeby nie sięgać po własną wiedzę.
To dokładnie taki model, jakiego chcemy do sub-agentów. Przy pracy agentowej z wieloma wywołaniami narzędzi nie chcesz, żeby sub-agent zbyt mocno polegał na swojej wiedzy. Chcesz, żeby wyciągał właściwe rzeczy i podawał właściwe argumenty do kolejnych narzędzi.
Do czego go użyć
Warto się nim zainteresować, jeśli szukasz bardzo szybkiego modelu do wywołań funkcji nieco bardziej złożonych, niż radziła sobie wersja jednomiliardowa. Jego siła została wytrenowana i wypchnięta do granic właśnie w stronę użycia narzędzi. Dobrze wypada też w rozumowaniu matematycznym i części zadań z podążaniem za instrukcją.
Zalecane zastosowanie to sub-agenty i wszędzie tam, gdzie potrzebny jest model bardzo szybki i stosunkowo prosty, obsługujący wiele różnych narzędzi i podający do nich sensowne argumenty.
Koniec artykułu.