RAG

Task Decomposition und Small Language Models (SLMs)

Die wachsende Popularität von Large Language Models (LLMs) ist unverkennbar. Ihre Fähigkeit, natürliche Sprache zu verstehen und zu generieren, hat oder wird noch viele Branchen revolutionieren, von der Kundenbetreuung bis hin zur Softwareentwicklung. Doch mit der Größe dieser Modelle steigen auch die Kosten – nicht nur für ihre Entwicklung, sondern auch für die laufenden Betriebskosten, wie etwa Lizenzgebühren und die notwendige Infrastruktur, die ihren Einsatz ermöglicht. Diese laufenden Kosten können eine erhebliche Hürde für Unternehmen darstellen, insbesondere für kleinere Organisationen oder solche, die gerade erst beginnen, in AI zu investieren.

Hier kommt das Konzept der "Task Decomposition" ins Spiel, bei dem komplexe Aufgaben in kleinere, spezialisierte Teilaufgaben zerlegt werden. Dies ermöglicht den Einsatz mehrerer kleinerer und kostengünstigerer Sprachmodelle, statt eines großen. Dieser Ansatz kann dazu beitragen, die Kosten zu senken und gleichzeitig eine hohe Effizienz zu gewährleisten. Der Artikel erklärt, wie Task Decomposition in Kombination mit Small Language Models (SLMs) funktioniert und warum sie eine vielversprechende Lösung für Unternehmen darstellt, die mit generativer KI arbeiten wollen, ohne über das Budget für die größten Modelle zu verfügen.

Die EntwicklungsKosten von Large Language Models für OPENAI & co.

Die Nachfrage nach präzisen und leistungsfähigen Large Language Models (LLMs) steigt rasant. Unternehmen möchten den Nutzen generativer KI nutzen, doch die dafür nötigen Ressourcen können sehr kostspielig sein. Große Sprachmodelle, die oft Milliarden von Parametern besitzen, sind nicht nur teuer in der Entwicklung, sondern auch im laufenden Betrieb. Diese Modelle werden durch das Training auf riesigen Datensätzen entwickelt, was ebenfalls immense Rechenleistung erfordert.

Das Training eines Large Language Models (LLM) umfasst mehrere Durchläufe über große Mengen an Textdaten, bei denen das Modell lernt, Sprachmuster zu erkennen und darauf basierend Antworten zu generieren. Die Kosten für die Berechnung, Speicherung und Skalierung dieser Modelle können leicht in die Millionenhöhe gehen.

Ein einfaches Beispiel zeigt die Unterschiede: Ein Large Language Model (LLM) mit 175 Milliarden Parametern benötigt deutlich mehr Rechenleistung als ein Modell mit 1,5 Milliarden Parametern. Dies liegt daran, dass größere Modelle aufgrund der Anzahl der Parameter eine exponentiell höhere Anzahl an Berechnungen erfordern.

Das Training solcher Modelle beinhaltet Matrixoperationen, deren Komplexität mit der Anzahl der Parameter quadratisch oder sogar kubisch skaliert, also im Bereich von mehreren hundert bis tausendfachen Rechenaufwänden. Jede zusätzliche Schicht und jeder zusätzliche Parameter führt zu einer drastischen Erhöhung des Rechenaufwands, was die benötigten Ressourcen und somit auch die Kosten stark ansteigen lässt.

Die erforderlichen Hardwarekosten, wie GPU-Cluster, sowie der Stromverbrauch sind dabei entscheidende Faktoren. Der Wechsel auf Small Language Models kann die Kosten um bis zu 70–90 % senken, bedeutet aber in der Regel auch Abstriche in der Leistung. Dennoch gibt es Möglichkeiten, diese Kosteneinsparungen zu realisieren, ohne große Leistungseinbußen hinnehmen zu müssen – hier kommt Task Decomposition ins Spiel.

Der Weg zur Effizienz: Task Decomposition und Small Language Models

Task Decomposition beschreibt den Prozess, eine komplexe Aufgabe in kleinere, spezialisierte Teilaufgaben zu zerlegen. Technisch gesehen bedeutet dies, dass die einzelnen Aufgabenbereiche durch spezialisierte Module abgedeckt werden, die auf bestimmte Funktionen optimiert wurden. Dies erfolgt durch die Nutzung bestehender SLMs, die durch Technologien wie Retrieval-Augmented Generation (RAG) oder spezialisierte Systemnachrichten optimiert werden.

