Stummel Lama 2: Ein tiefer Einblick in den Open-Source-Herausforderer von ChatGPT – Unite.AI
Vernetzen Sie sich mit uns

Künstliche Intelligenz

Lama 2: Ein tiefer Einblick in den Open-Source-Herausforderer von ChatGPT

mm

Veröffentlicht

 on

META LLAMA 2 LLM

Large Language Models (LLMs), die komplexe Denkaufgaben bewältigen können, haben sich in speziellen Bereichen wie Programmierung und kreativem Schreiben als vielversprechend erwiesen. Die Welt der LLMs ist jedoch nicht einfach ein Plug-and-Play-Paradies; Es gibt Herausforderungen in Bezug auf Benutzerfreundlichkeit, Sicherheit und Rechenanforderungen. In diesem Artikel werden wir uns eingehend mit den Möglichkeiten befassen Lama 2, und bietet gleichzeitig eine detaillierte Anleitung zum Einrichten dieses leistungsstarken LLM über Hugging Face und T4-GPUs auf Google Colab.

Dieses von Meta in Zusammenarbeit mit Microsoft entwickelte Open-Source-Modell für große Sprachen zielt darauf ab, die Bereiche der generativen KI und des Verständnisses natürlicher Sprache neu zu definieren. Llama 2 ist nicht nur ein weiteres statistisches Modell, das auf Terabytes an Daten trainiert wird; Es ist die Verkörperung einer Philosophie. Eines, das einen Open-Source-Ansatz als Rückgrat der KI-Entwicklung betont, insbesondere im Bereich der generativen KI.

Llama 2 und sein dialogoptimierter Ersatz, Llama 2-Chat, sind mit bis zu 70 Milliarden Parametern ausgestattet. Sie durchlaufen einen Feinabstimmungsprozess, der darauf abzielt, sie eng an die menschlichen Vorlieben anzupassen und sie so sicherer und effektiver als viele andere öffentlich verfügbare Modelle zu machen. Dieses Maß an Granularität bei der Feinabstimmung ist häufig geschlossenen „Produkt“-LLMs vorbehalten, wie z ChatGPT und BARD, die im Allgemeinen nicht zur öffentlichen Prüfung oder Anpassung verfügbar sind.

Technischer Deep Dive von Llama 2

Zum Trainieren des Modells Llama 2; Wie seine Vorgänger verwendet es eine automatische Regression Transformator-Architektur, vorab trainiert auf einem umfangreichen Korpus selbstüberwachter Daten. Es fügt jedoch eine zusätzliche Ebene der Raffinesse hinzu, indem es Reinforcement Learning with Human Feedback (RLHF) verwendet, um sich besser an menschliches Verhalten und Vorlieben anzupassen. Dies ist rechenintensiv, aber für die Verbesserung der Sicherheit und Wirksamkeit des Modells von entscheidender Bedeutung.

Meta Llama 2 Trainingsarchitektur

Meta Llama 2 Trainingsarchitektur

Vorschulung und Dateneffizienz

Die grundlegende Innovation von Llama 2 liegt in seinem Vortrainingsmodus. Das Modell orientiert sich an seinem Vorgänger Llama 1, führt jedoch mehrere entscheidende Verbesserungen ein, um seine Leistung zu steigern. Besonders hervorzuheben ist ein Anstieg der Gesamtzahl der trainierten Token um 40 % und eine Verdoppelung der Kontextlänge. Darüber hinaus nutzt das Modell Grouped-Query-Attention (GQA), um die Skalierbarkeit der Inferenz zu verbessern.

Supervised Fine-Tuning (SFT) und Reinforcement Learning with Human Feedback (RLHF)

Llama-2-Chat wurde mithilfe von SFT und Reinforcement Learning with Human Feedback (RLHF) gründlich verfeinert. In diesem Zusammenhang dient SFT als integraler Bestandteil des RLHF-Frameworks und verfeinert die Reaktionen des Modells, um sie eng an menschliche Vorlieben und Erwartungen anzupassen.

OpenAI hat eine aufschlussreiche Illustration bereitgestellt, die die in InstructGPT verwendeten SFT- und RLHF-Methoden erklärt. Ähnlich wie LLaMa 2 nutzt auch InstructGPT diese fortschrittlichen Trainingstechniken, um die Leistung seines Modells zu optimieren.

Schritt 1 im Bild unten konzentriert sich auf Supervised Fine-Tuning (SFT), während die nachfolgenden Schritte den Reinforcement Learning from Human Feedback (RLHF)-Prozess abschließen.

