Skip to main content

Einschränkungen eines einzelnen KI-Modells

Artikel von

Frank Fischer

blog feature ai lilac

7. August 2023

0 Min. Lesezeit

Die heutigen Diskussionen über KI sind oft von Emotionen wie Angst und Ehrfurcht geprägt – und davon, dass KI auf Large Language Models (LLMs) reduziert wird. Doch das ist längst nicht alles. Lassen Sie uns diese Ängste beiseiteschieben und anhand von Daten beleuchten, warum KI mehr ist als LLMs.

Was ist KI?

Ein grundlegendes Verständnis von KI ist sinnvoll. In den 1950er-Jahren diskutierten Forschende und Praktiker darüber, wie künstliche Intelligenz aussehen könnte und woran wir sie erkennen würden. Fragen Sie ChatGPT, erhalten Sie folgende Antwort: „Künstliche Intelligenz lässt sich als ein System oder eine Maschine erkennen, das bzw. die Fähigkeiten zeigt, zu lernen, zu verstehen, zu schlussfolgern, die Umgebung wahrzunehmen und darauf zu reagieren – auf eine Weise, die traditionell mit menschlicher Intelligenz verbunden ist. Kennzeichnend dafür sind die Fähigkeit, sich an neue Situationen anzupassen, Probleme zu lösen, Entscheidungen zu treffen und komplexe Ideen oder Muster zu verstehen.“ Das ist tatsächlich eine gute Zusammenfassung.

Wenn Sie heute fragen, was KI ist, beschreibt die Antwort meistens ein LLM – eine Art neuronales Deep-Learning-Netzwerk. KI umfasst jedoch viele weitere, vielfältige und umfassende Technologien. Oft ist spezialisierte KI (manchmal auch „schwache KI“ genannt) oder eine Kombination verschiedener Methoden die beste Wahl.

Vereinfacht gesagt lassen sich KI-Methoden grob in zwei Hauptbereiche einteilen: einen logischen und einen statistischen Ansatz. „Intelligente Agenten müssen mit der Komplexität und Unsicherheit der realen Welt umgehen können. Logische KI konzentrierte sich vor allem auf Ersteres, statistische KI auf Letzteres.“ In der Cybersicherheit ist beispielsweise der Einsatz von ML (statistischer KI) bei der Angriffserkennung oder von logischer KI in SAST weit verbreitet. Eine ausführlichere Diskussion der verschiedenen KI-Ansätze finden Sie in der Veröffentlichung von Russell und Norvig.2 

Generative KI, die Inhalte wie Texte, Bilder, Filme oder Quellcode erzeugen kann, und LLMs, die natürliche Sprache als Schnittstelle nutzen können (z. B. im Chat), sind relativ neu. Generative KI funktioniert mithilfe eines Verfahrens namens Generative Adversarial Networks (GANs). Dabei wird ein ML-Modell (der „Diskriminator“) darauf trainiert, Inhalte als echt oder falsch einzustufen (z. B. Porträts von Menschen). Ein weiteres ML-Modell (der „Generator“) versucht, Inhalte – etwa ein Bild – zu erzeugen, die der Diskriminator akzeptiert. Werden beide gemeinsam im unüberwachten Lernen trainiert, kann das System Inhalte erzeugen, die sich kaum oder gar nicht mehr von menschengemachten Produkten unterscheiden lassen.  Ein LLM erweitert diese Idee durch den Einsatz eines Transformers.  Texte werden dabei in ein Datenformat umgewandelt, das ML verarbeiten kann („Transformer“). Zum Trainieren des Modells werden riesige Textmengen verwendet. Das Modell erzeugt Textantworten auf Texteingaben, die oft als „Prompts“ bezeichnet werden. Die Antworten auf dieselbe Frage können variieren, indem ein Faktor festgelegt wird, der bestimmt, wie viel Zufall das System einbezieht – bei GPT wird dieser Faktor als „Temperatur“ bezeichnet.  Aktuelle LLMs haben oft ein Stichtagsdatum, das angibt, bis wann die zum Trainieren verwendeten Daten gesammelt wurden. KI-Entwickler möchten diese Einschränkung jedoch überwinden, indem sie LLMs mit dem Internet verbinden und so mit aktuellen Informationen versorgen. Schließlich können LLMs auf verschiedene Themen spezialisiert und trainiert werden, darunter die Generierung von Quellcode (siehe Googles Bericht zu PaLM 2).

