Obwohl die Fragen zu den Gefahren der KI-Entwicklung etwas nachgelassen haben und die in der täglichen Arbeit verwendeten KI-Tools noch viel zu wünschen übrig lassen, bringen neue Entwicklungen und Durchbrüche uns immer wieder dazu, diese Fragen zu stellen. Die Entwicklung der künstlichen Intelligenz in der Wirtschaft und Programmierung sorgt für viel Aufregung und Diskussion.
Betrachtet man die Programmierung, stellt sich eine grundlegende Frage zur Zukunft des Berufs – ist KI wirklich eine Bedrohung für Programmierer, oder wird sie zu ihrem größten Verbündeten, sodass Programmierer, die im Umgang mit KI geschult sind, jede Anwendung schnell und fehlerfrei erstellen können? Um diese Frage zu beantworten, ist es notwendig, einige zentrale Argumente zu betrachten:
Ein Beispiel dafür ist die Nutzung von KI zur Automatisierung routinemäßiger Aufgaben, die es Entwicklern ermöglicht, sich auf komplexere Probleme zu konzentrieren.
Sie kann jedoch einige Aufgaben automatisieren und die Effizienz dieser Spezialisten erheblich steigern. Zum Beispiel kann sie automatisch Code für relativ einfache Funktionen generieren.
Dies sollte jedoch kein Grund zur Besorgnis sein. Beispiele sind die automatische Überprüfung von Code hinsichtlich angewandter Programmiermuster oder die Automatisierung der Erstellung grundlegender Tests.
Programmierer werden weiterhin benötigt, um wichtige Entscheidungen zu treffen, komplexe Probleme zu lösen und wertschöpfende Software zu erstellen. Zum Beispiel das Entwerfen der Architektur von Informationssystemen, was eine tiefgehende Analyse und ein Verständnis des Geschäfts erfordert.
Aber kommen wir zu Devin, einem innovativen Tool, das, obwohl es derzeit nur ein Teaser von Cognition ist (https://www.cognition-labs.com), die Zukunft der Entwicklung künstlicher Intelligenz im Bereich der Programmierung zeigt.
Devin, der weltweit erste vollständig autonome KI-Software-Ingenieur, ist die Antwort auf die wachsende Nachfrage nach Automatisierung in der Softwareentwicklungsbranche. Seine Fähigkeit, neue Technologien zu erlernen, Fehler im Code zu finden und zu beheben sowie seine eigenen KI-Modelle zu trainieren und anzupassen, macht es zu einem unschätzbaren Werkzeug für Entwickler. Zu den wichtigsten Funktionen von Devin gehören:
Cognition hat einen Vergleich der Fähigkeiten von Devin mit der Leistung bekannter Sprachmodelle veröffentlicht, die das Programmieren unterstützen. In Bezug auf Schlussfolgerungen und Inferenz übertraf Devin die besten heute verfügbaren Modelle, wie OpenAI’s GPT-4 und Anthropic’s Claude 2, um mehrere Prozentpunkte.
Der nächste Schritt in der Automatisierung von Entwicklungsprozessen ist AutoDev, eine vollständig automatisierte, KI-basierte Softwareentwicklungsumgebung. Ihre Hauptprinzipien sind die Erhöhung der Autonomie, Effizienz und Sicherheit von KI-Systemen. Und das Wichtigste: Im Gegensatz zu Devin ist es in einem Open-Source-Modell verfügbar, was bedeutet, dass es für alle zugänglich ist.
Źródło: ArXiv (https://arxiv.org/html/2403.08299v1)
Der Hauptvorteil der Nutzung von AutoDev besteht darin, dass es enorm bei der Automatisierung repetitiver Aufgaben hilft. Ein Beispiel ist die automatische Generierung von Unit-Tests, die es Entwicklern ermöglicht, sich auf komplexere Aspekte des Projekts zu konzentrieren.
Das zweite Thema ist die Fähigkeit, Agenten zu erstellen, die die Leistung der anderen überprüfen. Dies reduziert Fehler und ermöglicht es der künstlichen Intelligenz, die Leistung der von ihr selbst erstellten Lösungen zu überprüfen, was es Entwicklern ermöglicht, sich auf kreative Problemlösungen und Innovationen zu konzentrieren. Zum Beispiel baut und implementiert AutoDev automatisch Anwendungen, was den Entwicklern mehr Zeit gibt, neue Funktionen zu entwerfen.
KI-Paarprogrammierung ist die Lösung, die die meisten Softwareentwickler heute verwenden, laut einer Umfrage von GitHub – bis zu 92 % der US-Entwickler. Sie hilft, die Arbeit um 55 % zu beschleunigen (https://github.blog/2023-06-13-survey-reveals-ais-impact-on-the-developer-experience/). Künstliche Intelligenz kann sich wiederholende Codezeilen vervollständigen oder weitere Funktionen aus Programmiermustern oder vorherigen Beispielen vorschlagen.
Im Kontext der Zusammenarbeit mit KI und der Automatisierung von Programmieraufgaben ist es sinnvoll, zu überlegen, welcher Ansatz vorteilhafter ist. Und ob wir eines wählen oder sie weise kombinieren müssen. Einerseits kann die Zusammenarbeit mit KI die Arbeit der Entwickler erheblich verbessern, indem sie beispielsweise das Testen von Code automatisiert, was eine schnellere und genauere Erkennung potenzieller Fehler ermöglicht.
Andererseits kann die vollständige Automatisierung von Programmieraufgaben zu Softwarefehlern führen, die schwer zu erkennen und potenziell gefährlich sind, sowie zu einem Mangel an wichtiger Funktionalität, wie z.B. Sicherheit. Es ist wichtig, sich daran zu erinnern, dass KI aus den verfügbaren Repositories lernt, die von Programmierern unterschiedlicher Erfahrungsstufen erstellt wurden. Selbst mit Fehlern. Darüber hinaus haben viele Softwarelösungen keine umfassende Dokumentation oder eine große Anzahl öffentlich verfügbarer Beispiele, sodass die künstliche Intelligenz ein begrenztes Verständnis dafür hat, wie sie funktionieren. Dies kann zu Halluzinationen führen, d.h. KI erfindet Teile der verwendeten Lösungen und deren APIs.
Źródło: ArXiv (https://arxiv.org/html/2403.08299v1)
Die Entwicklung von KI und Tools wie Devin und AutoDev, die KI-Agenten nutzen, schafft neue Möglichkeiten und Herausforderungen für die Softwareentwicklungsbranche. Mit der wachsenden Rolle des Englischen als neue Programmiersprache – die verwendet wird, um Befehle an Assistenten zu geben – wird es eine weitere Sprache werden, die viele Programmierer besser beherrschen müssen als zuvor. Um das volle Potenzial von KI zu realisieren, ist es wichtig, sich nicht nur auf die technischen Aspekte der Programmierung zu konzentrieren, sondern auch auf die Entwicklung von Kommunikationsfähigkeiten und das Verständnis des geschäftlichen und kulturellen Kontexts, der entscheidend für den Bau von Software ist, die für Menschen gedacht ist.
Wenn Ihnen unsere Inhalte gefallen, treten Sie unserer aktiven Community auf Facebook, Twitter, LinkedIn, Instagram, YouTube, Pinterest, TikTok.
JavaScript-Experte und Dozent, der IT-Abteilungen schult. Sein Hauptziel ist es, die Produktivität des Teams zu steigern, indem er anderen beibringt, wie man effektiv beim Programmieren zusammenarbeitet.
Unternehmen haben Schwierigkeiten, eine große Menge an Inhalten zu verwalten, die online veröffentlicht werden, von…
In der Ära der digitalen Transformation haben Unternehmen Zugang zu einer beispiellosen Menge an Daten…
Wussten Sie, dass Sie die Essenz einer mehrstündigen Aufnahme aus einem Meeting oder einem Gespräch…
Stellen Sie sich eine Welt vor, in der Ihr Unternehmen ansprechende, personalisierte Videos für jeden…
Um das Potenzial von großen Sprachmodellen (LLMs) vollständig auszuschöpfen, müssen Unternehmen einen effektiven Ansatz zur…
Im Jahr 2018 hatte Unilever bereits eine bewusste Reise begonnen, um Automatisierungs- und Erweiterungsfähigkeiten in…