Domain Driven Design trifft auf Künstliche Intelligenz
Die wichtigsten KI & DDD Begriffe erklärt
Bei Trustbit kombinieren wir unsere Expertisen in künstlicher Intelligenz mit unserer langjährigen Erfahrung des Domain Driven Designs, um KI-basierte Produkte zu entwickeln, die die Stärken beider Bereiche integrieren.
-
KI-Assistent ist ein generischer Name für ein IT-System, das maschinelle Lernmodelle verwendet, um Menschen bei der schnelleren Durchführung komplexer Arbeitsabläufe zu helfen.
Technisch gesehen würde ein solches System wahrscheinlich aus einem oder mehreren Machine Learning-Modellen (in der Regel Large Language Models, also Sprachmodellen wie zB GPT), Datenspeicherung und automatisierten Arbeitsabläufen bestehen, um die Daten zu verarbeiten und Benutzeranfragen zu bearbeiten.
-
Mechanismen, die es Sprachmodellen ermöglichen, ihre Aufmerksamkeit gezielt auf bestimmte Teile der Daten zu richten, um bessere Vorhersagen zu treffen. Der Aufmerksamkeits-Mechanismus wird mittels einer spezialisierten Schicht in der Transformator-Architektur implementiert.
-
Vektorbasiertes Retrieval-Augmented Generation (RAG) ist ein Prozess, bei dem umfangreiche Dokumente in kleinere, handhabbare Teile zerlegt werden. Diese kleineren Teile, auch „Chunks“ genannt, ermöglichen es einem Computersystem, Informationen effizienter zu verarbeiten, zu durchsuchen und darauf zuzugreifen. Stellen Sie sich ein großes Buch vor, das in mehrere kurze Abschnitte oder Kapitel unterteilt ist. Jeder Abschnitt oder „Chunk“ ist einfacher zu handhaben und zu durchsuchen als das ganze Buch auf einmal.
Diese Chunks sind im Kontext von RAG klein genug, um einzeln analysiert und gespeichert zu werden, was den Informationsabruf beschleunigt. Die Größe dieser Chunks variiert in der Regel zwischen 128 und 1024 Zeichen. Diese Begrenzung hilft dabei, eine Balance zwischen Detailgenauigkeit und Verarbeitungsgeschwindigkeit zu finden. Zu kleine Chunks könnten wichtige Informationen aus dem Kontext reißen, während zu große Chunks die Verarbeitung verlangsamen könnten.
-
In DDD (Domain-Driven Design) ist ein Domain-Experte eine Person mit tiefgreifendem Wissen und Verständnis für den Geschäftsbereich oder ein spezifisches Business-Problem.
-
Im Kontext von Domain-Driven Design (DDD) ist das Domain Model eine abstrakte Darstellung eines Geschäftsbereiches. Dieses Modell ist nicht einfach eine direkte Kopie der realen Geschäftswelt, sondern eher eine vereinfachte Darstellung, die darauf abzielt, die wesentlichen Aspekte und Prozesse des Geschäfts zu erfassen und zu strukturieren.
Das Ziel des Domain Models ist es, ein tieferes Verständnis für den Geschäftsbereich zu entwickeln, der automatisiert werden soll. Es beinhaltet wichtige Entitäten (wie Produkte, Dienstleistungen, Kunden, Verträge usw.), ihre Beziehungen untereinander und die Regeln, die ihre Interaktionen steuern.
Indem es die komplexen Aspekte des realen Geschäfts in einer strukturierten Form abbildet, dient das Domain Model als Brücke zwischen den technischen und geschäftlichen Aspekten eines Projekts.
Das Domain Model hilft Entwicklern und Geschäftsleuten gleichermaßen, eine gemeinsame Sprache zu finden. Es erleichtert die Kommunikation und stellt sicher, dass die Softwarelösung die Geschäftsanforderungen genau widerspiegelt.
-
Ein Embedding ist die Darstellung eines Textes als numerischer Vektor, der darauf abzielt, die Semantik des Textes zu erfassen: Wenn zwei Einbettungen eine geringe Distanz aufweisen, dann ist ihre Bedeutung verwandt. Einbettungen werden von maschinellen Lernmodellen berechnet – sie werden erlernt.
-
Ein Training-Prozess, der es ermöglicht, Sprachmodelle weiter zu spezialisieren zum Erwerb neuer Fähigkeiten und Einsichten. Dies bedarf spezieller, zielgerichteter Datensätze.
Die beliebteste Form des Fine-Tunings ist “LoRA”, bei der der größte Teil des Sprachmodells eingefroren wird und nur ein kleiner Teil davon angepasst wird.
-
Halluzination tritt auf, wenn ein Sprachmodell (Large Language Model) eine Antwort liefert, die falsch oder völlig losgelöst von der Realität ist. Halluzinationen treten normalerweise auf, wenn:
- das Modell schwach oder schlecht trainiert ist,
- die notwendigen Informationen im Eingabekontext fehlen,
- der Eingabekontext auch mit irrelevanten Informationen gefüllt ist,
- das LLM aufgefordert wird, etwas zu tun, wofür es nicht ausgelegt ist: z.B. Mathematik oder Reimen.
-
Inferenz bedeutet, ein trainiertes Sprachmodell zu verwenden, um basierend auf den Eingabedaten neuen Text zu generieren.
Wenn wir darüber sprechen, Text mit einem Sprachmodell zu erzeugen, können Sie sich das ähnlich wie einen Schriftsteller vorstellen, der auf Basis seiner vorherigen Lektüre und Erfahrung schreibt. Das Modell hat während der vorherigen Lernphase viele Texte gelesen und versucht nun, basierend auf einem gegebenen Anfangsstück oder Stichworten, eigenen Text zu schreiben. In diesem Prozess fügt es jeweils ein Wort (oder ein kleines Stück Text, auch Token genannt) nach dem anderen hinzu, um einen zusammenhängenden und sinnvollen Text zu bilden.
Dieser Prozess des Textschreibens wird als "Inferenz" bezeichnet und unterscheidet sich von der "Trainingsphase", in der das Modell lernt.
Weietre Begriffe, die synonym für Inferenz gebraucht werden, sind: Prediction, Output Generation, Model Response
-
Im Kontext von KI-Assistenten sind Knowledge Maps informative Hilfsmittel, die Sprachmodellen (Large Language Models) dabei unterstützen, relevante Informationen zu finden und hilfreiche Antworten zu liefern.
Knowledge Maps können so gestaltet werden, dass sie die Arbeitsabläufe und mentalen Modelle von menschlichen Experten widerspiegeln, die ähnliche Aufgaben ausführen. DDD (Domain-Driven Design) bietet Prozesse für diese Gestaltung, siehe dazu “Domain Models.”
-
Ein LLM (Large Language Model) ist ein sehr großes Maschinelles Lernmodell und zählt zum Themenkomplex des Deep Learnings. Genauer gesagt, handelt es sich üblicherweise um einen sogenannten “Transformer”, der mehrere neuronale Netze in seiner Architektur beinhaltet.
Das Besondere an LLMs: Sie sind in der Lage, Eingabedaten zu erkennen und völlig neue Ausgabedaten zu generieren. Deshalb zählen sie zur sogenannten generativen Künstliche Intelligenz.
GPT-4 ist das bekannteste LLM – es kann Text und Bilder verstehen und als Reaktion darauf neue Inhalte generieren.
-
Man kann einige LLMs auf einem eigenen Computer oder sogar Telefon betreiben, vollständig losgelöst vom Internet.
Solche LLMs werden üblicherweise als lokale LLMs bezeichnet. Mistral und Llama sind die bekanntesten LLMs, die man lokal ausführen kann.
Das lokale Ausführen von LLMs (Large Language Models) bietet Unternehmen verschiedene Vorteile. Ein Hauptgrund dafür ist der Datenschutz: Wenn ein LLM lokal auf Unternehmenshardware betrieben wird, bleiben alle verarbeiteten Daten im internen Netzwerk. Dies reduziert das Risiko von Datenlecks oder unerwünschtem Zugriff durch Dritte, was besonders für Unternehmen wichtig ist, die mit sensiblen Informationen arbeiten.
Ein weiterer Vorteil ist die Kontrolle. Unternehmen können die Umgebung, in der das LLM läuft, vollständig steuern, was bedeutet, dass sie die Systemeinstellungen, Datenschutzmaßnahmen und Nutzungspolitik nach ihren Bedürfnissen anpassen können. Dies ermöglicht eine feinere Abstimmung der Leistung und Sicherheit des Modells.
Zudem verbessert das lokale Ausführen von LLMs oft die Reaktionsgeschwindigkeit, da keine Verzögerungen durch Netzwerkanfragen an externe Server entstehen. Dies kann besonders für zeitkritische Anwendungen wichtig sein, wo jede Sekunde zählt.
Schließlich kann das lokale Betreiben von LLMs langfristig kosteneffizienter sein, besonders bei hohem Nutzungsgrad. Obwohl die anfänglichen Kosten für die Einrichtung und Wartung hoch sein können, entfallen die laufenden Kosten für Cloud-Dienste, was bei ständigem Gebrauch eine erhebliche Ersparnis darstellen kann.
-
Ein Parameter ist ein numerischer Wert, den das Sprachmodell während des Trainingsprozesses gelernt hat. Dieser Wert beeinflusst sein Verhalten. Die meisten modernen Sprachmodelle verfügen über eine Vielzahl von Parametern.
Jeder dieser Parameter hilft dem Modell, bestimmte Merkmale der Sprache besser zu erfassen. Je mehr Parameter ein Modell hat, desto detaillierter kann es lernen und desto feiner kann es Unterschiede in der Sprache erkennen und darauf reagieren. Ein Modell wie Mistral 7B hat zum Beispiel 7 Milliarden solcher Parameter während ein größeres Modell wie ChatGPT-4 sogar bis zu einer Billion hat. Diese große Anzahl an Parametern ermöglicht es dem Modell, sehr komplexes und vielfältiges sprachliches Wissen zu speichern und zu nutzen, was ihm hilft, menschenähnlicher und genauer zu kommunizieren. -
Im Kontext von LLMs (Large Language Models) ist ein Prompt eine sorgfältig formulierte Anweisung an das Sprachmodell.
Die Qualität dieser Anweisungen beeinflusst stark die Qualität der Antworten des LLMs. Dies hat ein Wissensgebiet namens Prompt Engineering geschaffen (z.B. hier finden Sie einen Prompting-Leitfaden).
Mit der Zeit wird erwartet, dass die Bedeutung der Prompt-Qualität dank RLHF (Reinforcement Learning from Human Feedback) und allgemeinem Modelltraining abnimmt.
-
Retrieval-Augmented Generation beschreibt ein System, bei dem ein LLM zusätzliche Dokumente konsultieren kann, bevor es eine Antwort gibt.
Dies ermöglicht die Arbeit mit Daten, auf denen das Modell nicht trainiert wurde.
Beispiel: Ein KI-Chatbot, der PDFs lesen und Fragen dazu beantworten kann.
RAG Systeme sind daher besonders spannend für Unternehmen, da sie zum Beispiel im Wissensmanagement und im Bereich der Dokumentenverwaltung eingesetzt werden können.
-
RHLF steht für Reinforced Learning from Human Feedback (verstärktes Lernen durch menschliches Feedback). Es ist ein iterativer Prozess, der es einem trainierten Sprachmodell ermöglicht, sich besser an menschliche Präferenzen anzupassen, basierend auf dem Feedback.
-
Die Temperatur ist ein Parameter im Inferenzprozess von Sprachmodellen, der bestimmt, wie zufällig und kreativ die Ausgaben sind. Ist die Temperatur größer als null, wählt das Modell nicht das nächst-wahrscheinlichste Token, sondern stattdessen ein ausreichend passendes aus.
-
Sprachmodelle arbeiten mit Zahlen. Tokenisierung ist ein Prozess, bei dem Wörter in Zahlen umgewandelt werden, mit denen Sprachmodelle operieren können. Am häufigsten wird dies mit einem “BPE-Tokenisierer” durchgeführt, der ein Wörterbuch aus Wörtern und Wortteilchen verwendet.
Der Prozess der Tokenisierung unterscheidet sich vom Embedding-Prozess, da er die genauen Informationen über die Wörter und Buchstaben bewahrt.
-
Der Prozess der Erstellung eines neuen Sprachmodells besteht darin, es zu lehren, Texte zu verstehen und zu generieren. Es lernt neue Sprachmuster aus umfangreichen Datensätzen in Form von Webseiten, Büchern und Foren.
Das Training kann sehr rechenintensiv sein. Statt ein Sprachmodell von Grund auf neu zu trainieren, kann es sinnvoller sein, ein vortrainiertes Modell mittels Fine-Tuning auf die eigenen Bedürfisse abzusimmen.
-
Das Transfomer-Modell beschreibt eine neue Architektur neuronaler Netze. Die meisten der populären Sprachmodelle basieren auf einem solchen Modell, das mehrere Modelle parallel nutzt. Diese parallele Struktur ermöglicht es dem Modell, schnell und effizient große Datenmengen zu verarbeiten. Jede Schicht des Modells trägt dazu bei, die Verständnisfähigkeit des gesamten Systems zu verbessern, indem sie spezifische Aspekte der Daten analysiert und interpretiert.
-
Vektoren sind eine Sequenz von Zahlen. Im Kontext von Sprachmodellen (LLMs) sind Vektoren numerische Darstellungen von Wörtern und Textfragmenten, die die semantische Beziehung zwischen verschiedenen Texten erfassen.
-
Eine Vektor-Datenbank ist eine Datenbank, die Vektoren – große Listen von Zahlen – effizient speichern und verarbeiten kann.
Pinecone, Milvus und Weaviate sind als spezialisierte Vektor-Datenbanken bekannt, aber heutzutage können sogar gewöhnliche SQL-Datenbanken effizient mit Vektoren arbeiten.
Durch die Nutzung einer Vektor-Datenbank können RAG-Systeme also schnell auf eine umfangreiche Menge an Informationen zugreifen und Daten zur Beantwortung von Anfragen abrufen.
Holen Sie sich Klarheit: Wir helfen Ihnen, KI- und DDD-Begriffe zu verstehen!
Verstehen Sie einen speziellen Begriff aus der Welt der künstlichen Intelligenz (KI) oder des Domain-Driven Designs (DDD) nicht? Keine Sorge, unsere Expertinnen und Experten für KI und DDD helfen gerne.
Teilen Sie uns einfach mit, welchen Begriff Sie klären möchten, und wir nehmen ihn in unser Glossar auf!
TAUCHEN SIE EIN IN DIE WELT DER LARGE LANGUAGE MODELS
Das 101 der KI-Sprachmodelle und ihr Nutzen für Unternehmen
Sprachmodelle wie GPT und Co. eröffnen Unternehmen enorme Möglichkeiten, indem sie Aufgaben automatisieren, bei der Analyse und Erstellung von Inhalten, der Generierung von Leads und der Steigerung der Effizienz helfen.
Wir erläutern die Grundlagen sogenannter Large Language Models (Sprachmodelle) und erklären, wie man sie in Unternehmen einsetzen kann.
Das könnte Sie auch interessieren
Entwicklung von KI-Assistenten für Unternehmen
Wir beleuchten aus verschiedenen Perspektiven, wie man KI-Assistenten in Unternehmen erfolgreich entwickelt und nutzt.
Teil 1:
3 Annahmen, an denen KI-Assistenten Teams oft scheitern
Teil 2: