KI-Software (Frameworks und APIs)

Eine allgemeine Annahme ist, dass man für KI-Anwendungen vor allem viel Rechenleistung und Speicher braucht. Das stimmt aber nur teilweise. Damit KI-Hardware effizient arbeiten kann, braucht es auch die passende Software. Die Recheneinheiten verschiedener Prozessoren und KI-Beschleuniger sind nämlich nicht direkt miteinander kompatibel. Deshalb sind spezielle Frameworks, Bibliotheken und optimierte Modelle nötig, um die Hardware bestmöglich zu nutzen. Für Entwickler ist es zudem hilfreich, die jeweiligen Programmierschnittstellen der Hersteller zu kennen.

Wer einen bestimmten KI-Beschleuniger wirklich ausreizen möchte, ist stark auf die Software-Unterstützung des Herstellers angewiesen. Ein gut gepflegtes Software-Ökosystem ist daher genauso wichtig wie die Hardware selbst. Im Idealfall trägt auch die Open-Source-Community dazu bei und integriert Unterstützung für verschiedene KI-Beschleuniger in bestehende Projekte.

Allerdings ist es oft schwierig herauszufinden, welche Software mit welcher Hardware am besten zusammenarbeitet. Die Leistung kann je nach Kombination aus Framework, Schnittstellen, Treibern und Hardware stark variieren. Und die Leistung kann dann noch bei unterschiedlichen Software-Versionen variieren. Eine neue Version muss dabei nicht unbedingt besser sein.

KI-APIs (Application Programming Interface)

APIs sind vordefinierte Programmierschnittstelle mit einem festgelegten Satz an Regeln, Befehlen und Datenformaten, die von Hardware-Herstellern dokumentiert sind, damit Programmierer und Entwickler auf bestimmte Funktionen zugreifen können. KI-APIs haben den Vorteil, dass man KI-Funktionen der Hardware explizit nutzen und darauf zugreifen kann, ohne das zugrunde liegende Modell oder die Hardware selbst programmieren zu müssen. Die API dient sozusagen zur Kommunikation mit der Hardware.

Eine KI-API stellt zum Beispiel Funktionen zur Bilderkennung, Sprachanalyse, Textgenerierung oder Inferenz-Beschleunigung bereit und verbirgt dabei die technische Komplexität hinter einfach nutzbaren Befehlen oder Funktionen.

Beispiele für KI-APIs

  • oneAPI Deep Neural Network Library (oneDNN): Bibliothek für Deep Learning auf Intel-CPUs.
  • OpenVINO: Toolkit zur Optimierung und Bereitstellung von Deep-Learning-Modellen.
  • AMD Optimizing CPU Libraries (AOCL): Mathematische und ML-Optimierungen für AMD-CPUs.
  • CUDA: Kern-API für paralleles Rechnen auf NVIDIA-GPUs.
  • CUDA Deep Neural Network (cuDNN): Deep-Learning-Primitives für CUDA.
  • ROCm: Software-Stack für Berechnungen auf AMD-GPUs.
  • MIOpen: Deep-Learning-Bibliothek für AMD-GPUs.
  • Google Android Neural Networks API (NNAPI): API für On-Device-ML auf Android-Smartphones.

KI-Frameworks

Frameworks sind Softwarebibliotheken oder ganze Entwicklungsplattformen, die fertige Werkzeuge, Algorithmen und Software-Schnittstellen bereitstellen, um Anwendungen schneller und einfacher zu entwickeln. Sie bringen viele Funktionen mit, die man ansonsten per Hand programmieren müsste.
Speziell KI-Frameworks übernehmen viele komplexe Aufgaben im Hintergrund. Zum Beispiel Datenverarbeitung, Modelltraining, Optimierung und Bereitstellung. Das hat den Vorteil, dass der Entwickler sich stärker auf die Logik und das Design ihrer Anwendung konzentrieren können, anstatt jedes Detail von Grund auf zu programmieren.

Beispiele für KI-Frameworks

  • Scikit: Klassisches ML für Klassifikation, Regression, Clustering usw.
  • TensorFlow: Unterstützt Training auf CPUs, GPUs, TPUs.
  • PyTorch: Dynamische Berechnungsgrafen.
  • Apple Core ML: Framework für ML auf iOS.

Framework vs. API

Der Unterschied zwischen Framework und API ist nicht immer klar, weil sie oft zusammen auftreten. Ein Framework ist so etwas wie ein Werkzeugkasten mit Bauanleitung, um etwas zu entwickeln. Eine API ist wie eine Bedienoberfläche mit klar definierten Knöpfen, Hebeln und Befehlen (Namen von Funktionen und verwendbare Parameter), um Funktionen nutzen zu können.
Viele Frameworks bringen ihre eigene API mit, und für manche APIs gibt es mehrere unterschiedliche Frameworks von denen sie unterstützt werden.

Python: KI-Bibliotheken und ML-Frameworks

Beschäftigt man sich mit dem Thema KI von der Software-Seite her, dann stellt man schnell fest, dass es sehr viel Auswahl gibt und natürlich stellt sich die Frage, was nimmt man da.

KI-Beschleuniger

KI-Beschleuniger ist ein Oberbegriff für spezielle Rechenwerke und Chips, die KI-Algorithmen wesentlich schneller und effizienter ausführen können als Universal-CPUs. Sie wurden entwickelt, weil KI-Anwendungen optimierte Rechenwerke und mehr Speicher brauchen.

Beispiel: Künstliche neuronale Netze (KNN)

Künstliche neuronale Netze sind Verbindungen zwischen künstlichen Neuronen, die in Schichten organisiert sind und deren Funktionsweise von den Neuronen im Gehirn inspiriert sind. Jedes künstliche Neuron führt eine einfache Berechnung durch und leitet das Ergebnis an alle Neuronen der nächsten Schicht weiter. In Summe können komplexe Zusammenhänge erlernt oder Entscheidungen getroffen werden.

Weitere verwandte Themen:

Lernen mit Elektronik-Kompendium.de

Noch Fragen?

Bewertung und individuelles Feedback erhalten

Freitextaufgaben zum Artikel beantworten, korrigieren lassen und zum Profi werden.

Aussprache von englischen Fachbegriffen

Computertechnik-Fibel
Computertechnik-Fibel

Computertechnik neu verstehen - jetzt in der 6. Auflage

Die Computertechnik-Fibel ist in einer vollständig überarbeiteten 6. Auflage als Buch, eBook und Bundle erschienen.
Statt einzelne Teile zu lernen, entwickelst du ein Gesamtverständnis moderner Computersysteme. Von der Hardware, Betriebssysteme, Virtualisierung, KI und Quantencomputer.

Jetzt bestellen

inkl. MwSt. zzgl. Versandkosten

Die Computertechnik-Fibel, das Computer-Buch
Computertechnik-Fibel

Alles was du über Computertechnik wissen musst.

Die Computertechnik-Fibel ist ein Buch über die Grundlagen der Computertechnik, Prozessortechnik, Halbleiterspeicher, Schnittstellen, Datenspeicher, Laufwerke und wichtige Hardware-Komponenten.

Das will ich haben!

Artikel-Sammlungen zum Thema Computertechnik

Alles was du über Computertechnik wissen solltest.

Trends in der IT

Trends in der IT

eBook kaufen

Crashkurs IT

Crashkurs IT

eBook kaufen

Digitalisierung

Digitalisierung

eBook kaufen

Quantentechnik

Quantentechnik

eBook herunterladen