Zu Abschnitt

Was ist InstructLab?

URL kopieren

InstructLab ist ein Open Source-Projekt zur Verbesserung  großer Sprachmodelle (Large Language Models, LLMs), die in  generativen KI-Anwendungen (gen KI) zum Einsatz kommen. Das von IBM und Red Hat ins Leben gerufene Community-Projekt InstructLab bietet eine kosteneffiziente Lösung zur Verbesserung der Ausrichtung von LLMs und ermöglicht auch Personen mit nur sehr geringer Erfahrung im Bereich des maschinellen Lernens, sich einzubringen.

Werden Sie Teil der InstructLab Community

LLMs können eine Reihe nützlicher Anwendungen wie Chatbots und Programmierassistenten unterstützen. Diese LLMs können proprietär sein (wie die GPT-Modelle von OpenAI und die Claude-Modelle von Anthropic) oder einen unterschiedlichen Grad an Offenheit in Bezug auf Pretraining-Daten und Nutzungsbeschränkungen bieten (wie die Llama-Modelle von Meta, die Mistral-Modelle von Mistral AI und die Granite-Modelle von IBM).

KI-Anwendende müssen häufig ein vorab trainiertes LLM an einen bestimmten Geschäftszweck anpassen. Die Möglichkeiten zur Änderung eines LLMs sind jedoch begrenzt:

  • Die Feinabstimmung eines LLMs auf ein bestimmtes Wissensgebiet oder eine bestimmte Kompetenz erfordert in der Regel die Abspaltung eines bestehenden offenen Modells und die Durchführung teurer, ressourcenintensiver Trainings.
  • Es gibt keine Möglichkeit, Verbesserungen in das Upstream-Projekt einzubringen, und somit auch keine Möglichkeit für Modelle zur kontinuierlichen Verbesserung durch Beiträge aus der Community.
  • LLM-Optimierungen erfordern in der Regel große Mengen an von Menschen erstellten Daten, deren Beschaffung zeitaufwendig und teuer sein kann.

InstructLab verfolgt einen Ansatz, der diese Beschränkungen überwindet. Es kann ein LLM mit weitaus weniger vom Menschen generierten Daten und weitaus weniger Rechenressourcen verbessern, als normalerweise für das Retraining eines Modells erforderlich sind. Außerdem kann das Modell durch Upstream-Beiträge kontinuierlich verbessert werden.

InstructLab ist benannt nach und basiert auf der Arbeit von IBM Research an „Large-scale Alignment for chatBots“, abgekürzt LAB. Das LAB-Verfahren wird in einem  Forschungspapier von Mitarbeitenden des MIT-IBM Watson AI Lab und IBM Research von 2024 beschrieben.

InstructLab ist nicht modellspezifisch. Es kann einem LLM Ihrer Wahl zusätzliche Kompetenzen und Kenntnisse vermitteln. Dieser „Kompetenz- und Wissensbaum“ wird kontinuierlich durch Beiträge aus der Community verbessert und kann zur Unterstützung regelmäßiger Weiterentwicklungen eines verbesserten LLM eingesetzt werden. InstructLab betreibt eine  verbesserte Version von IBM Granite. Zwei weitere, mit Lab verbesserte Modelle von IBM sind das von Llama 2 abgeleitete  Labradorite und das von Mistral abgeleitete  Merlinite. Das InstructLab-Projekt legt Wert auf schnelle Iteration und beabsichtigt regelmäßige Retrainings der Modelle. Unternehmen können die InstructLab-Tools zum Modellabgleich auch nutzen, um ihre eigenen privaten LLMs mit ihren Kompetenzen und ihrem Fachwissen zu trainieren.

Das LAB-Verfahren besteht aus 3 Teilen:

  • Taxonomiegesteuerte Datenkuration: Die Taxonomie ist ein Satz verschiedener Trainingsdaten, die von Menschen als Beispiele für neues Wissen und Kompetenzen für das Modell kuratiert wurden.
  • Generierung synthetischer Daten in großem Umfang: Das Modell wird dann verwendet, um neue Beispiele auf der Grundlage der Trainingsdaten zu erzeugen. Da die Qualität synthetischer Daten variieren kann, fügt das LAB-Verfahren einen automatischen Schritt zur Verfeinerung der Beispielantworten hinzu. So wird sichergestellt, dass sie fundiert und sicher sind.
  • Iterative, umfangreiche Abstimmung der Ausrichtung: Zuletzt wird das Modell auf der Grundlage der synthetischen Daten neu trainiert. Das LAB-Verfahren umfasst 2 Tuning-Phasen: Wissenstuning, gefolgt von Kompetenztuning.