LLMs verwenden eine als Deep Learning bezeichnete Technik, die die Neuronen des menschlichen Gehirns nachbildet. Es gibt jedoch viele weitere Möglichkeiten, Maschinen statistisch lernen zu lassen, etwa Support Vector Machines, evolutionäre Algorithmen, Markov-Ketten und mehr. Wie bereits erwähnt, gibt es außerdem die andere Denkrichtung der logischen KI, mit der sich mithilfe von Technologien wie Prolog Expertensysteme entwickeln lassen.

KI im SDLC

Konkrete Einsatzszenarien für KI in der Softwareentwicklung und -bereitstellung.

Einsatz

Standort

Vorteile

Nachteile3

Code-Generierung

SAST, IDE

Produktivität, geringere kognitive Belastung

Code-Qualität, Lizenzierung, Sicherheit

Code-Refactoring und -Upgrade

IDE

Produktivität, geringere kognitive Belastung

Code-Qualität, Lizenzierung, Sicherheit, Datenabfluss

Fehlerbehebung

IDE

Geringere kognitive Belastung

Datenabfluss

Dokumentation

IDE, CI

Vernachlässigte Aufgabe

Datenabfluss

Code-Verständnis

IDE

Geringere kognitive Belastung

Probleme finden und Korrekturen erstellen

SAST, SCA, IaC, Container, IDE

Tiefere semantische Analyse

False Positives und Laufzeit

Testen (Testgenerierung, Fuzzing, Testdaten)

IDE, DAST, Fuzzing

Nicht bedachte Probleme finden

Laufzeit, Ergebnisse erfordern Folgemaßnahmen, unrealistische Testfälle

Monitoring (Datenverarbeitung, Zusammenführen von Datenströmen, Erkennen von Anomalien)

CD, Ops, SIEM

Mehr Daten, unbekannte Muster finden

KI-Kategorien im Überblick

KI-Technologien lassen sich in jeder Phase der Softwareentwicklung einsetzen. Die y-Achse zeigt die zunehmende Komplexität und Leistungsfähigkeit des KI-Tools. Auf der x-Achse sind die Funktionen (z. B. Elemente mit direktem Bezug zur Entwicklererfahrung) und Fähigkeiten (z. B. Kompetenzen im Backend) der jeweiligen Tools dargestellt.

Diagramm zum Vergleich von KI-Typen hinsichtlich Fähigkeiten und Komplexität, Entwicklererfahrung, Scan-Engine, Produktivität und Präzision.

Hinweis: Alle violetten Kästen zeigen Technologien, für die Snyk eigene Lösungen anbietet. Im Folgenden dient Snyk als Beispiel.

Schwache KI

Schwache KI, auch als Narrow AI bezeichnet, umfasst KI-Systeme, die speziell für bestimmte Aufgaben entwickelt wurden, etwa für Produktempfehlungen auf einer E-Commerce-Plattform oder die Vorhersage des Nutzerverhaltens in einer Anwendung. Obwohl diese Systeme innerhalb dieser konkreten Aufgaben Intelligenz zeigen, arbeiten sie in festgelegten Grenzen und können Wissen außerhalb ihrer vorprogrammierten Funktionen weder verstehen noch erlernen oder anwenden. Dadurch eignen sie sich ideal für gezielte Lösungen in der Softwareentwicklung. Snyk setzt beispielsweise in Snyk Code schwache KI ein, um Quellen, Senken und Bereinigungsfunktionen zu finden. 

Logische KI

