wtorek, 14 maja, 2024

Deep Data

Machine Learning dla Twoich danych

News

PanGu-Coder2: Generowanie kodu dostaje boosta

Poniższy artykuł jest tłumaczeniem mojego artykułu w języku angielskim.

Nowy system AI o nazwie PanGu-Coder2 ma szansę posunąć naprzód stan sztuki w automatycznym generowaniu kodu, jak wynika z nowego artykułu badaczy z Huawei Cloud i innych. PanGu-Coder2 buduje na niedawnych postępach w dużych modelach językowych, aby tworzyć kod z poleceń w języku naturalnym, przewyższając poprzednie modele w standaryzowanych testach.

Badacze proponują nową technikę treningową o nazwie RRTF (Rank Responses to align Test&Teacher Feedback), aby usprawnić istniejący model o nazwie StarCoder z 15 miliardami parametrów. Technika ta prowadzi model dzięki rankingowaniu próbek kodu wygenerowanych z poleceń. Ranking wykorzystuje zarówno zautomatyzowane przypadki testowe, jak i preferencje ekspertów ludzkich jako sygnały informacji zwrotnej. Rozwiązania, które przechodzą więcej przypadków testowych lub są faworyzowane przez osąd ludzki, są oceniane wyżej w rankingu. Następnie model jest trenowany na tripletach: polecenie, wysoko ocenione rozwiązanie, nisko ocenione rozwiązanie, aby wzmocnić generowanie rozwiązań preferowanych przez informacje zwrotne od testów i nauczycieli. Elegancja tego podejścia precyzyjnie dostraja zachowanie modelu do właściwych standardów jakości kodu w wydajny sposób.

W standardowym teście HumanEval, PanGu-Coder2 osiągnął 61,64% dokładności w generowaniu działającego kodu z poleceń, przewyższając poprzedni najlepszy open-source’owy model WizardCoder. Pokonał również większe modele  zamknięte takie jak LaMDA od Google. PanGu-Coder2 podobnie zajął pierwsze miejsce w testach generowania kodu z realistycznych scenariuszy programistycznych, takich jak konteksty debugowania.

Sukces podkreśla potencjał korzystania z paradygmatów treningowych opartych na rankingach do dostrajania zachowania dużych modeli językowych do preferencji człowieka. Chociaż uczenie wzmacniające uzyskiwało obiecujące rezultaty dla generowania kodu, prostota i wydajność RRTF okazała się tu bardziej skuteczna. Sygnał informacji zwrotnej człowiek+test jest dobrze dostosowany do prowadzenia jakości kodu.

Badacze podkreślają znaczenie jakości danych treningowych i mocy obliczeniowej w osiągnięciu wzmocnienia zapewnianego przez RRTF. Więcej epok treningowych na różnorodnych przykładach kodu stale zwiększało wydajność. PanGu-Coder2 osiąga prawie ludzką biegłość w prostszych poleceniach kodowania, choć złożone zadania nadal stanowią dla niego wyzwanie.

Patrząc w przyszłość, łączenie RRTF z innymi technikami, takimi jak strojenie instruktażu (ang. instructor tuning), może umożliwić dalszy rozwój. Generowanie kodu ma zastosowania obejmujące rozwój oprogramowania, edukację informatyczną i wszechobecną pomoc AI. Dzięki modelom takim jak PanGu-Coder2 zbliżającym się do wyższej kompetencji, wizja AI biegłej w pisaniu oprogramowania staje się bliższa rzeczywistości.

Mariusz Wołoszyn

Ponad 20 lat pracy zawodowej w dziedzinie IT. Od bezpieczeństwa poprzez zarządzanie IT po architekturę rozwiązań cloud oraz budowę systemów Machine Learning. Od kilku lat głęboko zainteresowany Deep Learning :) Wcześniej Reinforcement Learning i sieciami neuronowymi oraz programowaniem genetycznym.

Dodaj komentarz