FlexGen er en motor for å kjøre ChatGPT-lignende AI-roboter på enkelt GPU-systemer

Et team av forskere fra Stanford University, University of California i Berkeley, ETH Zurich, Graduate School of Economics, Carnegie Mellon University, samt Yandex og Meta, har publisert kildekoden til en motor for å kjøre store språkmodeller på ressurs -begrensede systemer. Motoren gir for eksempel muligheten til å lage funksjonalitet som minner om ChatGPT og Copilot ved å kjøre en forhåndstrent OPT-175B-modell, som dekker 175 milliarder parametere, på en vanlig datamaskin med et NVIDIA RTX3090 gaming-grafikkkort utstyrt med 24 GB videominne. Koden er skrevet i Python, bruker PyTorch-rammeverket og distribueres under Apache 2.0-lisensen.

Det inkluderer et eksempelskript for å lage roboter som lar deg laste ned en av de offentlig tilgjengelige språkmodellene og umiddelbart begynne å kommunisere (for eksempel ved å kjøre kommandoen "python apps/chatbot.py —model facebook/opt-30b — -prosent 0 100 100 0 100 0” ). Som en base foreslås det å bruke en stor språkmodell utgitt av Facebook, trent på samlingene til BookCorpus (10 tusen bøker), CC-Stories, Pile (OpenSubtitles, Wikipedia, DM Mathematics, HackerNews, etc.), Pushshift. io (basert på Reddit-data ) og CCNewsV2 (nyhetsarkiv). Modellen dekker omtrent 180 milliarder tokens (800 GB data). 33 dager med klyngedrift med 992 NVIDIA A100 80GB GPUer ble brukt på å trene modellen.

Når du kjører OPT-175B-modellen på et system med en enkelt NVIDIA T4 GPU (16 GB), demonstrerte FlexGen-motoren ytelse opptil 100 ganger raskere enn tidligere tilbudte løsninger, noe som gjorde bruken av store språkmodeller rimeligere og tillot dem å kjøre på systemer uten dedikerte akseleratorer. Samtidig kan FlexGen skalere for å parallellisere beregninger med flere GPUer. For å redusere størrelsen på modellen brukes i tillegg et proprietært parameterkomprimeringsskjema og en modellbufringsmekanisme.

Foreløpig støtter FlexGen bare OPT-språkmodeller, men i fremtiden lover utviklerne også å legge til støtte for BLOOM (176 milliarder parametere, støtter 46 språk og 13 programmeringsspråk), CodeGen (kan generere kode i 22 programmeringsspråk) og GLM-modeller. Et eksempel på en dialog med en bot basert på FlexGen og OPT-30B-modellen:

Menneske: Hva heter det høyeste fjellet i verden?

Assistent: Everest.

Menneske: Jeg planlegger en tur i anledning jubileet vårt. Hvilke ting kan vi gjøre?

Assistent: Vel, det er en rekke ting du kan gjøre for jubileet ditt. Først kan du spille kort. For det andre kan du gå en tur. For det tredje kan du gå til et museum.

Kilde: opennet.ru

Legg til en kommentar