In Zeiten allgegenwärtiger intelligenter Geräte sehnen wir uns nach leistungsstärkeren intelligenten Verarbeitungsfunktionen für Smartphones, Tablets und sogar Smart-Home-Geräte. Allerdings sind die Hardware-Ressourcen dieser Edge-Geräte, insbesondere der Speicher und die Rechenleistung, begrenzt, was den Einsatz und Betrieb großer Sprachmodelle (LLMs) auf diesen Geräten einschränkt. Stellen Sie sich vor, wie sich unsere Welt verändern würde, wenn diese Geräte über leistungsstarke Modelle verfügen könnten, die natürliche Sprache verstehen, Fragen beantworten und sogar kreativ sein können?
Vor diesem Hintergrund entstand die T-MAC-Technologie. T-MAC, die Abkürzung für „Table-Lookup-based MAC“, ist eine auf Suchtabellen basierende Methode, die den effizienten Betrieb von Low-Bit-großen Sprachmodellen auf CPUs ermöglicht und so ein intelligentes Upgrade auf Edge-Geräten ermöglicht.
Große Sprachmodelle enthalten in der Regel Dutzende Milliarden oder sogar Hunderte Milliarden Parameter, deren Speicherung viel Speicherplatz benötigt. Um diese Modelle auf Edge-Geräten bereitzustellen, müssen die Modellgewichte quantisiert werden, d. h. mit weniger Bits dargestellt werden, um den Speicherbedarf des Modells zu reduzieren. Quantisierte Modelle erfordern jedoch bei der Berechnung Mischpräzisions-Matrixmultiplikationen (mpGEMM), die in bestehenden Hard- und Softwaresystemen nicht üblich sind und keine effiziente Unterstützung bieten.
Die Kernidee von T-MAC besteht darin, die herkömmliche datentypbasierte Multiplikation in eine bitbasierte Nachschlagetabellen-Suche (LUT) umzuwandeln. Diese Methode eliminiert nicht nur die Multiplikation, sondern reduziert auch die Additionen und erhöht so die Rechenleistung erheblich.
Konkret wird T-MAC in folgenden Schritten implementiert:
Die Gewichtsmatrix wird in mehrere Ein-Bit-Matrizen zerlegt.
Das Produkt aus Aktivationsvektor und allen möglichen Ein-Bit-Mustern wird vorab berechnet und in einer Suchtabelle gespeichert.
Während des Inferenzprozesses wird das Ergebnis der Matrixmultiplikation durch Suchtabellenindizierung und Akkumulation schnell ermittelt.
Tests auf verschiedenen Edge-Geräten zeigen einen deutlichen Leistungsvorteil von T-MAC. Im Vergleich zur bestehenden llama.cpp-Implementierung erhöht T-MAC den Durchsatz um das Vierfache und senkt den Energieverbrauch um 70 %. Dadurch können selbst Low-End-Geräte wie der Raspberry Pi 5 Token mit einer Geschwindigkeit generieren, die die durchschnittliche Lesegeschwindigkeit eines Erwachsenen übersteigt.
T-MAC bietet nicht nur theoretische Vorteile, sondern auch praktisches Anwendungspotenzial. Ob Echtzeit-Spracherkennung und Verarbeitung natürlicher Sprache auf Smartphones oder intelligentere Interaktionen auf Smart-Home-Geräten – T-MAC spielt eine wichtige Rolle.
Die T-MAC-Technologie bietet eine effiziente und energiesparende Lösung für die Bereitstellung von Low-Bit-großen Sprachmodellen auf Edge-Geräten. Sie verbessert nicht nur die Intelligenz der Geräte, sondern bietet den Benutzern auch ein umfassenderes und komfortableres intelligentes Erlebnis. Mit der Weiterentwicklung und Optimierung der Technologie können wir davon ausgehen, dass T-MAC im Bereich der Edge-Intelligenz eine immer wichtigere Rolle spielen wird.
Open-Source-Adresse: https://github.com/microsoft/T-MAC
Paper-Adresse: https://www.arxiv.org/pdf/2407.00088