FlexGen je engine pro spouštění robotů AI podobných ChatGPT na systémech s jedním GPU

Tým výzkumníků ze Stanfordské univerzity, Kalifornské univerzity v Berkeley, ETH Zurich, Graduate School of Economics, Carnegie Mellon University, stejně jako Yandex a Meta, zveřejnil zdrojový kód enginu pro spouštění velkých jazykových modelů na zdroji. -omezené systémy. Engine například poskytuje možnost vytvářet funkcionalitu připomínající ChatGPT a Copilot spuštěním předem trénovaného modelu OPT-175B, pokrývajícího 175 miliard parametrů, na běžném počítači s herní grafickou kartou NVIDIA RTX3090 vybavenou 24GB videopamětí. Kód je napsán v Pythonu, používá framework PyTorch a je distribuován pod licencí Apache 2.0.

Obsahuje ukázkový skript pro vytváření botů, který vám umožní stáhnout si jeden z veřejně dostupných jazykových modelů a okamžitě začít komunikovat (například spuštěním příkazu „python apps/chatbot.py —model facebook/opt-30b — -percent 0 100 100 0 100 0”). Jako základ se navrhuje použít velký jazykový model publikovaný Facebookem, vyškolený na sbírkách BookCorpus (10 tisíc knih), CC-Stories, Pile (OpenSubtitles, Wikipedia, DM Mathematics, HackerNews atd.), Pushshift. io (na základě dat Reddit) a CCNewsV2 (archiv zpráv). Model pokrývá přibližně 180 miliard tokenů (800 GB dat). Trénink modelu strávil 33 dní clusterového provozu s 992 GPU NVIDIA A100 80GB.

Při provozu modelu OPT-175B na systému s jediným GPU NVIDIA T4 (16 GB) prokázal modul FlexGen výkon až 100krát rychlejší než dříve nabízená řešení, díky čemuž je použití velkých jazykových modelů dostupnější a umožňuje jejich provoz na systémy bez vyhrazených akcelerátorů. Současně může FlexGen škálovat pro paralelizaci výpočtů s více GPU. Pro zmenšení velikosti modelu se navíc používá vlastní schéma komprese parametrů a mechanismus ukládání modelu do mezipaměti.

V současné době FlexGen podporuje pouze jazykové modely OPT, ale v budoucnu vývojáři slibují přidání podpory pro BLOOM (176 miliard parametrů, podporuje 46 jazyků a 13 programovacích jazyků), CodeGen (umí generovat kód ve 22 programovacích jazycích) a GLM modely. Příklad dialogu s robotem založeným na FlexGen a modelu OPT-30B:

Člověk: Jak se jmenuje nejvyšší hora světa?

Asistent: Everest.

Člověk: Plánuji výlet na naše výročí. Jaké věci můžeme dělat?

Asistent: No, existuje řada věcí, které můžete udělat pro své výročí. Nejprve můžete hrát karty. Za druhé, můžete jít na výlet. Za třetí, můžete jít do muzea.

Zdroj: opennet.ru

Přidat komentář