adesso Blog

In diesem zweiten Teil möchte ich meinen letzten Blog-Beitrag über die automatische Zusammenfassung von Texten mit Aleph Alpha Luminous über R fortsetzen. Diesmal geht es um technische Aspekte wie die Spezifikation des Umfangs der Zusammenfassung, Prompt Engineering und Qualitätsfaktoren, denn eine Zusammenfassung ist nicht einfach eine Zusammenfassung. Ein simples Beispiel: Wenn ein Arzt nach einer Zusammenfassung einer Patientenakte fragt, meint er nicht eine Zusammenfassung, wie sie für ein Buch geschrieben wird. Hier ist es notwendig, die Lösungsalternativen zu vertiefen, um die Anforderungen bestmöglich zu erfüllen.

Herausforderungen bei der Zusammenfassung mit LLMs

Vorausgesetzt, der Input ist ein sauber digitalisiertes Textformat ohne Fehleranfälligkeit durch verschiedene Zwischenprozesse, ergeben sich folgende Herausforderungen:

Art Herausforderung Beschreibung
Technisch Kontextlänge LLMs tendieren dazu, Inhalte am Anfang oder am Ende eines Textinputs (=Kontext) besser zu nutzen als Inhalte in der Mitte. D.h. ein hoher Kontextinput birgt das Risiko eines Leistungsverlustes.
Technisch Wirtschaftliche Faktoren Kostenmultiplikatoren sind die Ausgabe von Prompt Instructions und die fortlaufende Bearbeitung der Texte für die Zusammenfassung.
Technisch Verarbeitungszeit Ein iterativer Ansatz kann nicht parallelisiert werden.
Technisch Halluzination LLM neigen dazu, aus ihrem Weltwissen zu schöpfen und Dinge hinzuzudenken.
Fachlich Spezifizierung des Umfangs der Zusammenfassung Eine Zusammenfassung dient einem bestimmten Zweck. Der Zweck legt fest, welche Aspekte zusammengefasst werden sollen.
Fachlich Prompt Engineering Spezifizierung eines Prompts, auf den das LLM gut reagiert.
Fachlich Qualitätsfaktoren Die Qualität der Zusammenfassung bezieht sich auf den Informationsgehalt, die Genauigkeit und sollte der Definition einer Zusammenfassung folgen.

Herausforderung: Spezifizierung des Umfangs der Zusammenfassung

Im ersten Teil dieses Blog-Beitrags bin ich auf die methodischen Grundüberlegungen eingegangen. Denn eine eindeutige Spezifikation, was eine Zusammenfassung ist, gibt es nicht. Je nachdem, in welcher Branche man sich befindet oder welchem Zweck die Zusammenfassung dienen soll, ändern sich die Anforderungen. Aus den Beispielen, die ich im ersten Teil meines Beitrags genannte habe, möchte ich mich an der geführten Zusammenfassung orientieren. Für eine Zusammenfassung, die eine Managerin oder ein Manager perspektivisch nutzen möchte, um die nächsten Schritte einzuleiten, dürften wohl der Hintergrund und die Empfehlung aus einem Inputtext als Interessensaspekte hervorstechen. Die erste Abbildung zeigt eine Zusammenfassung ohne Vorgaben. Die zweite und dritte Abbildung hingegen zeigen eine geführte Zusammenfassung, bei der der Hintergrund des Textes und die Empfehlung von Interesse sind.

Abbildung 1: Maschinelle Zusammenfassung ohne Vorgaben

Abbildung 1: Maschinelle Zusammenfassung ohne Vorgaben

Abbildung 2: Maschinelle Zusammenfassung von „Was ist der Hintergrund von diesem Text?“ für den „Hintergrund“

Abbildung 2: Maschinelle Zusammenfassung von „Was ist der Hintergrund von diesem Text?“ für den „Hintergrund“

Abbildung 3: Maschinelle Zusammenfassung von „Was ist die Empfehlung?“ für das „Ergebnis“

Abbildung 3: Maschinelle Zusammenfassung von „Was ist die Empfehlung?“ für das „Ergebnis“

