Workshop-Bericht „AI-driven Software-Development mit GPT und Co.“

Datum: 20. November 2024
Autor*in: Magdalena Piller


Anfang November konnte ich an der W-JAX 2024 in München teilnehmen, einer der führenden Entwicklerkonferenzen in Deutschland, die sich auf die neuesten Trends in der Softwareentwicklung, Architektur und Innovation konzentriert. Im Fokus der diesjährigen Konferenz standen unter anderem die Themen Künstliche Intelligenz (KI), Machine Learning und Cloud-native Technologien. Besonders begeistert war ich vom Workshop „AI-driven Software-Development mit GPT und Co.“, den ich besucht habe. Dieser wurde von Jörg Neumann, dem Gründer und Geschäftsführer der NeoGeeks GmbH, geleitet.

Blick hinter die Kulissen der Generative AI

Der Workshop startete mit einer Einführung in das Thema Generative AI (GenAI) und ihren Unterschied zu herkömmlichem Machine Learning (ML). Jörg Neumann erklärte, dass es beim klassischen Machine Learning im Wesentlichen um die Erkennung von Mustern geht, während GenAI versucht, menschliche Sprache zu verstehen und zu generieren. Der Ursprung der generativen KI liegt interessanterweise bei Google, wo im Übersetzungsteam eine Art „Ursprache“ entwickelt wurde. Diese Ursuppe diente dann als Grundlage, um mithilfe neuronaler Netze wieder eine verständliche Sprache zu erzeugen. Das war der Beginn eines neuen Ansatzes, der letztlich zu den heute bekannten Modellen wie GPT führte.

Die Grundlagen der KI-Modelle: Tokens, Embeddings und das Training

Das Grundprinzip von GenAI besteht darin, dass KI-Modelle mithilfe von großen Datenmengen trainiert werden, um eigenständig neue Inhalte zu erzeugen, die den Mustern und Regeln der Trainingsdaten ähneln. Dabei können Texte, Bilder, Musik, Videos, Programmcode und viele weitere Arten von Inhalten generiert werden.

Zentrale Techniken sind hierbei „Tokens“ und „Embeddings“. Unter Embeddings versteht man die Vektordarstellung von Wörten, Sätzen, Dokumenten – ungewandelt in sog. Tokens. Beim Trainieren der Modelle werden diese Tokens in Beziehung zueinander gesetzt, was einen mehrdimensionalen Raum („Wolke“) erzeugt. Eine Dimension/Beziehung kann z.B. sein „welches Wort ist nahe dran“ oder „was ist das Gegenteil“, aber natürlich auch deutlich komplexere – bei GPT-3 sind es ca. 12000 Dimension.

Der eigentliche Trainingsprozess besteht im Wesentlichen aus den folgenden Schritten:

  • Pretraining: Monatelanges Training auf Basis riesiger Internet-Datensätze mit tausenden GPUs
  • Supervised Fine-Tuning: Manuelle Generierung idealer Antworten, oft in sogenannten „Clickfarmen“
  • Reward Modeling: Bewertung und Optimierung der Antworten, um die Qualität zu verbessern. System lernt hier auch, dass es keine Antworten geben soll zu Politik, Sexismus, etc
  • Reinforcement Learning: Basierend auf tausenden manuellen Eingaben lernt das Modell, noch präzisere Antworten zu liefern

Hier wird klar, wie aufwändig der Trainingsprozess ist. Der aktuelle Trend geht zunehmend zu kleineren, aber spezialisierten Modellen, die trotz geringerer Datenmengen eine hohe Qualität bieten.

Prompt Engineering: Wie man die besten Ergebnisse erzielt

Ein weiterer Schwerpunkt des Workshops war das Thema Prompt Engineering. Jörg stellte verschiedene Techniken vor, um die Antworten der KI zu verbessern. Die Standard-Techniken sind:

  • Few-Shot Prompting: Prompting mit Beispielen
  • Chain-of-Thought: Aufteilung der Aufgabe in mehrere Schritte (Modelle rechnen schlecht!)
  • Generated Knowledge: Hier wird zusätzliches Wissen mitgeben
  • Self-Refine: z.B. mit Anweisung „Verbessere Dich selbst“

Neben dem Standard-Eingabe-Prompt gibt es auch den sog. System-Prompt, mit welchem man den Chat grundlegend konfigurieren kann wie z.B. die Art der Sprache („Sprich wie ein Pirat“) und auch die sog. „Temperatur“, also wie konservativ oder kreativ die Antworten des KI-Tools sind.

Über den OpenAI Playground und das Azure OpenAI Studio konnten wir in einer praktischen Demo sehen, wie sich KI-Modelle konfigurieren und direkt einsetzen lassen. Dort gibt es u.a. jeweils einen Assistenten, um sich den System-Prompts und auch Codes zur Einbindung erzeugen zu lassen. Im Azure OpenAI Studio gibt es auch die Möglichkeit schnell Chatbots-Oberflächen zu erstellen.

Erweiterte Konzepte: Function Calling und RAG

Schliesslich wurden erweiterte Themen wie Function Calling und Retrieval-Augmented Generation (RAG) behandelt und diese auch anhand von praktischen Beispielen demonstriert. Diese Konzepte erlauben es, KI-Modelle mit externen Datenquellen zu verbinden und domänenspezifisches Wissen zu integrieren. Beim RAG-Pattern werden Dokumente in einer Vektordatenbank gespeichert, was es ermöglicht, spezifische Informationen in die Antworten der KI einfließen zu lassen – ohne das Modell neu trainieren zu müssen.

Fazit: KI verändert die Softwareentwicklung

Die Möglichkeiten, die Generative AI bietet, sind enorm. In den nächsten Jahren wird KI die Art und Weise, wie wir Software entwickeln, vermutlich grundlegend verändern. Die vorgestellten Frameworks und Tools bieten spannende Ansätze, um intelligente Systeme effizienter zu gestalten.

Und keine Konferenz endet, ohne dass man dieses Zitat gesehen hat:

The electric light did not come from the continuous improvement of the candle

Oren Hari



Dieser Artikel wurde verschlagwortet unter:


Kommentare

Selber kommentieren:






Weitere Beiträge zum Thema infomax


#Teaminterview | Was passiert eigentlich im Bereich Unternehmenskommunikation?

Autor*innen: Christine Pfleger, Verena Schmuck, Veronika Zieglgänsberger


infomax   //   Über den Tellerrand


Man kann nicht nicht kommunizieren. Erst recht nicht, wenn man in der Unternehmenskommunikation arbeitet! Im #Teaminterview sprechen Christine und Verena über die Tätigkeiten in ihrem Bereich – und warum Kommunikation das Bindeglied zwischen den Teams ist.


Beitrag lesen
11
AUG
23

10 Jahre Benni @ infomax

Autor*in: Christine Pfleger


infomax


Web-Developer Benjamin Hofmann mit Sammy
Web-Developer Benjamin Hofmann mit Sammy

Irgendwie kam die aktuelle gråd extra einer pünktlichen Erstellung meines Beitrags dazwischen, daher müsste es inzwischen korrekt heißen: 10 1/4 Jahre Benni @ infomax. Am 3. September 2007 hatte Benni Hofmann seinen ersten Arbeitstag bei infomax als erster Auszubildender Fachinformatiker (Anwendungsentwicklung). Doch eigentlich begann seine IT-Karriere schon viel früher, nämlich mit sieben Jahren und einem kleinen …


Beitrag lesen
10
JAN
18