LLM: dostrajanie, oczyszczanie i inżynieria promptów

Poprzednia jednostka opisywała LLM ogólnego przeznaczenia, które są też znane jako:

  • foundation LLMs
  • LLM podstawowe
  • wytrenowane modele LLM

Podstawowy duży model językowy jest trenowany na podstawie wystarczająco dużej ilości języka naturalnego, aby „znać” znaczną ilość informacji o gramatyce, słowach i idiomach. Model językowy podstawowy może generować przydatne zdania na tematy, na których został wyszkolony. Ponadto podstawowa wersja LLM może wykonywać pewne zadania tradycyjnie nazywane „twórczymi”, takie jak pisanie poezji. Jednak generowany tekst przez model podstawowy LLM nie jest rozwiązaniem dla innych typów typowych problemów z ML, takich jak regresja czy klasyfikacja. W tych przypadkach podstawowy LLM może pełnić funkcję platformy, a nie rozwiązania.

Przekształcenie modelu podstawowego LLM w rozwiązanie, które spełnia potrzeby aplikacji, wymaga procesu zwanego dostrajaniem. Proces pomocniczy o nazwie distillation generuje mniejszą (mającą mniej parametrów) wersję dopracowanego modelu.

Dostrajanie

Badania pokazują, że zdolność rozpoznawania wzorców podstawowych modeli językowych jest tak ważna, że czasami opanowanie określonych zadań wymaga stosunkowo niewielkiego dodatkowego szkolenia. Ten dodatkowy trening pomaga modelowi lepiej przewidywać wyniki w przypadku konkretnego zadania. To dodatkowe szkolenie, nazywane dostrajaniem, pozwala poznać praktyczną stronę LLM.

Dostrojenie polega na trenowaniu modelu na przykładach odpowiadających zadaniom, które będzie wykonywać aplikacja. Czasami inżynierowie mogą dostosować podstawową LLM na podstawie zaledwie kilkuset lub kilku tysięcy przykładów treningowych.

Pomimo stosunkowo niewielkiej liczby przykładów treningowych dostrajanie standardowe jest często kosztowne pod względem obliczeń. Dzieje się tak, ponieważ standardowe dostrojenie polega na aktualizowaniu wagi i uśrednienia każdego parametru w każdej iteracji backpropagation. Na szczęście istnieje inteligentniejszy proces o nazwie optymalizacja pod kątem wydajności parametru, który pozwala dostosować model LLM przez dostosowanie tylko podzbioru parametrów w każdej iteracji propagacji wstecznej.

Dostrojone prognozy modelu są zwykle lepsze niż prognozy podstawowego LLM. Dostrojony model zawiera jednak taką samą liczbę parametrów co model podstawowy LLM. Jeśli podstawowy LLM zawiera więc 10 miliardów parametrów, dostrojona wersja również będzie zawierać 10 miliardów parametrów.

Destylacja

Większość dostrojonych modeli LLM zawiera ogromną liczbę parametrów. W efekcie podstawowe modele LLM do generowania prognoz wymagają ogromnych zasobów obliczeniowych i środowiskowych. Pamiętaj, że większość tych parametrów jest zazwyczaj nieistotna w przypadku konkretnej aplikacji.

Oczyszczanie tworzy mniejszą wersję modelu LLM. Oczyszczony model LLM generuje prognozy znacznie szybciej i wymaga mniej zasobów obliczeniowych oraz środowiskowych niż pełny model LLM. Prognozy modelu skoncentrowanego są jednak zwykle mniej dokładne niż prognozy oryginalnego modelu LLM. Pamiętaj, że modele LLM z większą liczbą parametrów prawie zawsze generują lepsze prognozy niż modele LLM z mniejszą liczbą parametrów.

Tworzenie promptów

Prompt engineering umożliwia użytkownikom LLM dostosowywanie danych wyjściowych modelu. Oznacza to, że użytkownicy końcowi określają, jak LLM ma reagować na ich prośbę.

Ludzie dobrze uczą się na przykładach. Podobnie jak duże modele językowe (LLM). Wyświetlanie jednego przykładu dla LLM nazywa się promptem „one-shot”. Załóżmy na przykład, że chcesz, aby model używał tego formatu do generowania rodziny owoców:

Użytkownik wpisuje nazwę owocu: dane wyjściowe LLM, które należą do klasy owocu.

Prompt jednorazowy wyświetla LLM pojedynczy przykład formatu, a potem prosi model o wykonanie zapytania na podstawie tego przykładu. Przykład:

peach: drupe
apple: ______

Czasami wystarczy jeden przykład. Jeśli tak, LLM wygeneruje przydatne przewidywanie. Przykład:

apple: pome

W innych przypadkach jeden przykład jest niewystarczający. Oznacza to, że użytkownik musi pokazać LLM wiele przykładów. Ten prompt zawiera 2 przykłady:

plum: drupe
pear: pome
lemon: ____

Podanie wielu przykładów to prompting oparty na kilku przykładach. Pierwsze 2 wiersze powyższego prompta można uznać za przykłady do treningu.

Czy LLM może zapewnić przydatne prognozy bez przykładów (prompty typu „zero-shot”)? Czasami, ale duże modele językowe wolą kontekst. Bez kontekstu ten prompt bez kontekstu może zwrócić informacje o firmie technologicznej, a nie owocu:

apple: _______

wnioskowanie offline

Liczba parametrów w LLM jest czasami tak duża, że przetwarzanie online jest zbyt wolne, aby można było go używać do praktycznych zadań, takich jak regresja czy klasyfikacja. W związku z tym wiele zespołów inżynierów korzysta z wnioskowania offline (nazywanego też wnioskowaniem zbiorczym lub wnioskowaniem statycznym). Inaczej mówiąc, zamiast odpowiadać na zapytania w momencie ich wyświetlania, przeszkolony model prognozuje wyniki z wyprzedzeniem, a następnie zapisuje je w pamięci podręcznej.

Nie ma znaczenia, czy LLM potrzebuje dużo czasu na wykonanie zadania, jeśli ma je wykonywać tylko raz w tygodniu lub raz w miesiącu.

Na przykład wyszukiwarka Google wykorzystała LLM do przeprowadzania wnioskowania offline, aby przechowywać w pamięci podręcznej listę ponad 800 synonimów szczepionek na COVID-19 w ponad 50 językach. Następnie wyszukiwarka Google używała tej listy do zidentyfikowania zapytań dotyczących szczepionek w ruchu rzeczywistym.

Odpowiedzialne korzystanie z LLM

Podobnie jak każda forma uczenia maszynowego, duże modele językowe mają zazwyczaj te same uprzedzenia:

  • Dane, na których je wytrenowano.
  • dane, na których zostały one wyodrębnione;

Używaj modeli LLM uczciwie i odpowiedzialnie zgodnie z lekcjami przedstawionymi na początku tego kursu.

Ćwiczenie: sprawdź swoją wiedzę

Które z tych stwierdzeń na temat modeli wielopoziomowych jest prawdziwe?
Uproszczony model LLM zawiera mniej parametrów niż model podstawowy, z którego powstał.
Tak, destylacja zmniejsza liczbę parametrów.
Dostrojony model LLM zawiera mniej parametrów niż model językowy, na podstawie którego został on trenowany.
Dopracowany model zawiera tyle samo parametrów co oryginalny językowy model podstawowy.
W miarę jak użytkownicy coraz częściej korzystają z edycji promptów, liczba parametrów w LLM rośnie.
Inżynieria promptów nie dodaje ani nie usuwa parametrów LLM ani ich nie zmienia.