Bei Sozialgerichtsurteilen dürften für eine Krankenkasse das Ergebnis und die Implikationen für sie von Interesse sein. Das heißt, statt der Frage „Was ist die Empfehlung?“ wird sie sich fragen: „Ist das Urteil aus Sicht der Krankenkasse für die Abrechnungsprüfung relevant? Soll der Rechnungsbetrag gekürzt werden? Wenn ja, aus welchem Grund?“ Ein Beispiel ist in der folgenden Abbildung ganz unten neben „eigener Output“ dargestellt.

Abbildung 4: Automatische Zusammenfassung von „Ist die Entscheidung aus Sicht der Krankenkasse für die Abrechnungsprüfung relevant?“, „Muss der Rechnungsbetrag gekürzt werden?“ und „Wenn ja, aus welchem Grund?“ für das „Ergebnis“

Abbildung 4: Automatische Zusammenfassung von „Ist die Entscheidung aus Sicht der Krankenkasse für die Abrechnungsprüfung relevant?“, „Muss der Rechnungsbetrag gekürzt werden?“ und „Wenn ja, aus welchem Grund?“ für das „Ergebnis“

Herausforderung: Prompt Engineering

In der vorherigen Abbildung ist der Prompt unter „Aleph Alpha Instruction Prompt Template“ zu sehen. Dazwischen befindet sich die dynamische Eingabe, die sich aus den Vorarbeiten ergibt, und am Ende das Ergebnis beziehungsweise die Ausgabe des Sprachmodells. Für die Aleph Alpha Instruction Templates (2. Generation der Basismodelle aus dem Hause Aleph Alpha) wird die dargestellte Grundstruktur empfohlen und in meinem Fall habe ich den Prompt als Zero-Shot wie folgt aufgebaut.

### Instruction:
Answer the question using the given text.
### Input:
### Response:

Das ist zugegebenermaßen nicht die liebevollste Aufforderung, die man sich vorstellen kann. Tatsächlich spielt auch die Formulierung der Anweisung an das Sprachmodell eine wesentliche Rolle. In einer wissenschaftlichen Arbeit widmen sich beispielsweise Chuang et al. (2023) in „SPeC: A Soft Prompt-Based Calibration on Performance Variability of Large Language Models in Clinical Notes Summarization“ dem Zusammenhang zwischen der Sprachmodellausgabe bei der Zusammenfassung von Text und Prompt. Sie stellen fest, dass minimale Änderungen an manuell erstellten Prompts, wie meinem obigen, eine signifikante Varianz in der Ausgabe verhindern. Die Auflistung zeigt ein (nicht repräsentatives) Beispiel.

Beispiele hinsichtlich Performanzvariabilität von maschinell generierten Zusammenfassungen

Prompt 1: Fasse den Hintergrund des Rechtsstreits aus dem Sozialgerichtsurteil zusammen.
  • Die Klägerin beantragt, das Urteil des Sozialgerichts Potsdam vom 28. September 2018 aufzuheben und die Beklagte zur Erstattung von 10.263 Euro zu verurteilen.
  • Die Beklagte hat beantragt, die Berufung der Klägerin zurückzuweisen.
  • Die Klägerin habe keinen Wegeunfall erlitten und sei auch nicht auf einem Betriebsweg verunglückt.
  • Denn die Verrichtung zur Zeit des Unfalls habe nicht in einem inneren oder sachlichen Zusammenhang mit der versicherten Tätigkeit gestanden.
Prompt 2: Gib mir anhand des Sozialgerichtsurteils einen knappen Überblick über die Hintergründe.
  • Die Klägerin beantragt, das Urteil des Sozialgerichts Potsdam vom 28. September 2018 aufzuheben und die Beklagte zur Erstattung von 10.263 Euro zu verurteilen.
  • Die Beklagte hat beantragt, die Berufung der Klägerin zurückzuweisen.
  • Die Klägerin habe keinen Wegeunfall erlitten und sei auch nicht auf einem Betriebsweg verunglückt.
  • Denn die Verrichtung zur Zeit des Unfalls habe nicht in einem inneren oder sachlichen Zusammenhang mit der versicherten Tätigkeit gestanden.
  • Der Senat entschied, dass ein Verwaltungsakt, der nicht über konkrete Leistungsansprüche entscheide, keine Bindungswirkung entfalte.
  • Eine offenbare Unrichtigkeit liegt vor, wenn die Entscheidung des zuständigen Leistungsträgers gegenüber dem Berechtigten offensichtlich unrichtig ist und sich dies zum Nachteil des anderen Leistungsträgers auswirkt.
