llama 3

Llama 3 ist die neueste Version der Llama Large Language Models (LLM) von Meta, die im Jahr 2023 veröffentlicht wurde. Es baut auf der Llama-2-Architektur auf und bietet Verbesserungen in Bezug auf Leistung, Effizienz und Multilingualität. Llama 3 umfasst vier neue offene LLM-Modelle in zwei Größen: 8 Milliarden (8B) und 70 Milliarden (70B) Parameter, wobei jeweils Basis- und Instruct-optimierte Versionen angeboten werden. Diese Modelle können auf verschiedenen Arten von Consumer-Hardware ausgeführt werden und verfügen über eine Kontextlänge von 8.000 Token.

Die vier Basis-Modelle sind:

  • Meta-Llama-3-8b: Das Basis-Modell mit 8 Milliarden Parametern
  • Meta-Llama-3-8b-instruct: Die instruct-optimierte Version des 8B-Modells, die für Dialoganwendungen optimiert wurde
  • Meta-Llama-3-70b: Das Basis-Modell mit 70 Milliarden Parametern
  • Meta-Llama-3-70b-instruct: Die instruct-optimierte Version des 70B-Modells

Zusätzlich zu diesen vier Modellen wurde auch Llama Guard 2 veröffentlicht, das auf Llama 3 8B optimiert wurde und darauf abzielt, Eingaben und Antworten von LLM auf unsichere Inhalte zu klassifizieren. Eine bedeutende Änderung bei Llama 3 im Vergleich zu seinem Vorgänger ist die Verwendung eines neuen Tokenizers, der die Vokabulargröße auf 128.256 erweitert. Dies ermöglicht eine effizientere Kodierung von Text und verbessert potenziell die Multilingualität. Das Modell verwendet auch Grouped-Query Attention (GQA), eine effiziente Darstellung, die bei längeren Kontexten hilft.

Llama 3 wurde mit einem 8-fach größeren Datensatz trainiert, der 15 Billionen Token umfasst, und nutzt eine Kombination aus öffentlich verfügbaren Online-Daten. Die instruct-optimierten Modelle wurden speziell für Dialoganwendungen optimiert und mit über 10 Millionen human-annotierten Datenbeispielen trainiert.

Llama 3 verfügt über eine großzügige Lizenz, die die Weiternutzung, Feinabstimmung und Ableitung neuer Werke ermöglicht. Eine Neuerung ist die Anforderung einer ausdrücklichen Zuschreibung, die in Llama 2 nicht vorhanden war.

LLaMA-Architektur

Die LLaMA-Architektur hat im Vergleich zu ihren Vorgängerinnen einige bedeutende Verbesserungen erfahren:

  1. Größere Trainingsdatenmenge 
    1. LLaMA 3 wurde mit 15 Billionen Token trainiert, was einer Steigerung von 650 % gegenüber LLaMA 2 mit 2 Billionen Token entspricht. 
  2. Verdoppelte Kontextlänge:  
    1. Die Kontextlänge wurde von 4.000 auf 8.000 Token verdoppelt, sowohl für das 8B- als auch für das 70B-Modell. 
  3. Grouped-Query Attention (GQA):  
    1. GQA wird nun in beiden 8B- und 70B-Varianten verwendet, während es bei den vorherigen Generationen nur in den größeren Modellen zum Einsatz kam. 
  4. Neuer Sicherheitsansatz:  
    1. LLaMA 3 verwendet zwei Belohnungsmodelle für Sicherheit und Hilfsbereitschaft, was zu einer sichereren und nützlicheren LLM-Leistung beiträgt. 

Die LLaMA-3-Architektur baut größtenteils auf der LLaMA-2-Architektur auf und umfasst folgende Komponenten:

RoPE (Rotary Positional Encoding)

RoPE ist eine Art von Positionskodierung, die eine Mischung aus absoluten und relativen Positionskodierungen darstellt. Jedes Token verfügt über einen festen oder absoluten Embedding-Wert, der mit einem inneren Skalarprodukt multipliziert wird, das relativ zur Rotation der Vektoren auf einer 2D-Ebene ist. Dies bietet einen Kompromiss zwischen absoluten und relativen Positionskodierungen.

KV-Cache

Der KV-Cache ist eine Technik, die während der Inferenzphasen verwendet wird, um die Berechnungen für bereits gesehene Token zu reduzieren. Anstatt bei jedem Schritt alle vorherigen Token zu verarbeiten, speichert der KV-Cache die Schlüssel und Werte dieser Token, wodurch die Aufmerksamkeitsberechnung beschleunigt wird.

Grouped Multi-Query Attention (GQA)

GQA ist eine Mischung aus Multi-Query- und Multi-Head-Attention, die eine ähnliche Qualität wie Multi-Head-Attention bietet, aber mit einer vergleichbaren Geschwindigkeit wie Multi-Query-Attention. GQA adressiert die Speicherbandbreitenprobleme während der autoregressiven Dekodierung von Transformer-Modellen und hilft dabei, die Berechnungen effizienter zu gestalten.

RMS-Normalisierung (Root Mean Squared Normalization)

RMS-Normalisierung ist eine Normalisierungstechnik, die die Aktivierungen basierend auf ihren eigenen Wurzelmittelwerten skaliert, unabhängig von der Batch-Größe oder der Anzahl der Funktionen. Dies sorgt für eine konsistente Skalierung und bietet anpassbare Skalierungsparameter.

SwiGLU-Aktivierungsfunktion

SwiGLU ist eine Variante der GLU (Gated Linear Unit) und verwendet die Swish-Funktion, die sich als überlegen gegenüber anderen Aktivierungsfunktionen erwiesen hat. SwiGLU verbessert die Leistung des Modells durch Element-für-Element-Multiplikation und passt gut zu residualen Verbindungen.

Feedforward-Block

Der Feedforward-Block im Transformer-Modell umfasst drei lineare Transformationen und die SwiGLU-Aktivierungsfunktion. Dieser einzigartige Ansatz verbessert die Ausdrucksstärke des Modells.

Llama 3 und die LLaMA-Architektur stellen bedeutende Fortschritte im Bereich Large Language Models dar und bieten verbesserte Leistung, Effizienz und Multilingualität. Diese Modelle haben das Potenzial, eine Vielzahl von Anwendungen zu verbessern und neue Möglichkeiten für die Verarbeitung natürlicher Sprache zu schaffen.

ANGEBOT AUF ANFRAGE

Individuelle Server-Lösungen
Sie haben besondere Anforderungen an ihre Hardware. Gerne entwerfen wir Ihnen maßgeschneiderte Systeme nach Ihren Anforderungen.