Optimierung der Softwaredokumentation mit künstlicher Intelligenz

Kunde aus der Elektroindustrie
Partnerschaft seit 2015

Softwaredokumentation mit KI

Wie kann die Dokumentation neuer Funktionen in einer Software durch den Einsatz von künstlicher Intelligenz (KI) optimiert werden? Dieser Frage ging TANNER im Auftrag eines langjährigen Kunden nach und erstellte infolgedessen den Prototypen für einen intelligenten „Doku-Assistenten“.

Ausgangslage: Dokumentation ohne KI

Die Dokumentation neuer Softwarefunktionen fand bisher klassisch ohne KI statt. Ausgangspunkt war die Entwicklungsabteilung des Kunden, die für neue Funktionen jeweils ein Ticket in der Projektmanagement-Software Jira erstellt und diese dort beschreibt. Die technische Redaktion bei TANNER recherchierte dann auf verschiedenen Content-Plattformen die relevanten Informationen dazu. Schließlich erstellte die Redaktion erste Inhalte (Bild, Text, Links und Code), die geprüft, verbessert und final in der Softwaredokumentation veröffentlicht wurden.

„Aufgabe war es nun, diesen Prozess mit KI zu verbessern und die Qualität der Ergebnisse zu erhöhen“, erklärt Anne Gläser, Projektleiterin bei TANNER. Die Idee des „Doku-Assistenten“ nahm Gestalt an.

Vorbereitung: Mit GPT-4 und öffentlicher Dokumentation

„Für unser Testszenario wählten wir aus Gründen der Datensicherheit die öffentlich zugängliche Markdown-Dokumentation des Azure AI Studio und GPT-4 als KI-Sprachmodell aus. Wir bestimmten eine Test-Funktion, die in der Software dokumentiert werden soll, und erstellten dafür ein Ticket in Jira“, beschreibt Anne Gläser die Projektvorbereitungen.

Da das Sprachmodell die Spezifika der Dokumentation nicht kennt, wurde die „Retrieval Augmented Generation“-Technik (RAG) genutzt. Bei RAG wird die Anfrage an das Sprachmodell mit Kontext aus einer externen Wissensbasis angereichert. Im Prototypen ist dies eine lokale Vektordatenbank, die vom Sprachmodell über ein Tool abgefragt werden kann. Es fragt den lokalen Server zuerst nach relevanten Informationen in dieser Wissensbasis und nutzt diese Informationen, um genauere Antworten zu generieren. Damit wird auch das Risiko des Halluzinierens, also das Erfinden von falschen Informationen durch die KI, verringert.

KI-Training mit vorgefertigten Prompts

Nachdem das Sprachmodell und die Wissensbasis feststanden, war die nächste Aufgabe, die hohe Qualität und Relevanz der Antworten mit Prompt Engineering sicherzustellen. „Um GPT-4 mit RAG so zu nutzen, dass es immer nach bestimmten Kriterien antwortet, haben wir vorgefertigte Prompts und Prompt Templates genutzt. Mit diesen Methoden haben wir abgesichert, dass unsere Kriterien konsistent angewendet werden, ohne dass User den Prompt jedes Mal manuell neu formulieren müssen“, so Anne Gläser.

Durch solche Prompts, die kontinuierlich getestet und optimiert wurden, ließen sich die vier Aspekte der Aufgabenstellung inhaltlich abdecken und folgende Fragen berücksichtigen:

  • Welche Auswirkungen hat die neue Funktion auf die Dokumentation?
  • Was in der Dokumentation muss wie geändert werden?
  • Wie kann ich sie in meine Quellen einbauen?
  • Welche Screenshots müssen ersetzt werden?

Funktionen des Doku-Assistenten

Auf der eben beschriebenen technischen sowie inhaltlichen Grundlage entstand der Prototyp des „Doku-Assistenten“ durch die Zusammenarbeit von TANNER-Fachleuten aus der Technischen Redaktion und der Softwareentwicklung. Drei Funktionen bringt der Prototyp mit, um die Softwaredokumentation intelligent zu verbessern.

Sie sehen gerade einen Platzhalterinhalt von Youtube. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.

Mehr Informationen

Funktion 1: Chatbot mit Technik-Kompetenz

Der Chatbot des Doku-Assistenten funktioniert genauso, wie man das inzwischen kennt: Man stellt eine Frage und – in diesem Fall – ChatGPT generiert die dazu am wahrscheinlichsten passende Antwort. Unterschied hier: Weil RAG genutzt wird, basieren die Antworten des Chatbots primär auf der von TANNER als Wissensbasis definierten Azure-AI-Studio-Dokumentation.

Funktion 2: Report für Änderungen an bestehenden Inhalten

Interessanter für die Aufgabe, die Softwaredokumentation zu optimieren, ist die Report-Funktion. Über diese können Informationen z. B. aus einem Jira-Ticket eingegeben werden. Der Doku-Assistent generiert damit Folgendes:

  • Ticket: eine Zusammenfassung der Informationen aus Jira
  • User Action Page: eine Zusammenfassung der Interaktionen, die Benutzer mit der neuen Funktion haben werden
  • Suggested Changes: Konkrete Vorschläge, welche Änderungen an welchen Dateien in der Dokumentation vorgenommen werden sollten

„Für diesen Test hat der Doku-Assistent zwei Dateien von in Summe 770 Dateien identifiziert, an denen Änderungen nötig wären, und konkrete Änderungsvorschläge, nämlich einen Datumsfilter, an spezifischen Absätzen in der Dokumentation vorgeschlagen“, kommentiert Peter Hinkelmanns, Data Scientist bei TANNER, das Videobeispiel.

Funktion 3: Review für Verbesserungen am neuen Content

Auch selbst erstellter Content kann mit dem Doku-Assistenten verbessert werden. Dafür gibt es die dritte Funktion, die den Content automatisch hinsichtlich dokumentationsrelevanter Kriterien überprüft und korrigiert. Diese Kriterien werden durch den Passive-Voice-Check, den Modal-Verb-Check und den Synonym-Check erfüllt. Der Benutzer erhält neben dem verbesserten Text auch ein Feedback mit Erklärung, was geändert wurde und warum.

Prototyp dokumentiert Vorteile von KI-Unterstützung

„Unser Doku-Assistent ist als Pilotprojekt für einen langjährigen Kunden entstanden und zeigt bereits eindrucksvoll, wie KI den Dokumentationsprozess für neue Softwarefunktionen effizienter und qualitativ hochwertiger gestalten kann“, resümiert Anne Gläser. „Wir freuen uns sehr darauf, ein solches Tool für den täglichen Einsatz in der Technischen Dokumentation zu entwickeln.“ Ob Zeitersparnis bei Recherchen, mehr Effizienz beim Schreiben von Entwürfen oder eine verbesserte Sprachqualität, die Vorteile einer solchen Technologie konnte der Prototyp bereits unter Beweis stellen.