Prompt 3: Ist das Urteil aus Sicht der Krankenkasse für die Abrechnungsprüfung relevant? Ist der Rechnungsbetrag zu kürzen? Wenn ja, aus welchem Grund?
  • Die Klage auf Erstattung der Leistungen aus der gesetzlichen Krankenversicherung hat Erfolg, weil die beklagte Krankenkasse zur Erstattung der gesamten Kosten verpflichtet ist.
  • Die Klägerin hat keinen Anspruch auf Leistungen der gesetzlichen Krankenversicherung, weil die Heilbehandlung und das Krankengeld als Folge eines Arbeitsunfalls zu erbringen sind.
  • Dem steht nicht entgegen, dass die Beklagte gegenüber der Beigeladenen im Sozialleistungsverhältnis Leistungen abgelehnt hat.
  • Rechtsgrundlage für den Erstattungsanspruch ist § 105 Abs. 1 SGB X 1.
  • Die Klägerin ist der für die streitigen Leistungen zuständige Leistungsträger, die Beklagte der zunächst unzuständige Leistungsträger im Sinne dieser Vorschrift.
  • Eine Unzuständigkeit der Beklagten ergibt sich auch nicht aus der Leistungsablehnung gegenüber der Beigeladenen.

Prompt 4: Was ist der Hintergrund?

  • Es geht um einen Rechtsstreit zwischen einer Krankenkasse und einer Unfallversicherung.
  • Wer ist der Kläger? Die Krankenkasse.
  • Wer ist die Beklagte? Die Unfallversicherung.
  • Was wird beantragt? Die Klägerin beantragt, das Urteil des Sozialgerichts Potsdam vom 28. September 2018 aufzuheben und die Beklagte zu verurteilen, ihr 10.263 Euro zu erstatten.
  • Die Beklagte hat beantragt, die Berufung der Klägerin zurückzuweisen.
  • Die Klägerin habe keinen Wegeunfall erlitten und sei auch nicht auf einem Betriebsweg verunglückt. Denn die Verrichtung zur Zeit des Unfalls habe nicht in einem inneren oder sachlichen Zusammenhang mit der versicherten Tätigkeit gestanden.
  • Die Klägerin beantragt, das Urteil des Landessozialgerichts Berlin-Brandenburg vom 10. Dezember 2020 aufzuheben und die Klage abzuweisen.
  • Die Klägerin rügt einen Verstoß gegen § 8 Abs. 2 Nr. 1 SGB VII.

Der Prompt selbst trägt ebenfalls zum Ergebnis bei und muss ausgiebig getestet werden, um den geeignetsten Prompt für die zugrunde liegende Aufgabe zu ermitteln.

Herausforderung: Qualitätsfaktoren

