Amazon Bedrock angetestet

07.03.2024
Von 
Martin Heller schreibt als freier Autor für die Schwesterpublikation InfoWorld.

Modelle bewerten und bereitstellen mit Amazon Bedrock

Der Bereich "Assessment and Deployment" in Amazon Bedrock enthält Funktionen,

  • Um KI-Modelle zu evaluieren und

  • Durchsatz bereitzustellen ("Provisioned Throughput").

Die Modellbewertung unterstützt die automatische Bewertung eines einzelnen Modells, die manuelle Bewertung von bis zu zwei Modellen (durch Ihr eigenes Team) sowie die manuelle Bewertung von beliebig vielen Modellen durch AWS-Experten. Dabei werden empfohlene Metriken verwendet, die je nach Art der Evaluierungsaufgabe variieren. Dabei können entweder eigene oder kuratierte Prompt-Datensätze genutzt werden.

Automatisierte Modell-Evaluierung in Amazon Bedrock.
Automatisierte Modell-Evaluierung in Amazon Bedrock.
Foto: Martin Heller | IDG

Provisioned Throughput ermöglicht Ihnen, dedizierte Kapazität zu erwerben, um Ihre KI-Modelle bereitzustellen. Die Kosten dafür variieren je nach gewähltem Modell und dem Grad der Verpflichtung, den Sie bereit sind einzugehen.

Dedizierter Durchsatz ist nicht günstig - und nicht für jedes Modell verfügbar. In diesem Beispiel sehen Sie, wieviel fünf Model Units des Llama-2-Modells Chat 13B für einen Monat kosten. Eine längere Laufzeit kann den Preis nach unten drücken.
Dedizierter Durchsatz ist nicht günstig - und nicht für jedes Modell verfügbar. In diesem Beispiel sehen Sie, wieviel fünf Model Units des Llama-2-Modells Chat 13B für einen Monat kosten. Eine längere Laufzeit kann den Preis nach unten drücken.
Foto: Martin Heller | IDG

KI-Modelle anpassen in Amazon Bedrock

An dieser Stelle macht es Sinn, einen detaillierten Blick auf die Möglichkeiten zu werfen, die Amazon Bedrock bietet, um KI-Modelle anzupassen. Folgende Customization-Methoden sind implementiert:

  • Prompt Engineering ist eine der einfachsten Möglichkeiten, um ein GenAI-Modell anzupassen. Typischerweise akzeptieren Modelle zwei Arten von Prompts: die des Benutzers und System-, respektive Instruktions-Prompts. Während sich ersterer ständig ändert, definiert letzteres die allgemeinen Merkmale, die das Modell übernehmen soll. Prompt Engineering ist oft ausreichend, um zu definieren, wie ein Modell auf eine genau definierte Aufgabe reagieren soll.

  • Retrieval Augmented Generation (RAG) hilft dabei, Large Language Models (LLMs) mit spezifischen Datenquellen zu "erden". Dabei handelt es sich oft um Informationen, die nicht im ursprünglichen Trainingsdatensatz der Modelle enthalten waren. RAG läuft in drei Schritten ab: 1. Daten werden aus einer spezifischen Quelle (der Knowledge Base im Bedrock-Jargon) "gezogen"; 2. Der Prompt wird um den aus der Quelle abgerufenen Kontext erweitert; 3. Anschließend wird mit diesen "Zutaten" der Output generiert;

  • Embeddings kommen oft in RAG-Prozessen zum Einsatz, um die Länge und Relevanz des abgerufenen Kontexts zu optimieren. Im Wesentlichen nimmt eine Einbettungsfunktion ein Wort oder eine Phrase und ordnet sie einem Vektor von Fließkommazahlen zu. Diese werden normalerweise in einer Datenbank gespeichert, die einen Vektorsuchindex unterstützt. Im "Retrieval"-Schritt wird dann eine semantische Ähnlichkeitssuche durchgeführt, bei der in der Regel der Kosinus des Winkels zwischen der Einbettung der Anfrage und den gespeicherten Vektoren verwendet wird, um "naheliegende" Informationen zu finden. Suchmaschinen gehen normalerweise genauso vor, um ihre Antworten zu finden.

  • Conversational Retrieval Agents oder Agenten, erweitern die Idee der Conversational LLMs mit einer Kombination aus Tools, laufendem Code, Embeddings und Vector Stores. Man könnte sie auch als "RAG mit Zusatzleistungen" bezeichnen. Agenten können dazu beitragen, große Sprachmodelle auf bestimmte Domains zu spezialisieren und maßgeschneiderte Outputs zu produzieren. LangChain und LangSmith können es vereinfachen, RAG-Pipelines und -Agenten aufzubauen.

  • LLM-Feintuning ist ein Supervised-Learning-Prozess, bei dem die Parameter des Modells auf einen bestimmten Task abgestimmt werden. Dazu wird das Modell auf einem kleineren, aufgabenspezifischen Datensatz trainiert, der mit für die Zielaufgabe relevanten Beispielen gelabelt ist. Der Prozess der Feinabstimmung dauert oft mehrere Stunden oder Tage und erfordert Hunderte oder Tausende von getaggten Beispielen auf Serverebene. Trotzdem ist Feintuning deutlich schneller als erweitertes Pretraining.

  • LLM-Pretraining stellt einen Unsupervised-Learning-Prozess dar. Dabei werden dem LLM Sprachgrundlagen "beigebracht" und ein generisches Basismodell erstellt. Erweitertes oder fortgesetztes Pretraining erweitert dieses Basismodell um ungelabelte, domänen- oder aufgabenspezifische Datensätze. Das trägt dazu bei, das KI-Modell zu spezialisieren. Auf das fortgesetzte Pretraining folgt oft eine Feinabstimmung.

Sowohl Feinabstimmung als auch fortgesetztes Pretraining sind im Regelfall teure und langwierige Prozesse. Dabei kann es auch eine Herausforderung darstellen, die Daten für diese Prozesse vorzubereiten. Beim Feintuning besteht die Challenge darin, das Tagging im Rahmen des Budgets zu bewerkstelligen. Die Herausforderung beim fortlaufenden Pretraining ist es dagegen, einen Datensatz für den gewählten, spezifischen Bereich zu finden, der keine Verzerrungen oder Ähnliches enthält.

Individuelle Modelltrainingsaufgaben können in Amazon Bedrock übersichtlich gemanagt werden. Status-Codes geben dabei jederzeit Auskunft über den Stand der Dinge.
Individuelle Modelltrainingsaufgaben können in Amazon Bedrock übersichtlich gemanagt werden. Status-Codes geben dabei jederzeit Auskunft über den Stand der Dinge.
Foto: Martin Heller | IDG
Wenn Sie Ihre Modelle in Amazon Bedrock angepasst haben, können Sie diese über das "Models"-Tab verwalten.
Wenn Sie Ihre Modelle in Amazon Bedrock angepasst haben, können Sie diese über das "Models"-Tab verwalten.
Foto: Martin Heller | IDG

PartyRock als Low-Code-Addon für Bedrock

Begleitend zu Bedrock hat AWS mit PartyRock eine in weiten Teilen kostenlose Low-Code-Plattform veröffentlicht. Die soll Anwender beim Einstieg ins Thema Generative AI begleiten und sie dabei unterstützen, erste, kleine KI-Applikationen zu bauen. Wie Sie PartyRock nutzen, erklärt AWS-Chefevangelist Jeff Barr in einem Blogbeitrag.