CodeSteer: Inteligencja wspomagana. Rewolucja w rozumowaniu LLM
Duże modele językowe (LLM), choć imponujące w rozumieniu i generowaniu tekstu, często napotykają trudności przy zadaniach wymagających precyzyjnej logiki symbolicznej lub obliczeń. Ich zdolność do wnioskowania tekstowego, choć doskonała w interpretacji kontekstu, staje się obciążeniem, gdy napotykają na problemy matematyczne czy algorytmiczne. Mimo że niektóre LLM-y potrafią generować kod, brakuje im intuicji, kiedy kod jest niezbędny i jak efektywnie go zastosować. Tę lukę ma wypełnić CodeSteer, innowacyjny system opracowany przez badaczy z MIT.
Trener dla LLM-ów
CodeSteer, sam będący mniejszym modelem językowym, działa jako inteligentny asystent, który iteracyjnie prowadzi większe LLM-y, wskazując im, kiedy mają przełączyć się z generowania tekstu na generowanie kodu i na odwrót, aż do momentu uzyskania prawidłowej odpowiedzi. System analizuje bieżące i poprzednie rozwiązania większego modelu, a następnie dostarcza wskazówek, jak poprawić lub dopracować wynik. Efektem jest imponujący wzrost dokładności — o ponad 30% w zadaniach symbolicznych, takich jak mnożenie liczb, sudoku czy układanie bloków.
Chuchu Fan, profesor aeronautyki i astronautyki oraz główny badacz w MIT Laboratory for Information and Decision Systems (LIDS), podkreśla, że zamiast dążyć do stworzenia jednego, wszechwiedzącego modelu, ich podejście polega na umożliwieniu LLM-om wybierania odpowiednich narzędzi i wykorzystania eksperckiej wiedzy z innych dziedzin. To odzwierciedla analogię do ludzkiej inteligencji, która efektywnie korzysta z wyspecjalizowanych narzędzi w zależności od problemu.
Wyjście poza tekstowe rozumowanie
Typowy LLM, zapytany o to, która liczba jest większa – 9.11 czy 9.9 – często udzieli błędnej odpowiedzi, opierając się na rozumowaniu tekstowym. Gdyby jednak został poinstruowany, by użyć kodu, mógłby wygenerować i wykonać skrypt Pythona, łatwo rozwiązując problem. Modele językowe, z natury rzeczy, priorytetowo traktują język naturalny. Choć potrafią generować kod, często jest on nieefektywny lub błędny.
Zamiast kosztownego i ryzykownego przetrenowywania potężnych modeli, takich jak GPT-4 czy Claude, badacze z MIT wybrali inną drogę: dostrojenie mniejszego, lżejszego modelu – CodeSteer – który pełni rolę przewodnika między trybami tekstowym i kodowym. Takie podejście nie ingeruje w główne zdolności większego LLM-a, co eliminuje ryzyko osłabienia jego innych funkcji.
Yongchao Chen, jeden z autorów badania, porównuje CodeSteer do trenera sportowego, który, choć sam nie jest lepszy od gwiazdy drużyny, potrafi udzielać skutecznych wskazówek, prowadzących sportowca do sukcesu. CodeSteer działa w harmonii z większym LLM-em. Najpierw ocenia zapytanie, decydując, czy lepsze będzie rozumowanie tekstowe, czy generowanie kodu, a także jaki rodzaj kodu będzie najbardziej efektywny. Następnie generuje odpowiednią podpowiedź dla większego modelu, kierując go do użycia konkretnego trybu. Jeśli odpowiedź jest błędna, CodeSteer kontynuuje iterowanie, sugerując różne strategie, takie jak włączenie algorytmu wyszukiwania czy ograniczenia do kodu Pythona, aż do uzyskania właściwego rozwiązania.
Unikatowe wyzwania i przyszłość
Badacze z MIT zauważyli, że większe LLM-y mają tendencję do wybierania krótszych, mniej efektywnych kodów, które nie zawsze prowadzą do poprawnych obliczeń symbolicznych. CodeSteer został zaprojektowany, aby zapobiegać temu problemowi, oceniając złożoność kodu i sygnalizując jego nieefektywność. Wbudowany w CodeSteer moduł sprawdzający poprawność odpowiedzi prosi LLM-a o wygenerowanie kodu weryfikującego własne rozwiązanie.
Brakowało odpowiednich zbiorów danych do dostrojenia i testowania CodeSteer, ponieważ istniejące benchmarki rzadko wskazywały, czy zapytanie powinno być rozwiązane tekstem, czy kodem. Badacze stworzyli więc własny zestaw danych, nazwany SymBench, zawierający 37 złożonych zadań symbolicznych, obejmujących rozumowanie przestrzenne, matematykę, porządkowanie i optymalizację. W eksperymentach CodeSteer przewyższył wszystkie dziewięć metod bazowych, zwiększając średnią dokładność z 53,3% do 86,4%, zachowując przy tym wydajność nawet na wcześniej niewidzianych zadaniach i w przypadku różnych LLM-ów.
Jinsung Yoon z Google Cloud AI podkreśla, że to proste, a jednocześnie wpływowe rozwiązanie pozwala najnowocześniejszym LLM-om osiągnąć znaczącą poprawę wydajności bez bezpośredniego dostrajania. Chi Wang z Google DeepMind dodatkowo akcentuje znaczenie trenowania mniejszego, specjalistycznego modelu do strategicznego prowadzenia większych, zaawansowanych modeli, co otwiera drogę do bardziej zaawansowanych aplikacji AI w złożonych scenariuszach świata rzeczywistego.
W przyszłości badacze planują usprawnić CodeSteer, aby przyspieszyć proces iteracyjnego podpowiadania oraz zbadać, jak skutecznie dostroić zunifikowany model, który autonomicznie przełączałby się między rozumowaniem tekstowym a generowaniem kodu, eliminując potrzebę oddzielnego asystenta.