Symbolische KI, auch als regelbasierte KI oder „Good Old-Fashioned AI“ bekannt, ist ein Ansatz, bei dem Probleme mithilfe von Logik und bestimmten Symbolen dargestellt und bearbeitet werden, um eine Lösung zu finden – etwa in Expertensystemen, deren Diagnose-Logik explizit programmiert ist. Für Softwareentwickler könnte das bedeuten, ein Fehlerbehebungsprogramm zu entwerfen, das mithilfe vordefinierter Regeln Softwarefehler erkennt und behebt, oder ein Schachspiel zu erstellen, in dem die KI anhand eines bestimmten Regelwerks den besten Zug auswählt. Snyk Code verwendet beispielsweise einen Logiksolver und Regeln, die in einer Wissensdatenbank zusammengefasst sind.

Generative KI

Generative KI ist ein Teilgebiet der künstlichen Intelligenz, das Verfahren des maschinellen Lernens nutzt, um neue Inhalte – etwa Bilder, Texte oder Musik – zu erzeugen, die den Trainingsdaten ähneln. Für Softwareentwickler könnte das bedeuten, ein Programm zu erstellen, das menschenähnliche Texte für Chatbots oder automatische Antworten generiert, oder ein KI-Modell zu entwickeln, das auf Grundlage vorhandener hochwertiger Designs neue, visuell ansprechende Benutzeroberflächen entwirft.

LLMs

Ein LLM, kurz für Large Language Model, ist ein KI-Modell, das mit riesigen Textmengen trainiert wurde und dadurch auf Grundlage vorgegebener Prompts menschenähnliche Texte erzeugen kann. Für Softwareentwickler könnte das bedeuten, ein LLM für Anwendungen wie einen automatisierten Kundenservice-Chatbot zu nutzen oder ein Code-Review-Tool zu erstellen, das potenzielle Probleme im geschriebenen Code mit Kommentaren in natürlicher Sprache erläutert.

KI kombinieren oder hybride KI

Hybride KI kombiniert verschiedene Methoden der künstlichen Intelligenz – etwa symbolische KI und maschinelles Lernen – mit Elementen menschlicher Intelligenz, um die Stärken jeder Methode zu nutzen und ihre Schwächen auszugleichen. In der Softwareentwicklung könnte das bedeuten, ein System zu entwickeln, das regelbasierte KI für erste Entscheidungen und maschinelles Lernen zur Mustererkennung und Vorhersage nutzt und menschliche Intelligenz bei Aufgaben einbezieht, die Kreativität, Einfühlungsvermögen oder komplexe Urteilsfähigkeit erfordern – etwa bei der abschließenden Freigabe generierter Inhalte oder bei anspruchsvollen Problemlösungen. So setzt das Sicherheitsteam von Snyk die Snyk Code Engine und ML-Technologien ein, um die Wissensdatenbank von Snyk Code aufzubauen. Ein weiteres Beispiel ist Code Fix: Hier kommt generative KI zum Erstellen von Korrekturvorschlägen zum Einsatz, während logische KI die Vorschläge findet und anschließend auf ihre Umsetzbarkeit prüft. 

KI-Modelle in der Überprüfung

Zusammenfassend lässt sich sagen: KI ist mehr als LLMs und kommt bereits in vielfältigen Lösungen zum Einsatz. LLMs bieten eine faszinierende neue Schnittstelle und grenzenlose Möglichkeiten, sind aber nicht das einzige Werkzeug, das uns zur Verfügung steht. Werden weitere KI-Elemente einbezogen, erweitert das die Abdeckung, Intelligenz und Einsatzmöglichkeiten von KI in der Anwendungssicherheit.

Wenn Sie mehr darüber erfahren möchten, wie Sie KI erfolgreich in Ihrem Unternehmen integrieren, lesen Sie unseren aktuellen Leitfaden mit Best Practices für den Einsatz von KI im SDLC.

Quellen

1 Es wird argumentiert, dass bereits in den Mythen der alten Griechen intelligente Maschinen erwähnt werden und die Idee künstlicher Intelligenz tatsächlich Tausende von Jahren alt ist (siehe https://en.wikipedia.org/wiki/History_of_artificial_intelligence).

2 https://homes.cs.washington.edu/~pedrod/papers/aaai06c.pdf

3 Ein allgemeiner Nachteil ist, dass jedes Einsatzszenario menschliche Aufsicht erfordert.