FlexGen ist eine Engine zum Ausführen von ChatGPT-ähnlichen KI-Bots auf Einzel-GPU-Systemen

Ein Forscherteam der Stanford University, der University of California in Berkeley, der ETH Zürich, der Graduate School of Economics, der Carnegie Mellon University sowie Yandex und Meta hat den Quellcode einer Engine zum Ausführen großer Sprachmodelle auf Ressourcen veröffentlicht -beschränkte Systeme. Beispielsweise bietet die Engine die Möglichkeit, Funktionen zu erstellen, die an ChatGPT und Copilot erinnern, indem ein vorab trainiertes OPT-175B-Modell, das 175 Milliarden Parameter abdeckt, auf einem normalen Computer mit einer NVIDIA RTX3090-Gaming-Grafikkarte mit 24 GB Videospeicher ausgeführt wird. Der Code ist in Python geschrieben, nutzt das PyTorch-Framework und wird unter der Apache 2.0-Lizenz vertrieben.

Es enthält ein Beispielskript zum Erstellen von Bots, mit dem Sie eines der öffentlich verfügbaren Sprachmodelle herunterladen und sofort mit der Kommunikation beginnen können (z. B. durch Ausführen des Befehls „python apps/chatbot.py –model facebook/opt-30b – -percent 0 100 100 0 100 0“ ). Als Basis wird vorgeschlagen, ein großes, von Facebook veröffentlichtes Sprachmodell zu verwenden, das auf den Sammlungen von BookCorpus (10 Bücher), CC-Stories, Pile (OpenSubtitles, Wikipedia, DM Mathematics, HackerNews usw.) und Pushshift basiert. io (basierend auf Reddit-Daten) und CCNewsV2 (Nachrichtenarchiv). Das Modell deckt etwa 180 Milliarden Token (800 GB Daten) ab. Für das Training des Modells wurden 33 Tage Clusterbetrieb mit 992 NVIDIA A100 80GB GPUs aufgewendet.

Bei der Ausführung des OPT-175B-Modells auf einem System mit einer einzelnen NVIDIA T4-GPU (16 GB) zeigte die FlexGen-Engine eine bis zu 100-mal schnellere Leistung als zuvor angebotene Lösungen, wodurch die Verwendung großer Sprachmodelle erschwinglicher wurde und deren Ausführung ermöglicht wurde Systeme ohne dedizierte Beschleuniger. Gleichzeitig kann FlexGen skaliert werden, um Berechnungen mit mehreren GPUs zu parallelisieren. Um die Größe des Modells zu reduzieren, werden zusätzlich ein proprietäres Parameterkomprimierungsschema und ein Modell-Caching-Mechanismus verwendet.

Derzeit unterstützt FlexGen nur OPT-Sprachmodelle, aber in Zukunft versprechen die Entwickler auch Unterstützung für BLOOM (176 Milliarden Parameter, unterstützt 46 Sprachen und 13 Programmiersprachen), CodeGen (kann Code in 22 Programmiersprachen generieren) und GLM-Modelle. Ein Beispiel für einen Dialog mit einem Bot basierend auf FlexGen und dem OPT-30B-Modell:

Mensch: Wie heißt der höchste Berg der Welt?

Assistent: Everest.

Mensch: Ich plane eine Reise zu unserem Jubiläum. Was können wir tun?

Assistentin: Nun, es gibt eine Reihe von Dingen, die Sie zu Ihrem Jubiläum tun können. Zuerst können Sie Karten spielen. Zweitens können Sie eine Wanderung unternehmen. Drittens können Sie in ein Museum gehen.

Source: opennet.ru

Kommentar hinzufügen