FlexGen estas motoro por ruli ChatGPT-similajn AI-robotstojn sur ununuraj GPU-sistemoj

Teamo de esploristoj de Universitato Stanford, la Universitato de Kalifornio ĉe Berkeley, ETH Zuriko, la Diplomiĝinta Lernejo de Ekonomiko, Carnegie Mellon University, same kiel Yandex kaj Meta, publikigis la fontkodon de motoro por funkcii grandajn lingvajn modelojn sur rimedo. -limigitaj sistemoj. Ekzemple, la motoro disponigas la kapablon krei funkciojn rememorigajn pri ChatGPT kaj Copilot per funkciado de antaŭtrejnita OPT-175B-modelo, kovranta 175 miliardojn da parametroj, sur regula komputilo kun videoludada grafika karto NVIDIA RTX3090 ekipita per 24GB da videomemoro. La kodo estas skribita en Python, uzas la kadron PyTorch kaj estas distribuita sub la permesilo Apache 2.0.

Ĝi inkluzivas ekzemplan skripton por krei robotojn, kiu ebligas al vi elŝuti unu el la publike disponeblaj lingvomodeloj kaj tuj komenci komuniki (ekzemple, rulante la komandon “python apps/chatbot.py —modelo facebook/opt-30b — -procent 0 100 100 0 100 0” ). Kiel bazo, oni proponas uzi grandan lingvan modelon eldonitan de Fejsbuko, trejnitan sur la kolektoj de BookCorpus (10 mil libroj), CC-Stories, Pile (OpenSubtitles, Vikipedio, DM Mathematics, HackerNews, ktp), Pushshift. io (surbaze de Reddit-datumoj) kaj CCNewsV2 (novaĵarkivo). La modelo kovras proksimume 180 miliardojn da ĵetonoj (800 GB da datumoj). 33 tagoj da cluster-operacio kun 992 NVIDIA A100 80GB GPU-oj estis elspezitaj por trejnado de la modelo.

Dum funkciado de la OPT-175B-modelo sur sistemo kun ununura NVIDIA T4 GPU (16GB), la FlexGen-motoro montris efikecon ĝis 100 fojojn pli rapide ol antaŭe ofertitaj solvoj, farante la uzon de grandaj lingvomodeloj pli pagebla kaj permesante al ili funkcii. sistemoj sen dediĉitaj akceliloj. Samtempe, FlexGen povas grimpi por paraleligi kalkulojn kun pluraj GPUoj. Por redukti la grandecon de la modelo, estas aldone uzataj proprieta parametra kunpremadskemo kaj modela kaŝmemormekanismo.

Nuntempe, FlexGen nur subtenas OPT-lingvajn modelojn, sed estonte la programistoj ankaŭ promesas aldoni subtenon por BLOOM (176 miliardoj da parametroj, subtenas 46 lingvojn kaj 13 programlingvojn), CodeGen (povas generi kodon en 22 programlingvoj) kaj GLM-modeloj. Ekzemplo de dialogo kun bot bazita sur FlexGen kaj la modelo OPT-30B:

Homo: Kiel nomiĝas la plej alta monto en la mondo?

Asistanto: Everest.

Homo: Mi planas vojaĝon por nia datreveno. Kiajn aferojn ni povas fari?

Asistanto: Nu, estas kelkaj aferoj, kiujn vi povas fari por via datreveno. Unue, vi povas ludi kartojn. Due, vi povas iri promeni. Trie, vi povas iri al muzeo.

fonto: opennet.ru

Aldoni komenton