FlexGen, silnik do uruchamiania botów AI na jednym GPU

FlexGen

FlexGen to silnik zbudowany w celu zmniejszenia wymagań dotyczących zasobów wnioskowania dużych modeli językowych do pojedynczego procesora graficznego.

Niedawno ukazała się wiadomość, że grupa badaczy z Uniwersytetu Stanforda, Uniwersytetu Kalifornijskiego w Berkeley, ETH Zurich, Graduate School of Economics, Carnegie Mellon University, a także Yandex i Meta opublikowały kod źródłowy un silnik do uruchamiania dużych modeli językowych w systemach o ograniczonych zasobach.

z kryptonimem «FlexGen», to projekt, który ma na celu znaczne zmniejszenie wymagania zasobów dla operacji wnioskowania LLM. Opublikowany na GitHub, FlexGen wymaga tylko Pythona i PyTorch, ale w większości może być używany z pojedynczym procesorem graficznym, takim jak NVIDIA Tesla T4 lub GeForce RTX 3090.

Np. silnik zapewnia możliwość tworzenia funkcjonalności przypominających ChatGPT i Copilot uruchomienie wstępnie wytrenowanego modelu OPT-175B obejmującego 175 miliardów parametrów na zwykłym komputerze z gamingową kartą graficzną NVIDIA RTX3090 wyposażoną w 24 GB pamięci wideo.

Wspomniano, że modele (LLM) wspierają działanie narzędzi takich jak ChatGPT i Copilot. Są to duże modele, które wykorzystują miliardy parametrów i są szkolone na ogromnych ilościach danych.

Wysokie wymagania obliczeniowe i pamięciowe dla zadań wnioskowania LLM zazwyczaj wymagają użycia wysokiej klasy akceleratorów.

Cieszymy się, że opinia publiczna jest naprawdę podekscytowana FlexGen. Jednak nasza praca jest wciąż w przygotowaniu i nie jest jeszcze gotowa do publicznego wydania/ogłoszenia. Na podstawie wczesnych opinii na temat tego projektu zdaliśmy sobie sprawę, że wczesne wersje tego pliku README i naszego dokumentu były niejasne co do celu FlexGen. Jest to wstępna próba zmniejszenia wymagań LLM dotyczących zasobów, ale ma również wiele ograniczeń i nie ma na celu zastąpienia przypadków użycia, gdy dostępne są wystarczające zasoby.

Wnioskowanie LLM to proces, w którym model językowy jest używany do generowania prognoz dotyczących tekstu wejściowego: obejmuje użycie modelu językowego, takiego jak model generatywny, taki jak GPT (Generative Pretrained Transformer), do przewidywania tego, co jest najbardziej prawdopodobne wydarzyć się. być dostarczone jako odpowiedź po przechwyceniu określonego tekstu wejściowego.

O FlexGenie

Pakiet zawiera przykładowy skrypt do tworzenia botów. co pozwala użytkownikowi pobierz jeden z publicznie dostępnych modeli językowych i od razu zacznij rozmawiać.

Jako bazę proponuje się wykorzystanie dużego modelu językowego opublikowanego przez Facebooka, wytrenowanego na zbiorach BookCorpus (10 tys. książek), CC-Stories, Pile (OpenSubtitles, Wikipedia, DM Mathematics, HackerNews itp.), Pushshift.io (na podstawie danych z Reddit)) i CCNewsV2 (archiwum wiadomości).

Model obejmuje około 180 miliardów tokenów (800 GB danych). Uruchomienie klastra z 33 procesorami graficznymi NVIDIA A992 100 GB zajęło 80 dni, aby wytrenować model.

Uruchamiając OPT-175B w systemie z pojedynczym procesorem graficznym NVIDIA T4 (16 GB), silnik FlexGen wykazał do 100 razy wyższą wydajność niż wcześniej oferowane rozwiązania, dzięki czemu korzystanie z dużych modeli językowych jest bardziej przystępne cenowo i pozwala im działać w systemach bez specjalistycznych akceleratorów.

Jednocześnie FlexGen może skalować się w celu zrównoleglenia obliczeń w obecności wielu procesorów graficznych. W celu zmniejszenia rozmiaru modelu zastosowano dodatkowy schemat kompresji parametrów oraz mechanizm buforowania modelu.

Obecnie FlexGen obsługuje tylko modele językowe OPT, ale w przyszłości twórcy obiecują również dodać wsparcie dla BLOOM (176 miliardów parametrów, obsługuje 46 języków i 13 języków programowania), CodeGen (może generować kod w 22 językach programowania) oraz GLM.

Na koniec warto wspomnieć, że kod jest napisany w Pythonie, wykorzystuje framework PyTorch i jest dystrybuowany na licencji Apache 2.0.

Dla Chcesz dowiedzieć się więcej na ten temat, możesz sprawdzić szczegóły W poniższym linku.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.