KI-gestütztes Engineering mit TwinCAT Chat
Mit TwinCAT Chat lassen sich die sogenannten Large Language Models (LLMs), wie z. B. ChatGPT von OpenAI, in der Engineeringumgebung TwinCAT XAE komfortabel für die Entwicklung eines Projekts nutzen. Dr. Fabian Bause und Jannis Doppmeier vom Produktmanagement TwinCAT beschreiben im Interview die wichtigsten Anwendungsaspekte und mögliche Effizienzpotenziale von der Steuerungsprogrammierung bis hin zum Unternehmensmanagement.
Large Language Models (LLMs) sind spätestens seit der Vorstellung von ChatGPT in aller Munde. Beckhoff hat mit TwinCAT Chat auf der Hannover Messe 2023 als einer der ersten Anbieter eine Anwendung im Automatisierungsbereich vorgestellt. Wie war das kundenseitige Feedback auf und nach der Messe?
Jannis Doppmeier: Das Feedback der Kunden war durchweg positiv. Sowohl Vertreter aus dem Management als auch direkte Anwender äußerten ein hohes Maß an Interesse. Ein Großteil der Kunden sah für den Automatisierungsbereich ein signifikantes Potenzial in dieser Technologie. Einige äußerten sogar konkretes Interesse daran, zukünftig eine Beta-Version zu testen, sobald diese verfügbar ist. Dies deutet darauf hin, dass es eine wachsende Nachfrage nach fortschrittlichen Lösungen in diesem Segment gibt. Mit der Vorstellung von TwinCAT Chat hat Beckhoff einen wichtigen Beitrag zur Integration von LLMs in industrielle Anwendungen geleistet.
Welche grundlegenden Vorteile können LLMs zum einen für den Automatisierer und zum anderen für das Unternehmensmanagement bieten?
Jannis Doppmeier: Large Language Models (LLMs) bieten sowohl für Automatisierer als auch für das Unternehmensmanagement eine Reihe von Vorteilen. Für Automatisierer haben LLMs das Potenzial, den Entwicklungsprozess zu revolutionieren, indem sie Code automatisch erzeugen und vervollständigen. Dies beschleunigt den gesamten Prozess. Darüber hinaus kann man sich von LLMs sogar persönliche Tutorials erstellen lassen und gezielt nach Lösungen bei aufkommenden Problemen fragen, was den Prozess der Lösungsfindung beschleunigt. Ein weiterer Vorteil ist die Möglichkeit, Richtlinien und Best Practices im Automatisierungsbereich konsequent umzusetzen und einzuhalten. Aus der Perspektive des Unternehmensmanagements fördern LLMs den Wissenstransfer innerhalb des Unternehmens. Sie können als zentrale Wissensdatenbank fungieren, die wertvolle Informationen speichert und bei Bedarf bereitstellt. Zudem können LLMs den Support entlasten, indem sie als erster Ansprechpartner für Kundenanfragen dienen. Dies verbessert nicht nur die Antwortzeiten, sondern führt auch zu einer höheren Kundenzufriedenheit. Insgesamt bieten LLMs eine effiziente und innovative Lösung für zahlreiche Herausforderungen in der modernen Geschäftswelt.
Gibt es derzeit noch technische Unklarheiten beim Einsatz von LLMs?
Dr. Fabian Bause: Die Antwort lautet eindeutig ja. Technische Unklarheiten gibt es viele, aber das ist nicht weiter verwunderlich, wenn man sich die aktuell sehr hohe Entwicklungsgeschwindigkeit vor Augen führt. Eine wichtige und für die Automatisierungsbranche derzeit zentrale Herausforderung ist das „Fantasieren“ von LLMs. Damit ist gemeint, dass ein LLM immer wieder auch fantasievolle Antworten generiert, die vom Anwender nicht unbedingt als solche zu erkennen sind. So haben wir in der frühen Entwicklungsphase in von TwinCAT Chat generiertem PLC-Code auch Motion-Funktionen vorgefunden, die es gar nicht gibt – zumindest nicht in TwinCAT. Aber das sind Themen, die adressierbar sind und sich mit der Zeit deutlich verbessern werden.
Und wie sieht dies unter rechtlichen Gesichtspunkten aus?
Dr. Fabian Bause: Auch hier ein klares Ja. Der „AI Act“ der Europäischen Union ist derzeit ein Unsicherheitsfaktor. Er ist nicht final verabschiedet und allein daher ist die Unsicherheit in der Industrie groß. Eine zentrale Herausforderung der Politik bei der Regulierung von KI-Anwendungen liegt darin, dass politische Prozesse viel langsamer sind als die rasant schnelle Weiterentwicklung im Bereich generische KI. Man darf gespannt sein, wie generisch die Regulierung auf die vielen noch unbekannten KI-Entwicklungen anwendbar wird. Aber dass es gewisser regulatorischer Maßnahmen bedarf, steht außer Frage.
Werden KI-Anwendungen wie TwinCAT Chat zukünftig den Steuerungsprogrammierer mit all seiner Kreativität ersetzen können?
Dr. Fabian Bause: Nein, sicherlich nicht. Es ist weder unser Ziel noch läuft es nach derzeitigen technischen Entwicklungen darauf hinaus, Programmierer vollständig zu ersetzen. Ziel ist vielmehr, den Programmierern immer bessere Werkzeuge an die Hand zu geben, damit sie effektiv arbeiten können. Es geht darum, die Produktivität eines Programmierers zu erhöhen – nicht zuletzt auch als eines der zentralen Mittel gegen den Fachkräftemangel. Wenn offene Stellen nicht besetzt werden können, weil schlicht keine qualifizierte Fachkraft zu finden ist, muss mit Mitteln der KI für die weitere Wettbewerbsfähigkeit gesorgt werden.
Was sind die technischen Besonderheiten von TwinCAT Chat?
Jannis Doppmeier: TwinCAT Chat wurde entwickelt, um Anwendern gegenüber der herkömmlichen Nutzung z. B. von ChatGPT im Webbrowser einen klaren Vorteil zu bieten. Der entscheidende Mehrwert liegt in seiner tiefen Integration, insbesondere im Hinblick auf spezialisierte Anforderungen der Automatisierungsbranche. Zu den Kernfunktionen gehört die Chat-Integration direkt in die Entwicklungsumgebung (die). Dies erleichtert den Entwicklungsprozess erheblich, da die Kommunikation und der Code-Austausch nahtlos ineinandergreifen. Darüber hinaus wurde unser Modell speziell für TwinCAT-Anfragen grundinitialisiert. So kann man direkt seine spezifischen Fragen stellen und muss dem Modell nicht mitteilen, dass man TwinCAT verwendet und die Code-Beispiele in Strukturiertem Text erwartet. Ein weiteres Highlight ist die Möglichkeit, generierten Code einfach zu übernehmen. Dies spart den Entwicklern nicht nur Zeit, sondern reduziert auch menschliche Fehler, die beim manuellen Übertragen auftreten können. Die Interaktion mit TwinCAT Chat wurde derart gestaltet, dass sich das Tippen von Befehlen auf ein Minimum reduziert. Stattdessen können einfach per Mausklick vorab von uns getestete Anfragen verwendet werden, die speziell darauf ausgerichtet sind, den Arbeitsfluss des Benutzers zu verbessern. Diese Anfragen umfassen Aktionen wie z. B.:
- Optimieren: Das System kann Vorschläge zur Leistungssteigerung oder Effizienzverbesserung des Codes machen.
- Dokumentieren: TwinCAT Chat hilft beim Erstellen von Kommentaren und Dokumentationen, sodass der Code für andere Teammitglieder leichter verständlich ist.
- Vervollständigen: Wenn Codefragmente fehlen oder unvollständig sind, kann unser System Vorschläge generieren, um diese zu vervollständigen und so die Funktionalität sicherzustellen.
- Refaktorierung: TwinCAT Chat kann Code nach gewissen Richtlinien und Guidelines überarbeiten, sodass dieser den Unternehmensrichtlinien mehr entspricht.
Insgesamt bietet dieses System eine effiziente und intuitive Benutzeroberfläche, die den Entwicklungsprozess erheblich erleichtert.
Welche weiteren Bereiche werden zukünftig neben der derzeit fokussierten Unterstützung der PLC-Code-Erzeugung an Bedeutung gewinnen?
Dr. Fabian Bause: Das Schöne an LLMs ist, dass sie mit ein wenig Fantasie universal einsetzbar sind. Wir arbeiten, neben der PLC-Code-Erzeugung, auch an einem Chatbot, der automatisiert ein TwinCAT-HMI-Projekt erstellt. Ziel ist, dass ein Anwender nur noch formulieren muss, wie er seine HMI aufgebaut haben möchte und TwinCAT generiert im Hintergrund das komplette HMI-Projekt. Der Kunde bekommt also unmittelbar das Feedback in Form der visualisierten HMI. Ermöglicht wird dies, indem wir dem LLM die Programmierschnittstelle zur HMI erklären – denn auch das ist lediglich eine vom LLM gut beherrschbare „Sprache“. Ein weiteres Projekt betrifft ein Chatbot-Interface zu unserem Dokumentationssystem, das immens viele Gigabytes an Wissen in Form von Dokumentationen enthält. Und genau darin liegt die Herausforderung für unsere Kunden: Wir stellen sehr viel Wissen in Form von Texten bereit. Und warum? Weil es die einzige Möglichkeit ist, Informationen beliebig oft von hunderten Personen gleichzeitig abrufbar bereitzuhalten – sprich geschriebener Text ist nur ein Hilfsmittel. Der natürliche Weg des Menschen Informationen zu teilen, ist die Sprache. Eine Person fragt, die andere Person versteht oder vielmehr interpretiert die Frage und erzeugt auf Basis ihrer Erfahrungen eine Antwort. Genau dahin können wir mit LLMs kommen – wir stellen eine Frage und ein LLM ist in der Lage, diese Frage zu interpretieren. Dabei müssen keine bestimmten Schlagworte genutzt werden, sondern das System kann mit Unzulänglichkeiten in einer Frage zurechtkommen. Wird dem LLM nun noch der Zugang zur großen Beckhoff Bibliothek gewährt, kann das Modell zielgerichtet antworten. In Zukunft werden wir also nicht mehr mit Schlagworten nach Antworten suchen müssen, sondern gezielt Fragen stellen können.
Mit TwinCAT Chat eröffnen sich für den Anwender auch neue Arbeitsweisen. Was bedeutet das genau und worin liegen die Vorteile in der Praxis?
Jannis Doppmeier: Unser Tool stellt eine innovative Lösung für eine signifikante Steigerung der Produktivität der Entwickler dar, indem es als digitaler Assistent fungiert. Code muss nicht mehr Zeile für Zeile händisch zu Ende getippt werden. Dieser Assistent übernimmt Routineaufgaben, die oft zeitaufwändig und repetitiv sind. Dadurch haben Entwickler mehr Zeit und Kapazität, sich auf ihre Kernaufgaben, das eigentliche Design und die Konzeption der Software zu fokussieren. In einem Markt, in dem jeder Vorteil zählt, bietet unser Tool Unternehmen die Möglichkeit, trotz Personalengpässen wettbewerbsfähig zu bleiben und den steigenden Ansprüchen ihrer Kunden gerecht zu werden.
Welche Bedeutung hat das verwendete Sprachmodell?
Dr. Fabian Bause: Aktuell konkurrieren mehrere Sprachmodelle der bekannten IT-Giganten miteinander, wie z. B. ChatGPT von OpenAI, PaLM bzw. Bard von Google oder ERNIE von Baidu. Die großen Modelle haben gemeinsam, dass sie alle als Cloud-Services via API angeboten werden. Abseits technischer Unterschiede ergeben sich hier regionale Herausforderungen. So sind ChatGPT und die LLMs von Google nicht von China aus erreichbar. Für Beckhoff stellt dies eine Herausforderung dar, weil der chinesische Markt für uns eine zentrale Rolle spielt. Des Weiteren birgt die Integration des Cloud-Services eines Dritten in unsere Produkte eine starke Abhängigkeit zu diesem Anbieter. Wie entwickelt sich der Service technisch weiter, wie stabil und abwärtskompatibel wird entwickelt, wie verändern sich die Nutzungskosten und nicht zuletzt die Datenschutzrichtlinien des Dienstes? Daher beschäftigen wir uns intensiv mit dem Trainieren eigener Modelle – natürlich nicht von Null an, sondern auf Basis kommerziell nutzbarer offener LLMs. Somit konkurrieren wir nicht mit den allgemeinen Modellen wie ChatGPT, sondern wir fokussieren uns auf einen klar definierten, deutlich kleineren Anwendungsraum.