Supervised Fine-Tuning (SFT) ist ein spezialisierter Prozess, der darauf abzielt, ein vorab trainiertes Large Language Model (LLM) für eine bestimmte nachgelagerte Aufgabe zu optimieren. Im Gegensatz zu unbeaufsichtigten Methoden, die keine Datenvalidierung erfordern, verwendet SFT einen Datensatz, der vorab validiert und gekennzeichnet wurde.

Im Allgemeinen ist die Erstellung dieser Datensätze kostspielig und zeitaufwändig. Beim Ansatz von Llama 2 ging Qualität vor Quantität. Mit nur 27,540 Annotationen erreichte Metas Team ein Leistungsniveau, das mit menschlichen Annotatoren mithalten konnte. Das passt gut dazu aktuelle Studien Dies zeigt, dass selbst begrenzte, aber saubere Datensätze zu qualitativ hochwertigen Ergebnissen führen können.

Im SFT-Prozess wird das vorab trainierte LLM einem gekennzeichneten Datensatz ausgesetzt, in dem die überwachten Lernalgorithmen ins Spiel kommen. Die internen Gewichte des Modells werden basierend auf Gradienten neu kalibriert, die aus einer aufgabenspezifischen Verlustfunktion berechnet werden. Diese Verlustfunktion quantifiziert die Diskrepanzen zwischen den vorhergesagten Ergebnissen des Modells und den tatsächlichen Ground-Truth-Labels.

Diese Optimierung ermöglicht es dem LLM, die komplizierten Muster und Nuancen zu erfassen, die im gekennzeichneten Datensatz eingebettet sind. Folglich ist das Modell nicht nur ein verallgemeinertes Werkzeug, sondern entwickelt sich zu einem spezialisierten Vermögenswert, der in der Lage ist, die Zielaufgabe mit einem hohen Maß an Genauigkeit auszuführen.

Reinforcement Learning ist der nächste Schritt, der darauf abzielt, das Modellverhalten stärker an den menschlichen Vorlieben auszurichten.

Die Optimierungsphase nutzte Reinforcement Learning from Human Feedback (RLHF) und verwendete Techniken wie Wichtigkeits-Sampling und Proximale Richtlinienoptimierung algorithmisches Rauschen einzuführen und so lokale Optima zu umgehen. Diese iterative Feinabstimmung verbesserte nicht nur das Modell, sondern passte seine Ausgabe auch an die menschlichen Erwartungen an.

Der Llama 2-Chat nutzte ein binäres Vergleichsprotokoll, um menschliche Präferenzdaten zu sammeln, was einen bemerkenswerten Trend hin zu qualitativeren Ansätzen markiert. Dieser Mechanismus informiert die Belohnungsmodelle, die dann zur Feinabstimmung des Konversations-KI-Modells verwendet werden.

Ghost Attention: Multi-Turn-Dialoge

Meta hat eine neue Funktion namens Ghost Attention (GAtt) eingeführt, die die Leistung von Llama 2 in Dialogen mit mehreren Runden verbessern soll. Dadurch wird das anhaltende Problem des Kontextverlusts in laufenden Gesprächen effektiv gelöst. GAtt fungiert wie ein Anker und verknüpft die ersten Anweisungen mit allen nachfolgenden Benutzernachrichten. In Verbindung mit Techniken des verstärkenden Lernens hilft es dabei, konsistente, relevante und benutzerorientierte Antworten über längere Dialoge hinweg zu erzeugen.

Aus dem Meta-Git-Repository mit download.sh

  1. Besuchen Sie die Meta-Website: Navigieren zu Metas offizielle Llama 2-Seite und klicken Sie auf „Modell herunterladen“.
  2. Füllen Sie die Details aus: Lesen Sie die Allgemeinen Geschäftsbedingungen durch und akzeptieren Sie sie, um fortzufahren.
  3. E-Mail-Bestätigung: Sobald das Formular abgeschickt wurde, erhalten Sie eine E-Mail von Meta mit einem Link zum Herunterladen des Modells aus dem Git-Repository.
  4. Führen Sie download.sh aus: Klonen Sie das Git-Repository und führen Sie es aus download.sh Skript. Dieses Skript fordert Sie zur Authentifizierung mit einer URL von Meta auf, die in 24 Stunden abläuft. Sie wählen auch die Größe des Modells aus: 7B, 13B oder 70B.

