KI-Anwendungen entwickeln
Ein KI-Modell wurde trainiert, nicht programmiert. Das ändert, wie man Anwendungen damit entwirft, testet und absichert.
Ein KI-Modell wurde trainiert, nicht programmiert. Das ändert, wie man Anwendungen damit entwirft, testet und absichert.
Viele Anwendungen mit generativer KI bestehen aus gewöhnlicher Software mit einem neuen Baustein: einem Sprachmodell, das über eine Schnittstelle aufgerufen wird, so wie eine Datenbank. Die Anwendung gibt dem Modell eine Aufgabe in Alltagssprache und den nötigen Kontext. Es antwortet mit Text oder strukturierten Daten. Damit werden in eine Anwendung neue Funktionen integriert, die mit Sprache umgehen können, wie Menschen sie schreiben: Anfragen einordnen, Angaben aus Freitext herauslesen, Fragen zum eigenen Datenbestand beantworten. Wählt das Modell anhand der Ergebnisse selbst die nächsten Schritte, arbeitet es als Agent.
Neben Sprachmodellen kommen mit Decision Models neue Bausteine für KI-Anwendungen hinzu. Sie sind darauf spezialisiert, zwischen vorgegebenen Möglichkeiten zu wählen, statt eine Antwort auszuformulieren, und können das um ein Vielfaches schneller und günstiger als generative Sprachmodelle. Das Ergebnis kann die Software direkt weiterverarbeiten. Sprachmodelle und Decision Models können sich dabei ergänzen. Welches Modell für welche Aufgabe geeignet ist, hängt vom Anwendungsfall ab.
Das Verhalten eines Modells entsteht durch Training und lässt sich nicht wie eine Geschäftsregel im Quellcode nachlesen. Dieselbe Eingabe kann zu unterschiedlichen Antworten führen. Wechselt die eingesetzte Modellversion, können sich die Antworten ändern, obwohl der eigene Code gleichbleibt. KI-Anwendungen müssen deshalb anders getestet werden als klassische Software.
Eine weitere Herausforderung sind die Eingaben der Nutzer: Sie bestimmen das Verhalten der Anwendung maßgeblich mit und lassen sich vorab nicht vollständig abdecken. Manche Fehler werden deshalb erst im Produktivbetrieb sichtbar. Der Aufbau von Feedback-Schleifen, um aus der tatsächlichen Nutzung zu lernen, ist deshalb ein Kernbestandteil der Entwicklung von KI-Anwendungen.
Um diese Komplexität zu begrenzen, zerlegt das Team die Anwendung in spezialisierte Workflows oder Komponenten. Für jede Komponente legt es fest, welche Systeme angebunden werden und welche Aktionen erlaubt sind.
Drei Erfahrungswerte aus unseren Projekten:
Ein erster Prototyp ist oft schnell gebaut. Die eigentliche Entwicklungsarbeit liegt darin, die Qualität der Ergebnisse abzusichern, die Anwendung zuverlässig in bestehende Systeme zu integrieren und einen stabilen Betrieb sicherzustellen.
Wir entwickeln KI-Anwendungen für unsere Kunden – vom ersten Prototyp bis zum zuverlässigen Betrieb. Der Anspruch ist derselbe wie bei aller Software, die wir bauen: Qualität nachweisen, nicht behaupten.