Meta's Llama 3.1 Modelle: Ein neuer Meilenstein in der KI-Forschung
Einführung
Die KI-Welt wurde kürzlich durch die Veröffentlichung der neuen Llama 3.1 Modelle von Meta auf der Plattform Hugging Face bereichert. Diese Modelle stellen die neueste Entwicklung in der Llama-Familie dar und bieten fortschrittliche Möglichkeiten für die Textgenerierung und andere KI-Anwendungen. Dies markiert einen bedeutenden Schritt vorwärts für die Open-Source-KI-Community und zeigt Metas Engagement für die Förderung offener und zugänglicher KI.
Die Llama 3.1 Modellkollektion
Die Llama 3.1 Kollektion umfasst vier Hauptmodelle, die in zwei Größen verfügbar sind: 8 Milliarden (8B) und 70 Milliarden (70B) Parameter. Diese Modelle sind sowohl in Basis- als auch in instruktionsoptimierten Varianten erhältlich. Zusätzlich wurde eine neue Version von Llama Guard veröffentlicht, die auf dem 8B-Modell von Llama 3 basiert und als Llama Guard 2 bekannt ist.
Die Hauptmodelle von Llama 3
- **Meta-Llama-3-8B:** Basis 8B Modell
- **Meta-Llama-3-8B-Instruct:** Instruktionsoptimierte Version des Basis 8B Modells
- **Meta-Llama-3-70B:** Basis 70B Modell
- **Meta-Llama-3-70B-Instruct:** Instruktionsoptimierte Version des Basis 70B Modells
Llama Guard 2
Llama Guard 2 ist eine sicherheitsoptimierte Version, die auf dem Llama 3 8B Modell basiert und darauf ausgelegt ist, Eingaben und Ausgaben von LLMs zu klassifizieren, um unsichere Inhalte zu erkennen. Dieses Modell wurde für den produktiven Einsatz entwickelt und zielt darauf ab, eine sichere und verantwortungsbewusste Nutzung von KI zu gewährleisten.
Wesentliche Neuerungen in Llama 3
Eine der bemerkenswertesten Neuerungen in Llama 3 ist die Einführung eines neuen Tokenizers, der die Vokabulärgröße auf 128.256 Token erweitert hat. Dies ermöglicht eine effizientere Textkodierung und verbessert potenziell die Multilingualität. Allerdings geht dies mit einer Vergrößerung der Eingabe- und Ausgabematrizen einher, was zu einer Erhöhung der Parameteranzahl führt.
Die 8B-Version von Llama 3 nutzt nun auch die Grouped-Query Attention (GQA), eine effiziente Repräsentationsmethode, die längere Kontexte besser handhaben kann. Die Modelle wurden auf etwa 15 Billionen Token auf einem neuen Mix öffentlich verfügbarer Online-Daten trainiert.
Trainingsdaten und Prozess
Die Trainingsdaten für die Llama 3 Modelle umfassen etwa 15 Billionen Token aus einer Vielzahl öffentlich zugänglicher Datenquellen. Das Training erfolgte auf zwei Clustern mit insgesamt 24.000 GPUs, was eine erhebliche Rechenleistung erfordert. Meta hat dabei großen Wert auf eine sorgfältige Datenkuratierung gelegt, um die Leistung der Modelle zu optimieren.
Lizenzierung und Nutzung
Die Llama 3 Modelle werden unter einer permissiven Lizenz veröffentlicht, die die Weiterverbreitung, Feinabstimmung und Erstellung von Derivaten erlaubt. Neu in der Llama 3 Lizenz ist die Anforderung der expliziten Attribution. Abgeleitete Modelle müssen "Llama 3" am Anfang ihres Namens enthalten und die Erwähnung "Built with Meta Llama 3" in abgeleiteten Werken oder Diensten beinhalten.
Evaluation und Leistung
Die Leistung der Llama 3 Modelle wird derzeit individuell bewertet, und die Ergebnisse werden bald veröffentlicht. Erste Tests zeigen jedoch bereits vielversprechende Verbesserungen gegenüber den Vorgängermodellen.
Anwendung und Integration
Die Modelle können mit der neuesten Version der Transformers-Bibliothek von Hugging Face verwendet werden. Sie bieten umfassende Unterstützung für Trainings- und Inferenzskripte sowie Integrationen mit Tools wie Bitsandbytes, PEFT und Flash Attention 2. Dank der Kompatibilität mit torch.compile() und CUDA-Grafiken können die Modelle eine bis zu vierfache Beschleunigung bei der Inferenzzeit erreichen.
Ein Beispiel für die Nutzung von Llama 3
Das folgende Code-Snippet zeigt, wie man das Llama-3-8B-Instruct Modell mit der Transformers-Bibliothek verwendet:
```python
import transformers
import torch
model_id = "meta-llama/Meta-Llama-3-8B-Instruct"
pipeline = transformers.pipeline(
"text-generation",
model=model_id,
model_kwargs={"torch_dtype": torch.bfloat16},
device="cuda",
)
messages = [
{"role": "system", "content": "You are a pirate chatbot who always responds in pirate speak!"},
{"role": "user", "content": "Who are you?"},
]
prompt = pipeline.tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
terminators = [
pipeline.tokenizer.eos_token_id,
pipeline.tokenizer.convert_tokens_to_ids("<|eot_id|>")
]
outputs = pipeline(
prompt,
max_new_tokens=256,
eos_token_id=terminators,
do_sample=True,
temperature=0.6,
top_p=0.9,
)
print(outputs[0]["generated_text"][len(prompt):])
```
Dieses Modell kann auf verschiedenen Hardware-Typen ausgeführt werden und bietet die Möglichkeit, es in 8-Bit oder sogar 4-Bit Modus zu quantisieren, was den Speicherbedarf erheblich reduziert und die Nutzung auf vielen Verbraucher-GPUs ermöglicht.
Schlussfolgerung
Meta's Llama 3.1 Modelle stellen einen bedeutenden Fortschritt in der KI-Forschung dar und bieten umfangreiche Möglichkeiten für Entwickler und Forscher. Mit ihrer offenen Lizenz und der umfassenden Integration in die Hugging Face Plattform sind diese Modelle ideal für eine Vielzahl von Anwendungen geeignet.
Bibliographie
- https://huggingface.co/collections/meta-llama/meta-llama-3-66214712577ca38149ebb2b6
- https://huggingface.co/blog/llama3
- https://huggingface.co/meta-llama/Meta-Llama-3-8B
- https://huggingface.co/models?other=llama
- https://huggingface.co/Efficient-Large-Model/Llama-3-VILA1.5-8b-AWQ
- https://huggingface.co/AI-Sweden-Models/Llama-3-8B
- https://huggingface.co/nvidia/Llama3-ChatQA-1.5-70B
- https://huggingface.co/MaziyarPanahi/Llama-3-11B-Instruct-v0.1