FlexGen er en motor til at køre ChatGPT-lignende AI-bots på enkelt GPU-systemer

Et team af forskere fra Stanford University, University of California i Berkeley, ETH Zürich, Graduate School of Economics, Carnegie Mellon University, samt Yandex og Meta, har offentliggjort kildekoden til en motor til at køre store sprogmodeller på ressourcer - begrænsede systemer. For eksempel giver motoren mulighed for at skabe funktionalitet, der minder om ChatGPT og Copilot, ved at køre en præ-trænet OPT-175B model, der dækker 175 milliarder parametre, på en almindelig computer med et NVIDIA RTX3090 gaming grafikkort udstyret med 24 GB videohukommelse. Koden er skrevet i Python, bruger PyTorch-rammeværket og distribueres under Apache 2.0-licensen.

Det inkluderer et eksempelscript til oprettelse af bots, der giver dig mulighed for at downloade en af ​​de offentligt tilgængelige sprogmodeller og straks begynde at kommunikere (for eksempel ved at køre kommandoen "python apps/chatbot.py —model facebook/opt-30b — -procent 0 100 100 0 100 0” ). Som udgangspunkt foreslås det at bruge en stor sprogmodel udgivet af Facebook, trænet på samlingerne af BookCorpus (10 tusind bøger), CC-Stories, Pile (OpenSubtitles, Wikipedia, DM Mathematics, HackerNews, etc.), Pushshift. io (baseret på Reddit-data) og CCNewsV2 (nyhedsarkiv). Modellen dækker cirka 180 milliarder tokens (800 GB data). 33 dages klyngedrift med 992 NVIDIA A100 80GB GPU'er blev brugt på at træne modellen.

Når man kører OPT-175B-modellen på et system med en enkelt NVIDIA T4 GPU (16GB), demonstrerede FlexGen-motoren ydeevne op til 100 gange hurtigere end tidligere tilbudte løsninger, hvilket gjorde brugen af ​​store sprogmodeller mere overkommelige og tillod dem at køre på systemer uden dedikerede acceleratorer. Samtidig kan FlexGen skalere for at parallelisere beregninger med flere GPU'er. For at reducere størrelsen af ​​modellen bruges der desuden et proprietært parameterkomprimeringsskema og en model-cachemekanisme.

I øjeblikket understøtter FlexGen kun OPT-sprogmodeller, men i fremtiden lover udviklerne også at tilføje understøttelse af BLOOM (176 milliarder parametre, understøtter 46 sprog og 13 programmeringssprog), CodeGen (kan generere kode i 22 programmeringssprog) og GLM modeller. Et eksempel på en dialog med en bot baseret på FlexGen og OPT-30B modellen:

Menneske: Hvad hedder det højeste bjerg i verden?

Assistent: Everest.

Menneske: Jeg planlægger en tur til vores jubilæum. Hvilke ting kan vi gøre?

Assistent: Nå, der er en række ting, du kan gøre til dit jubilæum. For det første kan du spille kort. For det andet kan du tage på vandretur. For det tredje kan du gå på museum.

Kilde: opennet.ru

Tilføj en kommentar