Zusammenfassungen, oder nennen wir sie zur Abgrenzung „Industriezusammenfassungen“, sind für Fachleute in verschiedenen Bereichen wichtig, um schnell arbeitsrelevante Informationen zu erhalten (zum Beispiel im klinischen Bereich die Zusammenfassung von Patientenakten) und darauf aufbauend Entscheidungen zu treffen. Ladhak et al. (2023) argumentieren in „From Sparse to Dense: GPT-4 Summarization with Chain of Density Prompting”, dass eine Zusammenfassung, in der eine höhere Dichte von Entitäten gemessen wird, mit einer höheren Informationsdichte assoziiert ist. In ihrem Experiment messen sie dies am Beispiel von 100 zufällig ausgewählten Elementen aus dem CNN/DailyMail Summarization Test Datensatz (https://huggingface.co/datasets/cnn_dailymail). Dazu wählen sie einen rein Prompt-basierten Ansatz (sogenannter Chain of Density Prompt oder kurz CoD Prompt), der über bis zu fünf Iterationen Entitäten ceteris paribus der Gesamttextlänge in die Zusammenfassung einfügt, ohne den Text vorher zu kürzen. Die Metrik der Informationsdichte lautet: Dichte = Density = (∑▒Entities)/(∑▒Tokens). Die folgende Abbildung zeigt das jeweilige Ergebnis der nächsten Iteration des CoD Prompt. Pro Iterationsschritt werden neue Entitäten aus dem Text extrahiert, um diese ceteris paribus der Länge des Abstracts hinzuzufügen. Der Nachteil in diesem Fall ist, dass die Entitäten nicht sauber abgegrenzt sind und auch nicht nachträglich gefiltert werden können.

Abbildung 5: Ergebnisse des CoDs mit GPT-4-32k via Poe.com

Abbildung 5: Ergebnisse des CoDs mit GPT-4-32k via Poe.com

Im Gegensatz dazu ist der Ansatz von Isaac Tham in „Summarization Podcast Transcripts and Long Texts Better with NLP and AI“ trennschärfer (siehe folgende Abbildung). Hier wird das Eingabedokument gechunkt und jeder Chunk mittels einer Cluster-Analyse geclustert. Dies ist sinnvoll, da es vorkommen kann, dass Themen mehrfach im Text auftauchen. Anschließend wird jedes Cluster einzeln aggregiert. Mit dem Ergebnis kann man später viel anfangen. Der Qualitätsbegriff dürfte hier gehaltvoller sein als in der Methodik davor, weil wir zusätzlich explizit nachweisen können, was woher kommt. Dem würde ich aus Sicht der Trustworthy AI eine höhere Qualität zuschreiben.

Abbildung 6: Maschinelle Zusammenfassung mit Cluster-Analyse als Vorverarbeitungsschritt

Abbildung 6: Maschinelle Zusammenfassung mit Cluster-Analyse als Vorverarbeitungsschritt

Zusammenfassung und Ausblick

In diesem Blog-Beitrag haben wir uns etwas näher mit den handwerklichen Themen einer maschinellen Zusammenfassung beschäftigt. Dabei sind wir auch auf aktuelle wissenschaftliche Forschungsrichtungen eingegangen. Die meisten Hintergrundlektüren zu diesem Blog-Beitrag wurden gerade erst im Sommer 2023 geschrieben. Es ist also davon auszugehen, dass sich in diesem Bereich noch sehr viel tun wird, aber ich hoffe, dass ich die Aspekte, die ein AI Engineer hier leisten wird, mehr in den Vordergrund rücken konnte.

Ihr möchtet gern mehr über spannende Themen aus der adesso-Welt erfahren? Dann werft auch einen Blick in unsere bisher erschienenen Blog-Beiträge.

Auch interessant:

Bild Lilian  Do Khac

Autorin Lilian Do Khac

Lilian Do Khac beschäftigt sich mit der Konzeption und Implementierung von KI-Lösungen für die datengetriebene Entscheidungsunterstützung. Trustworthy-AI-Anforderungen spielen dabei eine signifikante Rolle. In diesem Bereich ist sie nicht nur aus IT-Implementierungssicht unterwegs, sondern auch als Wissenschaftlerin.

asdf

Unsere Blog-Beiträge im Überblick

In unserem Tech-Blog nehmen wir Sie mit auf eine spannende Reise durch die adesso-Welt. Weitere interessante Themen finden Sie in unseren bisherigen Blog-Beiträgen.

Zu allen Blog-Beiträgen

asdf

Unser Newsletter zum adesso Blog

Sie möchten regelmäßig unser adesso Blogging Update erhalten? Dann abonnieren Sie doch einfach unseren Newsletter und Sie erhalten die aktuellsten Beiträge unseres Tech-Blogs bequem per E-Mail.

Jetzt anmelden


Diese Seite speichern. Diese Seite entfernen.