Von Hugging Face

  1. Erhalten Sie eine Annahme-E-Mail: Nachdem Sie Zugriff von Meta erhalten haben, gehen Sie zu Gesicht umarmen.
  2. Anfrage Zugang: Wählen Sie Ihr Wunschmodell und stellen Sie einen Antrag auf Zugangsgewährung.
  3. Bestätigung: Erwarten Sie innerhalb von 1–2 Tagen eine E-Mail mit dem Hinweis „Zugriff gewährt“.
  4. Zugriffstoken generieren: Navigieren Sie in Ihrem Hugging Face-Konto zu „Einstellungen“, um Zugriffstoken zu erstellen.

Die Transformers-Version 4.31 ist vollständig kompatibel mit LLaMa 2 und eröffnet viele Tools und Funktionalitäten innerhalb des Hugging Face-Ökosystems. Von Trainings- und Inferenzskripten bis hin zur 4-Bit-Quantisierung mit Bitsandbytes und Parameter Efficient Fine-tuning (PEFT) ist das Toolkit umfangreich. Stellen Sie zunächst sicher, dass Sie die neueste Transformers-Version verwenden und bei Ihrem Hugging Face-Konto angemeldet sind.

Hier ist eine optimierte Anleitung zum Ausführen der LLaMa 2-Modellinferenz in einem Google Colab Umgebung unter Nutzung einer GPU-Laufzeit:

Google Colab-Modell – T4-GPU

Google Colab-Modell – T4-GPU

 

 

 

 

 

 

Paketinstallation

!pip install transformers
!huggingface-cli login

Importieren Sie die erforderlichen Python-Bibliotheken.

from transformers import AutoTokenizer
import transformers
import torch

Initialisieren Sie das Modell und den Tokenizer

Geben Sie in diesem Schritt an, welches Llama 2-Modell Sie verwenden möchten. Für diesen Leitfaden verwenden wir meta-llama/Llama-2-7b-chat-hf.

model = "meta-llama/Llama-2-7b-chat-hf"
tokenizer = AutoTokenizer.from_pretrained(model)

Richten Sie die Pipeline ein

Nutzen Sie die Hugging Face-Pipeline zur Textgenerierung mit bestimmten Einstellungen:

pipeline = transformers.pipeline(
    "text-generation",
    model=model,
    torch_dtype=torch.float16,
    device_map="auto")

Textsequenzen generieren

Führen Sie abschließend die Pipeline aus und generieren Sie eine Textsequenz basierend auf Ihrer Eingabe:

sequences = pipeline(
    'Who are the key contributors to the field of artificial intelligence?\n',
    do_sample=True,
    top_k=10,
    num_return_sequences=1,
    eos_token_id=tokenizer.eos_token_id,
    max_length=200)
for seq in sequences:
    print(f"Result: {seq['generated_text']}")

A16Zs Benutzeroberfläche für LLaMa 2

Andreessen Horowitz (A16Z) hat kürzlich eine hochmoderne, auf Streamlit basierende Chatbot-Schnittstelle eingeführt, die speziell auf Llama 2 zugeschnitten ist. Diese auf GitHub gehostete Benutzeroberfläche speichert den Sitzungs-Chat-Verlauf und bietet außerdem die Flexibilität, aus mehreren gehosteten Llama 2-API-Endpunkten auszuwählen Replizieren. Dieses benutzerzentrierte Design zielt darauf ab, die Interaktion mit Llama 2 zu vereinfachen und es zu einem idealen Werkzeug sowohl für Entwickler als auch für Endbenutzer zu machen. Für diejenigen, die daran interessiert sind, dies zu erleben, ist eine Live-Demo verfügbar unter Lama2.ai.

Llama 2: Was unterscheidet es von GPT Models und seinem Vorgänger Llama 1?

Vielfalt im Maßstab

Im Gegensatz zu vielen Sprachmodellen, die eine begrenzte Skalierbarkeit bieten, bietet Ihnen Llama 2 eine Reihe verschiedener Optionen für Modelle mit unterschiedlichen Parametern. Das Modell lässt sich von 7 bis 70 Milliarden Parametern skalieren und bietet so eine Reihe von Konfigurationen für unterschiedliche Rechenanforderungen.

Erweiterte Kontextlänge

Das Modell verfügt über eine größere Kontextlänge von 4K-Tokens als Llama 1. Dadurch kann es mehr Informationen behalten und somit seine Fähigkeit verbessern, komplexere und umfangreichere Inhalte zu verstehen und zu generieren.

Grouped Query Attention (GQA)

Die Architektur verwendet das Konzept von GQAEntwickelt, um den Aufmerksamkeitsberechnungsprozess zu beschleunigen, indem frühere Token-Paare zwischengespeichert werden. Dadurch wird die Inferenzskalierbarkeit des Modells effektiv verbessert und die Zugänglichkeit verbessert.

Leistungsbenchmarks

