Leseprobe »Sprachmodelle Verstehen«: Was sind Chatbots?
Wir gehen einigen Dingen, die Sprachmodelle sind, einzeln nach: Chatbots, Beispiele für (generative) KI, neuronale Netze, statistische Modelle und maschinelles Lernen. Dabei sind nur einige Sprachmodelle Chatbots, aber alle sind Beispiele für künstliche Intelligenz (KI). Nicht alle wiederum sind Beispiele für generative KI. Moderne Sprachmodelle sind ausnahmslos neuronale Netze und als neuronale Netze sind sie statistische Modelle. Nicht zuletzt sind moderne Sprachmodelle typische Beispiele für maschinelles Lernen.
Sprachmodelle sind nicht mit Chatbots gleichzusetzen, denn zwar liegen Chatbots immer Sprachmodelle zugrunde, aber nicht alle Sprachmodelle sind Chatbots. Chatbots sind Sprachmodelle – und zwar heutzutage fast immer sogenannte Transformer-Sprachmodelle –, die darauf spezialisiert wurden, Gespräche bzw. Konversationen zu führen und deshalb auch conversational AI (AI = artificial intelligence) genannt werden. Zum Beispiel ist der Chatbot ChatGPT 4 der Firma OpenAI im Wesentlichen das auf Konversationen spezialisierte Sprachmodell GPT-4. Den Chatbots anderer Hersteller wie Googles Gemini – der bis Februar 2024 unter dem Namen Bard firmierte – oder Claude der Firma Anthropic liegen ebenfalls vortrainierte Sprachmodelle zugrunde, die auf alle möglichen anderen Fähigkeiten optimiert wurden, am Ende aber vor allem auf Konversationen. Bei diesen anderen Fähigkeiten handelt es sich um das (allgemeine) Befolgen von Aufforderungen und das (konkrete) Zusammenfassen von Texten, aber auch darum, keine unangemessenen, weil für einzelne Menschen oder die Allgemeinheit schädlichen oder illegalen Texte zu generieren (also eine Fähigkeit ex negativo) oder entsprechende Fragen zu beantworten. Das alles sind Fähigkeiten, über die ein Chatbot verfügen sollte, der auf die Öffentlichkeit losgelassen wird.
Chatbots gab es allerdings schon lange vor den heutigen Transformer- Sprachmodellen und begegneten Internet-Nutzern gelegentlich als digitale Assistenten auf kommerziellen Webseiten, wo sie meist recht steife, aber manchmal durchaus hilfreiche Kundendialoge zu führen in der Lage waren. Solche althergebrachten Chatbots – mit inhaltlich sehr speziellen, aber sprachlich und kommunikativ recht beschränkten Fähigkeiten – kursieren heute immer noch, werden aber vermutlich nach und nach an Bedeutung verlieren und durch Transformerbasierte und auf die jeweilige Aufgabenstellung spezialisierte Chatbots abgelöst werden. Was aber nicht heißt, dass Sprachmodelle nur in ihrer Ausprägung als Chatbots eine Rolle spielen werden: Ihr Einsatz im Hintergrund – ohne direkten und erkennbaren Kontakt zum Benutzer – wird von mindestens ebenso großer Bedeutung sein, zum Beispiel in Suchmaschinen wie Google. Vorerst aber sind Chatbots die Art von Sprachmodellen, mit denen normale Benutzer es vor allem zu tun haben werden. Chatbots nennt man verwirrenderweise meist auch die Webapplikation, also die Benutzerschnittstelle, über die man mit einem Sprachmodell kommuniziert, und die man im Internet über eine URL wie chat.openai.com, gemini.google.com oder claude.ai aufruft. Diese Benutzerschnittstelle kann zwar leicht mit dem eigentlichen Chatbot, also dem Sprachmodell, verwechselt und als direkter Gesprächspartner wahrgenommen werden, ist aber nicht identisch mit ihm. Extras wie die Chat-Historie, allgemeine Aufforderungen (custom instructions), das Hochladen von Dokumenten und Bildern, oder spezialisierte Sprachmodelle (GPTs) stellt die Webapplikation bereit und werden dann vom Sprachmodell verwendet.
Was ist künstliche Intelligenz?
Künstliche Intelligenz (KI) ist eine Forschungsrichtung in den Computerwissenschaften, eine Klasse von Computerprogrammen und schließlich ein fast schon philosophischer Begriff, der künstliche mit natürlicher oder menschlicher Intelligenz zu vergleichen nahelegt. Die letzten beiden Aspekte von KI hängen eng zusammen. Ein Computerprogramm ist ein Beispiel für KI (oder »ist eine KI« oder »ist ein KI-System«), wenn es über künstliche Intelligenz verfügt. Künstliche Intelligenz ist kein formal und streng definierbarer Begriff, doch einige Kriterien werden allgemein für hinreichend gehalten, wenn auch nicht unbedingt für notwendig. Ein Computerprogramm verfügt über künstliche Intelligenz, wenn:
Gemäß fast all dieser Kriterien sind Sprachmodelle und Chatbots fraglos Beispiele für KI. Allerdings können sie zurzeit nicht kontinuierlich lernen (zweites Kriterium). Nachdem sie einmal mit unzähligen Beispielen angelernt wurden, werden Sprachmodelle eingefroren und lernen an den Konversationen, die sie anschließend mit menschlichen Nutzern führen, nicht mehr weiter, zumindest nicht im engeren Sinne. Gleichwohl können sie sich im Rahmen eines Gesprächs an einen Benutzer anpassen, aber was sie dabei lernen, geht nicht in ihr Langzeitgedächtnis ein. Tatsächlich ist kontinuierliches Lernen heutzutage im gesamten Feld der KI noch eher die Ausnahme als die Regel, denn es handelt sich um ein recht diffiziles Unterfangen mit vielen Fallstricken, das man noch nicht sicher kontrollieren kann. Insbesondere das Vergessen von bisher Gelerntem (fachsprachlich catastrophic forgetting) stellt noch immer ein Problem dar.
Dass natürliches Sprachverständnis als eigenes Kriterium für Intelligenz auftaucht, was Sprachmodelle quasi per Definition zu KI-Systemen macht, ist kein Zufall, wird doch die sowohl phylo- als auch ontogenetische Entwicklung der menschlichen Intelligenz eng mit der der menschlichen Sprache in Verbindung gebracht. Der hier angelegte Intelligenzbegriff ist allerdings ein recht generischer, allgemeiner und unspezifischer. Gleichzeitig wissen wir, dass es sehr viele Formen der Intelligenz gibt, die mit den Arten von Problemen zu tun haben, die es zu lösen (oder gar nicht erst aufkommen zu lassen) gilt: Mathematische Probleme verlangen mathematische Intelligenz, soziale Probleme verlangen soziale Intelligenz, emotionale Probleme emotionale Intelligenz usw. Und in all diese Formen spielt Sprache und sprachliche Intelligenz hinein, die Form von Intelligenz, über die Sprachmodelle in allererster Linie verfügen. Dass jede dieser Intelligenzformen auch andere, jeweils ganz spezifische nicht-sprachliche Aspekte hat, ist davon unberührt. Auf jeden Fall lassen sich verschiedene Facetten und Dimensionen von Intelligenz an Sprachmodellen überprüfen, sofern die entsprechenden Probleme sprachlich formuliert werden können (was oft genug der Fall ist). Andere – von menschlicher Sprache eher weiter entfernte – Beispiele für KI sind:
Dass klassische und gewissermaßen Old-school-Expertensysteme, obwohl sie unter den oben genannten »nur« die Fähigkeit zum Problemlösen besitzen (und dies nur nach strengen, vorgegebenen Regeln), immer noch als KI gelten, ist nicht zuletzt historisch begründet. Sie sind Vertreter sogenannter symbolischer KI, die zur Zeit, gegenüber der auf neuronalen Netzen beruhenden verteilten oder konnektionistischen KI – die auch unter dem Begriff maschinelles Lernen (ML) firmiert –, etwas aus dem Fokus des öffentlichen Interesses geraten ist. Wohin sie aber womöglich auch wieder zurückkehren wird, denn symbolische mit konnektionistischer KI zu vermählen, ist erklärtes Ziel vieler KI-Forscher und -Projekte.
Eine weitere Form von KI, die weder symbolisch ist noch auf neuronalen Netzen beruht, sind genetische Algorithmen, die verwendet werden, um optimale Algorithmen für komplexe Probleme zu finden, indem sie eine Population von Lösungskandidaten sich über mehrere Generationen hinweg entwickeln und verfeinern lassen. Supportvektormaschinen als weiteres Beispiel für nicht-neuronale, aber auch nicht-symbolische KI, versuchen Datenpunkte in hochdimensionalen Merkmalsräumen so zu trennen, dass sie optimal in unterschiedliche Klassen eingeteilt werden können und werden vor allem für Klassifikations- und Mustererkennungsaufgaben eingesetzt.
Was sind neuronale Netze?
Sprachmodelle wie ChatGPT basieren nicht nur auf, sondern sind im Wesentlichen künstliche neuronale Netze, mit einer Eingabeschicht, einer Ausgabeschicht, und einer in Schichten organisierten neuronalen Maschinerie dazwischen. Alles, was Sprachmodelle wissen und können, lernen und speichern sie in virtuellen Synapsen zwischen ihren virtuellen Neuronen, als sogenannte Parameter oder Gewichte. Dabei wird oft nicht weniger als das menschliche Gehirn als Vorbild herangezogen, wobei allerdings von seinen Eigenarten, die es von den Gehirnen anderer Primaten oder »nur« der Säuge- oder gar Wirbeltiere unterscheidet, bemerkenswert wenig übernommen wird. Von der Komplexität des menschlichen Gehirns ist die Komplexität eines Sprachmodells aber weit entfernt. Umso erstaunlicher ist es, wie nahe es jenem in manchen Bereichen kommt, und umso weniger erstaunlich, dass es in den meisten Bereichen dann doch nicht an es heranreicht.
Was allen neuronalen Netzen zugrunde liegt – biologischen wie künstlichen –, sind Neuronen, deren Aktivitäten einerseits etwas repräsentieren (die Anwesenheit eines Merkmals oder eines Objekts) und andererseits etwas bewirken können, z.B. die Kontraktion einer Muskelzelle, die Ausschüttung eines Hormons oder – im Falle künstlicher Neuronen –, das Aufleuchten eines Lämpchens oder das Erscheinen eines Buchstabens auf dem Bildschirm.
Was die Aktivität eines Neurons aber insbesondere bewirken kann, ist die Aktivität anderer Neuronen. In welchem Maße das geschieht, dafür sind die Synapsen zwischen den Neuronen verantwortlich, die die Aktivität eines vorgeschalteten, sogenannten präsynaptischen Neurons verschieden stark auf die Aktivitäten seiner nachgeschalteten oder postsynaptischen Neuronen übertragen, je nach synaptischer Stärke bzw. Gewicht. Zum Grundprinzip von Neuronen gehört es, die gewichteten Aktivitäten der ihm vorgeschalteten Neuronen aufzuaddieren und mit einer eigenen Aktivität darauf zu antworten. Im einfachsten – biologisch allerdings nicht beobachtbaren – Fall, der aber insbesondere bei Sprachmodellen eine große Rolle spielt, ist die Antwortaktivität einfach die Summe der eingehenden Aktivitäten. Bekannter ist die Alles-oder-Nichts-Reaktion: Ist die Summe der eingehenden Aktivitäten größer einem Schwellenwert, wird mit 1 geantwortet, ansonsten mit 0. Viele andere solcher – meist nicht-linearer -Aktivierungsfunktionen kommen in künstlichen neuronalen Netzen an verschiedenen Stellen und zu verschiedenen Zwecken zum Einsatz.
Ein künstliches Neuron ist technisch gesehen eine Speicherzelle im Arbeits- oder Kurzzeitspeicher eines Computers, die einen reellen Zahlenwert trägt, der die Aktivität des Neurons repräsentiert. Synapsen sind ebenfalls Speicherzellen, die reelle Zahlenwerte tragen, allerdings eher im Langzeitspeicher, also auf der Festplatte. Der numerische Wert der Synapsenspeicherzellen wird während des Trainings verändert und bleibt danach fix. Der numerische Wert, also die Aktivität der Neuronen-Speicherzellen ändert sich zur Laufzeit des Sprachmodells, in Abhängigkeit von den Aktivitäten vorgeschalteter Neuronen und der Stärke der sie verbindenden Synapsen. Nicht stark genug kann der Unterschied zwischen biologischen und künstlichen Neuronen und Synapsen betont werden. (Auf die Unterschiede in den Architekturen biologischer und künstlicher neuronaler Netze kommen wir gleich zu sprechen.)
Echte Neuronen sind Wunderwerke der Biologie und hochkomplexe Miniaturrechenmaschinen, die weit komplexere Rechenoperationen ausführen können als nur Aktivitäten aufzuaddieren und eine Aktivierungsfunktion anzuwenden. Und jede einzelne Synapse – von denen jedes Neuron tausende besitzt, ein- und ausgehende – ist wiederum ein hochsubtiles Präzisionswerkzeug, das durch eine einzige Zahl (ihre Stärke) nur recht unzureichend beschrieben ist. Aber so ist das mit jeder Modellierung: Sie beschränkt sich auf das Wesentliche, und das Wesentliche genügt in diesem Falle, um so etwas wie mächtige Sprachmodelle darüber zu errichten, deren Geheimnis dann eher in der Art und Weise begründet liegt, wie ihre (extrem stark vereinfachten) Neuronen miteinander verschaltet sind.
Eine wichtige Gemeinsamkeit haben künstliche und natürliche neuronale Netze dennoch: die Aktivitäten ihrer Neuronen sind nicht nur effektiv wirksam – indem sie die Aktivitäten anderer Neuronen beeinflussen und am Ende zu einer »Ausgabe« führen –, sondern sie repräsentieren auch immer irgendetwas, nämlich das Vorhandensein – und womöglich auch Nichtvorhandensein – eines Merkmals, Musters oder Objekts, sei es in der inneren oder äußeren Welt (aus Sicht des neuronalen Netzes). In den meisten Fällen ist die Repräsentation eines Musters oder Objekts verteilt: verteilt auf mehrere Neuronen und im menschlichen Gehirn sogar verteilt über verschiedene räumliche Gebiete des Gehirns. (Die virtuellen Neuronen eines künstlichen neuronalen Netzwerkes haben keine räumliche Anordnung.) Gleichzeitig kann die Aktivität ein- und desselben Neurons an der Repräsentation verschiedener Muster oder Objekte beteiligt sein, was eine weitere Form der »Verteiltheit« darstellt. Auf verteilte Repräsentationen werden wir noch eingehender zu sprechen kommen.
Die meisten künstlichen neuronalen Netze und so auch Sprachmodelle sind in Schichten aufgebaut, die zwischen einer Ein- und einer Ausgabeschicht liegen. Neuronale Netze mit vielen Schichten heißen »tief«, wobei schon ab zehn Schichten von Tiefe gesprochen wird, und wirklich tiefe neuronale Netze eine in die Hunderte gehende Zahl von Schichten haben, nicht aber in die Tausende. Wenn sich die Aktivitäten nur in eine Richtung, von der Ein- zur Ausgabeschicht fortpflanzen, spricht man von Feedforward-Netzen. Es kann aber auch sein, dass die Neuronen einer Schicht auf eine vorangehende Schicht oder sogar in sich selbst zurückprojizieren. Dann spricht man von rekurrenten neuronalen Netzen, und diese spielen heute noch eine wichtige Rolle bei der Verarbeitung von zeitlichen Sequenzen von Eingabedaten, die sich ein rekurrentes Netz »merken« kann. Rekurrente neuronale Netze waren auch die unmittelbaren Vorläufer der heutigen Transformer- Sprachmodelle, welche allerdings ganz explizit Feedforward-Netze sind, die mit gewissermaßen statischem, also nicht wirklich sequentiellem Input arbeiten. Deshalb wartet ein Chatbot auch immer, bis der Benutzer mit seiner Eingabe fertig ist und die Enter-Taste drückt, und beginnt nicht schon mit der Antwort, während der Benutzer noch tippt, wozu rekurrente Netze in der Lage wären.
Als Ganzes gesehen kann man das menschliche Gehirn übrigens als ein rekurrentes Netzwerk auffassen, das sich ständig selbst mit neuronalen Signalen speist. Ein Feedforward-Netz, das gewissermaßen reflexartig auf seine Eingaben reagiert, ist es auf jeden Fall nicht. Doch wäre diese Sichtweise zu stark vereinfachend. In Wirklichkeit besteht es aus einer unübersehbaren Vielzahl an Arealen, Kernen und Schichten – Neuronengruppen unterschiedlichster Größe und Struktur allesamt, die oft überlappen –, die auf immernoch unentschlüsselbare, vielfältige Art miteinander kommunizieren. Von der klaren Schichten-Struktur eines typischen künstlichen neuronalen Netzwerks ist es weit entfernt. Mit der Schichtenstruktur unmittelbar einher geht die zeitliche Taktung. In künstlichen neuronalen Netzen schreitet die Zeit in -allerdings sehr, sehr kurzen – Schritten voran, und in jedem Zeitschritt werden gleichzeitig die Aktivitäten aller Neuronen einer Schicht berechnet und aktualisiert. Wie lange ein solcher Zeitschritt dauert, kann man für Sprachmodelle grob abschätzen. Ein Sprachmodell gibt ca. 10 Token pro Sekunde aus, also ein Token pro Zehntelsekunde. In dieser Zeit durchläuft ein Token ca. einhundert Schichten, was eine Tausendstelsekunde pro Schicht ergibt. In dieser Tausendstelsekunde muss das Sprachmodell allerdings die Aktivitäten vieler Hunderttausend von Neuronen aktualisieren.
Jedoch darf man sich auch in künstlichen Netzen die Schichten nicht unbedingt so einfach wie in unserem obigen Beispiel vorstellen. Die Schichten, die man zum Beispiel in einem großen Sprachmodell wie ChatGPT findet, bestehen nicht einfach aus Millionen und Milliarden unverbunden nebeneinanderstehender Neuronen, sondern sind in sich horizontal und vertikal stark strukturiert. Allerdings sind alle Schichten gleich groß und gleich strukturiert, was wieder für eine starke Regelmäßigkeit sorgt. Andere tiefe Netze wie zum Beispiel die sogenannten Convolutional Neural Networks (CNN, soviel wie »faltende neuronale Netze«), die bei der Bildverarbeitung eine ähnliche Rolle spielen wie Transformer-Netzwerke in der Sprachverarbeitung, weisen oft nicht ganz so viele, dafür aber recht verschieden große und verschieden strukturierte Schichten auf.
Leider endet die Leseprobe an dieser Stelle. Das Buch »Sprachmodelle Verstehen« bietet den Rest des Kapitels und mehr.
Wenn Sie inhaltliche Anmerkungen zu diesem Artikel haben, können Sie die Redaktion per E-Mail informieren. Wir lesen Ihre Zuschrift, bitten jedoch um Verständnis, dass wir nicht jede beantworten können.