Anstatt jedes Modell feinzujustieren, wird RAG verwendet, um relevante Informationen aus vorhandenen Datenbanken zu extrahieren und in den Kontext der Anfrage einzubetten. Systemnachrichten helfen dabei, die Modelle für bestimmte Aufgaben zu fokussieren, indem sie klare Anweisungen und Rollen vorgeben. Dadurch können bestehende Modelle effizient auf spezifische Teilaufgaben ausgerichtet werden, ohne dass eine umfangreiche Anpassung oder Feinabstimmung erforderlich ist.

Anstatt ein einziges Large Language Model für alle Aufgaben zu verwenden, werden mehrere kleinere SLMs eingesetzt, die jeweils auf eine spezifische Aufgabe zugeschnitten sind. Das führt zu einer effizienteren Nutzung der Ressourcen, da jedes Modell nur die spezifischen Berechnungen durchführt, die für seine Aufgabe notwendig sind, anstatt alle möglichen Kontexte zu berücksichtigen.

Ein großer Vorteil dieses Ansatzes ist die erhöhte Kontrolle. Durch die Aufteilung in kleinere Module lassen sich Fehler leichter identifizieren und beheben. Technisch wird dies durch das Isolieren der Fehlerquellen ermöglicht, da die spezifischen Module unabhängig voneinander funktionieren und die jeweiligen Fehlfunktionen direkt auf ihren spezifischen Bereich zurückgeführt werden können.

Zum Beispiel könnte ein Unternehmen einen spezialisierten SLM für die Textzusammenfassung und einen weiteren für die Beantwortung von Fragen einsetzen. Jede Aufgabe wird dadurch spezialisierter und kann gezielter optimiert werden, wodurch sowohl die Fehlersuche als auch die Verbesserung der Leistungsfähigkeit jedes Moduls vereinfacht wird.

Agentic Workflows und Spezialisierung

Agentic Workflows sind ein weiteres wichtiges Konzept im Zusammenhang mit Task Decomposition. Hierbei werden funktionsbasierte oder rollenbasierte Agenten eingesetzt, die jeweils spezifische Aufgaben übernehmen. Dies ermöglicht eine noch bessere Anpassung der einzelnen Module an die Anforderungen der jeweiligen Aufgabe.

Beispiel: Erstellung einer personalisierten Website

Ein praktisches Beispiel für den Einsatz von Task Decomposition ist die Erstellung einer personalisierten Website. Angenommen, ein Unternehmen möchte für jeden Website-Besucher eine maßgeschneiderte Erfahrung bieten, ohne dass dabei menschliche Aufsicht notwendig ist. Dies kann durch den Einsatz mehrerer spezialisierter Agenten erreicht werden:

  • UX/UI-Designer-Agent: Dieser Agent personalisiert das Erlebnis basierend auf den Nutzerprofilen, den Unternehmensrichtlinien und den angebotenen Produkten. Er erstellt eine Beschreibung der Website und legt visuelle Elemente für die weitere Umsetzung fest.
  • Künstler-Agent: Der Künstler-Agent ist dafür verantwortlich, die vom UX/UI-Agenten beschriebenen visuellen Elemente zu erstellen. Dies umfasst Hintergrundbilder, Icons oder andere grafische Elemente, die auf der Website verwendet werden.
  • Frontend-Entwickler-Agent: Der Frontend-Entwickler-Agent setzt schließlich die Website um, indem er die HTML-, CSS- und JavaScript-Komponenten erstellt. Er folgt den Anweisungen des UX/UI-Agenten und sorgt für eine ansprechende und barrierefreie Umsetzung.

Diese Arbeitsteilung ermöglicht es, kleinere, spezialisierte SLMs einzusetzen, wodurch die Gesamtkosten erheblich reduziert werden können, während die Effizienz erhalten bleibt.

LLM decomposition.png
Generierung einer personalisierten Website mit einem einzigen großen LLM (oben) im Vergleich zur Zerlegung der Aufgabe mit kleineren LLMs (unten). - Amazon

Die Balance zwischen Kostenersparnis und Systemkomplexität

Während Task Decomposition zahlreiche Vorteile bietet, führt sie auch zu einer Erhöhung der Systemkomplexität. Die Einführung mehrerer spezialisierter SLMs bedeutet, dass zusätzliche Koordinationsaufgaben notwendig sind. Diese Komplexität kann dazu führen, dass die anfänglichen Kostenvorteile teilweise wieder aufgezehrt werden.