Vergleichende Leistungsanalyse von Llama 2-Chat-Modellen mit ChatGPT und anderen Wettbewerbern

Leistungsanalyse von Llama 2-Chat-Modellen mit ChatGPT und anderen Wettbewerbern

LLama 2 hat einen neuen Standard in Sachen Leistungsmetriken gesetzt. Es übertrifft nicht nur seinen Vorgänger LLama 1, sondern bietet auch erhebliche Konkurrenz zu anderen Modellen wie Falcon und GPT-3.5.

Auch das größte Modell von Llama 2-Chat, das 70B, übertrifft ChatGPT in 36 % der Fälle und erreicht in weiteren 31.5 % der Fälle die gleiche Leistung. Quelle: Papier

Open Source: Die Kraft der Gemeinschaft

Meta und Microsoft beabsichtigen, dass Llama 2 mehr als nur ein Produkt ist; Sie stellen es sich als ein von der Community betriebenes Tool vor. Der Zugang zu Llama 2 ist sowohl für Forschungszwecke als auch für nichtkommerzielle Zwecke kostenlos. Ihr Ziel ist es, KI-Fähigkeiten zu demokratisieren und sie für Start-ups, Forscher und Unternehmen zugänglich zu machen. Ein Open-Source-Paradigma ermöglicht die „Crowdsourcing-Fehlerbehebung“ des Modells. Entwickler und KI-Ethiker können Stresstests durchführen, Schwachstellen identifizieren und schneller Lösungen anbieten.

Während die Lizenzbedingungen für LLaMa 2 im Allgemeinen freizügig sind, Ausnahmen existieren. Große Unternehmen mit über 700 Millionen monatlichen Nutzern wie Google benötigen für die Nutzung eine ausdrückliche Genehmigung von Meta. Darüber hinaus verbietet die Lizenz die Verwendung von LLaMa 2 zur Verbesserung anderer Sprachmodelle.

Aktuelle Herausforderungen mit Lama 2

  1. Datenverallgemeinerung: Sowohl Llama 2 als auch GPT-4 geraten manchmal bei gleichmäßig hoher Leistung bei unterschiedlichen Aufgaben ins Stocken. Datenqualität und -vielfalt sind in diesen Szenarien ebenso entscheidend wie das Volumen.
  2. Modelltransparenz: Angesichts früherer Rückschläge bei der Erzeugung irreführender Ergebnisse durch KI ist die Erforschung der Entscheidungsgründe hinter diesen komplexen Modellen von größter Bedeutung.

Code Llama – Metas neueste Veröffentlichung

Meta hat kürzlich angekündigt Code Lama Dabei handelt es sich um ein großes Sprachmodell, das auf die Programmierung mit Parametergrößen von 7B bis 34B spezialisiert ist. Ähnlich zu ChatGPT-Code-Interpreter; Code Llama kann Entwickler-Workflows rationalisieren und die Programmierung leichter zugänglich machen. Es unterstützt verschiedene Programmiersprachen und ist in speziellen Varianten erhältlich, beispielsweise als Code Llama–Python für Python-spezifische Aufgaben. Das Modell bietet außerdem verschiedene Leistungsstufen, um unterschiedlichen Latenzanforderungen gerecht zu werden. Code Llama ist offen lizenziert und lädt die Community zu Beiträgen zur kontinuierlichen Verbesserung ein.

Wir stellen Code Llama vor, ein KI-Tool zum Codieren

Zusammenfassung

Dieser Artikel hat Sie durch die Einrichtung eines Llama 2-Modells für die Textgenerierung in Google Colab mit Hugging Face-Unterstützung geführt. Die Leistung von Llama 2 wird durch eine Reihe fortschrittlicher Techniken angetrieben, von autoregressiven Transformatorarchitekturen bis hin zu Reinforcement Learning with Human Feedback (RLHF). Mit bis zu 70 Milliarden Parametern und Funktionen wie Ghost Attention übertrifft dieses Modell in bestimmten Bereichen aktuelle Industriestandards und ebnet mit seiner Offenheit den Weg für eine neue Ära des natürlichen Sprachverständnisses und der generativen KI.

Ich habe die letzten fünf Jahre damit verbracht, in die faszinierende Welt des maschinellen Lernens und des Deep Learning einzutauchen. Meine Leidenschaft und mein Fachwissen haben dazu geführt, dass ich an über 50 verschiedenen Software-Engineering-Projekten mitgewirkt habe, mit besonderem Schwerpunkt auf KI/ML. Meine anhaltende Neugier hat mich auch zur Verarbeitung natürlicher Sprache geführt, einem Bereich, den ich gerne weiter erforschen möchte.