Die Datenbeiträge aus der Community können zu regelmäßigen, iterativen Builds verbesserter LLMs führen, die jeweils durch den aus Community-Beiträgen generierten Kompetenzbaum optimiert werden.

Vergleichen wir InstructLab mit den anderen Schritten zur Erstellung und Verbesserung eines LLMs.

Pretraining

Hierbei wird ein LLM so trainiert, dass es das nächste Token anhand von Billionen von Token ungekennzeichneter Daten vorhersagt. Dies ist sehr teuer, erfordert manchmal Tausende von GPUs und dauert Monate. Damit ist das Pretraining eines hochqualifizierten LLM nur für Unternehmen mit erheblichen Ressourcen möglich.

Ausrichtungsabstimmung

Nach dem Pretraining erfolgt eine Ausrichtungsabstimmung der LLMs, um die Antworten des Modells so genau und nützlich wie möglich zu machen. Der erste Schritt ist dabei in der Regel das Instruction Tuning, bei dem ein Modell direkt auf bestimmte Aufgaben trainiert wird. Danach folgt das Preference Tuning, das auch Verstärkungslernen durch menschliches Feedback (Reinforcement Learning from Human Feedback, RLHF) beinhalten kann. In diesem Schritt testen Menschen das Modell und bewerten seine Ergebnisse durch Bewertung der Präferenz der Modellantworten. Ein RLHF-Prozess kann mehrere Phasen der Rückmeldung und Verfeinerung umfassen, um ein Modell zu optimieren.

Forschende haben herausgefunden, dass die Menge des Feedbacks in dieser Abstimmungsphase viel kleiner sein kann als der anfängliche Satz an Trainingsdaten. Dabei handelt es sich um Zehntausende menschlicher Einträge im Vergleich zu den Billionen von Token, die für das Pretraining erforderlich sind, und dennoch können verborgene Fähigkeiten des Modells freigesetzt werden.

InstructLab

Das LAB-Verfahren beruht auf der Idee, dass es möglich sein sollte, die Vorteile der Modellausrichtung mit einem noch kleineren Satz von durch Menschen erstellten Daten zu nutzen. Ein KI-Modell kann eine Handvoll menschlicher Beispiele verwenden, um eine große Menge synthetischer Daten zu generieren, diese dann hinsichtlich ihrer Qualität zu verfeinern und diesen qualitativ hochwertigen, synthetischen Datensatz für weitere Abstimmung und Training nutzen. Im Gegensatz zum Instruction Tuning, für das in der Regel Tausende Beispiele menschlichen Feedbacks benötigt werden, kann LAB ein Modell mit relativ wenigen, von Menschen gelieferten Beispielen erheblich verbessern.

Wie unterscheidet sich InstructLab von RAG (Retrieval Augmented Generation)?

Die kurze Antwort lautet: InstructLab und RAG (Retrieval Augmented Generation) lösen unterschiedliche Probleme.

RAG ist eine kosteneffiziente Methode zur Erweiterung eines LLMs um domainspezifisches Wissen, das nicht Teil des Pretrainings war. So ermöglicht RAG einem Chatbot präzise Antworten auf Fragen, die sich auf einen bestimmten Bereich oder Unternehmen beziehen, ohne dass das Modell dazu neu trainiert werden muss. Wissensdaten werden in einer Vektordatenbank gespeichert, dann in Blöcken abgerufen und als Teil von Nutzeranfragen an das Modell gesendet. Dies ist für Nutzende hilfreich, die einem LLM geschützte Daten hinzufügen möchten, ohne die Kontrolle über diese Daten aufzugeben, oder wenn ein LLM zum Zugriff auf aktuelle Informationen benötigt wird. 

Dies ist der Gegensatz zum InstructLab-Verfahren, bei dem die Beiträge der Endnutzenden als Support für die regelmäßige Erstellung einer verbesserten LLM-Version genutzt werden. InstructLab hilft, Wissen zu erweitern und neue Kompetenzen eines LLMs zu erschließen.

Es ist möglich, durch die Anwendung der RAG-Technik auf ein mit InstructLab abgestimmtes Modell einen RAG-Prozess noch zu verstärken.

Mehr über RAG erfahren
 