Der Trade-off besteht darin, dass zwar Kosteneinsparungen durch kleinere Modelle erzielt werden können, aber die Orchestrierung der einzelnen Komponenten zusätzliche Herausforderungen schafft. Die Formel für die Kostenkomplexität kann wie folgt beschrieben werden: Bei einem Large Language Model wächst die Komplexität linear mit der Menge an Aufgaben, die es bewältigen muss. Wenn die Aufgabe jedoch in mehrere kleinere Teilaufgaben zerlegt wird, muss der Aufwand für die Koordination der verschiedenen Teile berücksichtigt werden.

Ein weiterer potenzieller Nachteil von Task Decomposition ist das Risiko des Overengineerings. Wenn eine Aufgabe in zu viele Teilaufgaben zerlegt wird, kann dies zu einer unnötigen Komplexität und erhöhten Latenzzeiten führen. Jede neue Schnittstelle zwischen zwei Agenten erhöht die Wahrscheinlichkeit von Fehlern und kann die Reaktionsgeschwindigkeit des gesamten Systems verringern.

Ein Beispiel für Overengineering wäre die Aufteilung einer relativ einfachen Aufgabe, wie das Erstellen eines Kontaktformulars, in zu viele Schritte. Dies führt nicht nur zu erhöhter Fehleranfälligkeit, sondern auch zu einer unnötig hohen Anzahl von Datenübergaben und einer potenziell verringerten Nutzererfahrung.

Wann Task Decomposition sinnvoll ist

Um zu entscheiden, ob Task Decomposition sinnvoll ist, sollte man sich das gesamte Bild der Anwendung anschauen. Ein einfaches Modell zur Entscheidungshilfe ist die Abschätzung der Gesamtkosten (Total Cost of Ownership, TCO) einer KI-Anwendung. Wenn die Nutzerbasis klein ist und die Anforderungen einfach sind, kann es günstiger sein, ein einziges, großes Modell zu verwenden. Sobald jedoch die Anzahl der Nutzer wächst und die damit verbundenen Infrastrukturkosten steigen, wird Task Decomposition zu einer attraktiven Option, um erhebliche Einsparungen zu erzielen.

Ein weiterer Vorteil der Task Decomposition ist die Möglichkeit zur Wiederverwendung spezialisierter Module. Wenn ein Unternehmen beispielsweise bereits ein RAG-System mit optimierten Language Models zur Code-Erstellung hat, kann dieser auch in anderen Projekten genutzt werden. Dies verringert die Notwendigkeit, wiederholt Ressourcen für dieselben Aufgaben aufzuwenden.

Während Task Decomposition klare Vorteile bei der Effizienz und Kostensenkung bietet, kann sie auch die Kreativität einschränken, die Large Language Models oft bieten. Große Modelle sind in der Lage, unerwartete Verbindungen herzustellen und neue, kreative Lösungen zu finden. Durch die Aufteilung der Aufgaben in spezialisierte Subaufgaben in Verbindung mit Small Language Models besteht das Risiko, dass solche spontanen, kreativen Einfälle verloren gehen.

Es ist wichtig, die Balance zu finden. Während spezialisierte Modelle effizienter sein können, sollte die kreative Stärke großer Modelle nicht vollständig vernachlässigt werden. In einigen Szenarien kann es sinnvoll sein, große Modelle für explorative Aufgaben einzusetzen und anschließend spezialisierte Agenten für die Umsetzung zu verwenden.

Fazit

Task Decomposition und der Einsatz von kleineren, spezialisierten SLMs sind ein vielversprechender Ansatz, um die Kosten von KI-Anwendungen zu senken und die Effizienz zu steigern. Dieser Ansatz bietet Unternehmen die Möglichkeit, maßgeschneiderte Lösungen zu entwickeln, ohne die hohen Infrastrukturkosten großer Modelle tragen zu müssen. Gleichzeitig ist jedoch Vorsicht geboten, da die erhöhte Komplexität durch die Orchestrierung mehrerer Agenten zu einer Reduktion der Kostenvorteile führen kann.

Die richtige Balance zwischen Kostenersparnis, Systemkomplexität und der kreativen Nutzung großer Modelle wird entscheidend sein, um das volle Potenzial von Task Decomposition auszuschöpfen. Unternehmen sollten ihre KI-Strategien flexibel halten, um sowohl kosteneffizient als auch innovativ agieren zu können.

Du hast Interesse an einem Expertencall zu dem Thema?

Möchtest du mehr über das Thema erfahren? Fülle einfach das folgende Formular aus, und wir melden uns umgehend bei dir.

Portrait von Frederic Bauerfeind vor einer Glasfront.
Frederic Bauerfeind
Managing Director & Founder