InstructLab besteht aus mehreren Projekten.

Taxonomie

InstructLab wird von Taxonomien gesteuert, die größtenteils manuell und sorgfältig erstellt werden. InstructLab enthält einen Taxonomiebaum, mit dem Nutzende Modelle erstellen können, die mit von Menschen zur Verfügung gestellten Daten abgestimmt sind, die dann durch die Generierung synthetischer Daten erweitert werden.

Befehlszeilenschnittstelle (CLI)

Über die InstructLab CLI können die Mitwirkenden ihre Beiträge von ihrem Laptop oder ihrer Workstation aus testen. Mitglieder der Community können die InstructLab-Technik nutzen, um ohne Zugang zu spezieller Hardware eine Low Fidelity-Annäherung an die Generierung synthetischer Daten und die Abstimmung von Modellanweisungen zu erzeugen.

Infrastruktur für das Modelltraining

Abschließend steht der Prozess der Erstellung der verbesserten LLMs. Um die Modelle regelmäßig auf der Grundlage neuer Beiträge aus der Community neu zu trainieren, ist eine GPU-intensive Infrastruktur erforderlich. IBM übernimmt Bereitstellung und Unterhalt der Infrastruktur, die erforderlich ist, um die verbesserten Modelle des InstructLab-Projekts regelmäßig neu zu trainieren.

Sobald Sie für die Einführung von KI im Unternehmen bereit sind, erhalten Sie mit Red Hat® Enterprise Linux® AI die Granite-Familie von LLMs mit Open Source-Lizenz, InstructLab-Tools für die Modellanpassung, ein startfähiges Image von Red Hat Enterprise Linux, technischen Support auf Unternehmensniveau und eine Regelung zum geistigen Eigentum der Modelle.

Red Hat Enterprise Linux ist die weltweit führende Linux-Plattform für Unternehmen, die für Hunderte von Clouds und Tausende von Hardware- und Softwareanbietern zertifiziert ist. Mit der technologischen Basis von Linux, Containern und Automatisierung gibt Ihnen die Open Hybrid Cloud-Strategie von Red Hat die Flexibilität, Ihre KI-Anwendungen dort auszuführen, wo Sie sie benötigen.

Red Hat Enterprise Linux AI und das InstructLab-Projekt tragen zur Verwirklichung dieser Vision bei, indem sie die Kosten- und Ressourcenbarrieren für das Experimentieren mit und die Entwicklung von KI-Modellen überwinden und gleichzeitig die für die nächste Welle intelligenter Workloads benötigten Tools, Daten und Konzepte bereitstellen.

Weiterlesen

Artikel

Was ist generative KI?

Generative KI stützt sich auf Deep Learning-Modelle, welche auf großen Datensätzen trainiert wurden, um neue Inhalte zu erstellen.

Artikel

Was ist Machine Learning?

Beim Machine Learning (ML) oder maschinellem Lernen wird ein Computer darauf trainiert, Muster zu finden, Vorhersagen zu treffen und aus Erfahrungen zu lernen, ohne explizit programmiert zu werden.

Artikel

Was sind Basismodelle?

Ein Basismodell ist ein Modell des maschinellen Lernens (ML), das für das Ausführen verschiedener Aufgaben trainiert ist. 

Mehr über KI/ML

Produkte

Jetzt verfügbar

Eine Plattform für Basismodelle, mit der Sie Unternehmensanwendungen mithilfe von Large Language Models (LLMs) der Granite-Familie nahtlos entwickeln, testen und bereitstellen können.

Ein auf KI fokussiertes Portfolio, das Tools zum Trainieren, Tuning, Bereitstellen, Überwachen und Managen von KI/ML-Experimenten und -Modellen auf Red Hat OpenShift bietet.

Eine Plattform, die es Ihnen ermöglicht, Unternehmensanwendungen schnell und effizient über die von Ihnen gewünschte Infrastruktur bereitzustellen. 

Red Hat Ansible Lightspeed mit IBM watsonx Code Assistant ist ein generativer KI-Service, der von und für Teams aus dem Bereich Automatisierung, Operations und Entwicklung für Ansible konzipiert wurde. 

Ressourcen

E-Book

Wichtige Überlegungen beim Aufbau einer produktionsbereiten KI/ML-Umgebung

Analystenreport

Total Economic Impact™ der Red Hat Hybrid Cloud-Plattform für MLOps

Webinar

Getting the most out of AI with Open Source and Kubernetes