Devin AI - Is the First AI Software Engineer Ready? Real World Testing Results

Independent testing of Devin, an autonomous AI software engineer, found it succeeded on only 3 of 20 real tasks, with 14 failures and 3 inconclusive results. The agent got stuck, hallucinated features, and produced unusable code on complex work. It performed better on narrow tasks like migrating data, but current autonomous agents are unpredictable and often slower than human-in-the-loop tools like Cursor.
Questions this video answers
20
14
3
About 15 percent
About 14 percent
Chapters
Ihr erinnert euch wahrscheinlich an Devon von Cognition Lab, dass der erste KI Softwareentwickler sein sollte, der als Teammitglied in eurem Team arbeiten sollte. Theoretisch sollt ihr ihm eine Aufgabe zuweisen, die er dann selbstständig erledigen und euch die Ergebnisse zurückgeben soll. Aber wie gut ist das in der Praxis? Nun, wir haben endlich ein paar unabhängige Tests. Dieser stammt von Hame Hussein, den ich sehr respektiere. Er hat auf X etwas über Devon die Key als Softwareentwickler gepostet. Er sagt, wir konnten nicht viele Erfahrungsberichte von Leuten finden, die sie für echte Aufgaben verwendet haben. Also haben wir den MKBHD Modus aktiviert und Devon durch Spaces geschickt. Unsere Ergebnisse haben wir hier dokumentiert. Ich würde gerne wissen, ob andere andere Erfahrungen gemacht haben. Und hier ist der Blogbeitrag, auf den er sich bezieht. Gedanken zu einem Monat mit Deon. Das ist vom Answer AI Team. OK, bevor wir uns diesen Blogbeitrag und einige der Ergebnisse ansehen, möchte ich nur sagen, dass ich bei meinen eigenen Programmieraufgaben Key Tools wie Cursor verwende. Ich würde sagen, dass sie 70 bis 80 Prozent meiner Programmieraufgaben problemlos erledigen. Ich persönlich bevorzuge Cursor jedoch, weil der Mensch involviert ist. Wenn also etwas schiefgeht, kann ich ihm helfen, das Problem zu beheben und oder ihm sagen, wie es es beheben soll. Devon soll nun ein vollständig automatisiertes System sein, basierend auf meinen Erfahrungen mit vollständig autonomen Agenten. Sie können stecken bleiben und halluzinieren und für komplexe Aufgaben sind sie noch nicht wirklich zuverlässig. Es gibt derzeit viel Hype um autonome Agenten und sogar Tools zur Softwaregenerierung, aber man sollte bedenken, dass dies nur die erste Iteration ist. Von nun an werden wir also definitiv Verbesserungen sehen und hoffentlich ist dies das Schlimmste, was es je geben wird. In diesem Sinne schauen wir uns nun diesen Blogbeitrag an. Als Devon ursprünglich veröffentlicht wurde, konnte es etwa 14 Prozent der realen GitHub Probleme von Anfang bis Ende auf Sweet Benchmark lösen und war fast dreimal besser als das vorherige System. Das war also eine ziemlich bedeutende Verbesserung. Im Blogbeitrag heißt es, dass Twitter zwar voller Begeisterung war, wir aber nicht viele detaillierte Berichte von Leuten finden konnten, die es tatsächlich benutzten. Also beschlossen sie, es auf Herz und Nieren zu testen, und zwar anhand einer Vielzahl von realen Aufgaben. Dies ist unsere Geschichte, ein gründlicher Versuch, mit einem der am meisten gehypten Produkte des Jahres 2024 zu arbeiten. Was genau ist Devon? Es ist eine autonome Softwarelösung und der größte Unterscheidungsfaktor dieser Lösung im Vergleich zu anderen ist, dass sie über eine eigene Infrastruktur verfügt. Devon hat also seine eigene Computerumgebung. Im Grunde genommen kommuniziert man mit Devon über Snack und danach startet es seine komplette Computerumgebung. Es verfügt über einen Browser Code Editor und ein Shell Script. Damit kann es verschiedene Abhängigkeiten installieren, die Dokumentation lesen und sogar eine Vorschau der von ihm erstellten Webanwendungen anzeigen. Die Funktionalität ist also der Artefakt Funktion in Clock sehr ähnlich. So sieht die Oberfläche aus. Im Grunde genommen interagiert man mit diesem autonomen System über Stack und hier ist eine Vorschau, wie devons funktioniert. Es sieht so aus, als hätten Sie Devon einen Monat lang mit einer Reihe verschiedener Aufgaben getestet, die sie jedoch in drei verschiedene Kategorien eingeteilt haben. Die erste Kategorie war das Erstellen neuer Projekte von Grund auf. Die zweite Kategorie war das Durchführen von Rechercheaufgaben und die dritte Kategorie war das Analysieren und Ändern bestehender Projekte. Das sind die Arten von Aufgaben, die man von einem Softwareentwickler erwarten würde. Aber die Ergebnisse waren überraschend schlecht. Von den 20 zugewiesenen Aufgaben schlugen 14 fehl, drei waren erfolgreich und man konnte keine eindeutigen Ergebnisse erzielen. Die Erfolgsquote liegt also nur bei etwa 15 Prozent. Später im Blogbeitrag werden Einzelheiten zu allen Aufgaben bereitgestellt. Wir werden uns einige davon ansehen. Wenn Sie sich diese ansehen, können einige davon ganz einfach mit anderen Programmierassistenten wie Cursor erledigt werden, indem man Menschen in die Schleife einbezieht oder sogar mit etwas wie Chat GPT oder Thought Direct. Wir werden in der Lage sein, einige dieser Aufgaben ziemlich einfach zu lösen. Ich denke, das Besorgniserregendste daran ist, dass wir keine Muster erkennen konnten, um vorherzusagen, welche Aufgabe funktionieren würde. Aufgaben, die unseren frühen Erfolgen ähnelten, schlugen auf unerwartete Weise fehlt. Ich denke, das ist ein größeres Problem, denn wenn man kein Muster oder keine Kategorien von Aufgaben findet, für die ein System geeignet sein könnte, dann ist es ein sehr unvorhersehbares System und diese Unvorhersehbarkeit wird dann die Nutzung eines autonomen Systems wirklich behindern. Nun hatten Sie mit einigen ihrer frühen Aufgaben erste Erfolge. Die erste bestand beispielsweise darin, Daten aus der Notion Datenbank in Google Sheets zu ziehen. Devon konnte dies mit überraschender Kompetenz tun. Das System konnte die Notion API-Dokumentation völlig anonym durchsuchen. Und den Entwickler dann durch die Einrichtung der erforderlichen Anmeldedaten in der Google Cloud Konsole führen. Dies war also der Teil, in dem menschliches Eingreifen erforderlich war. Dieser gesamte Prozess dauerte etwa eine Stunde, aber nur wenige Minuten menschlicher Interaktion, da die Google Cloud Anmeldedaten benötigt wurden. Am Ende teilte Devon einen Link zu einem perfekt formatierten Google Sheet mit den angeforderten Daten. Sie schrieben, dies sei ein Blick in die Zukunft, eine Key, die die Klebecode Aufgabe übernehmen könnte, die so viel Entwicklerzeit in Anspruch nimmt. Richtig, Es scheint, als hätten sie einen wirklich guten Start hingelegt. Es gab eine weitere Aufgabe, bei der sie die KI baten, einen Planetenteraker zu erstellen, um Behauptungen über die historische Position von Jupiter und Saturn zu entlaren. Anscheinend war sie dazu in der Lage, und das Beste daran war, dass der Entwickler den gesamten Prozess per Telefon leitete, da die Benutzeroberfläche nur ein Slackboat ist. Als sie nun begannen, ihren Test zu skalieren, ging alles den Bach runter. Aufgaben, die einfach erschienen, dauerten oft Tage statt Stunden, weil Devon in technischen Sackgassen stecken blieb oder schlecht durchdachte, komplexe und unbrauchbare Lösungen produzierte. Das ist ein bekanntes Problem bei vollständig autonomen Agentensystemen, denn sie probieren verschiedene Lösungen aus, und wenn etwas nicht funktioniert, entwickeln sie immer mehr Varianten und manchmal halluzinieren sie einfach. Hier ist ein Beispiel für eine Halluzination. Als Deon gebeten wurde, mehrere Anwendungen in einer einzigen Eisenbahninfrastruktur bereitzustellen, etwas, das die Eisenbahninfrastruktur nicht unterstützt, verbrachte er einen Tag damit, verschiedene Ansätze auszuprobieren und sich Funktionen vorzustellen, die es nicht gab, anstatt diese Einschränkung zu identifizieren. Und dann betonen sie, dass der frustrierendste Aspekt nicht das Scheitern selbst war, da alle Tools Einschränkungen haben, und ich denke, das wissen wir inzwischen, sondern vielmehr, wie viel Zeit sie damit verbringen mussten, diese Versuche zu retten. Nun werden Sie jede dieser drei Kategorien viel detaillierter erörtern und einige konkrete Beispiele haben, die es wert sind, durchgelesen zu werden. Aber ich möchte die Überlegungen der Teammitglieder durchlesen, die dieses System tatsächlich getestet haben. Hier ist also die erste Aufgabe, die es erledigen kann, solche, die so klein und klar definiert sind, dass ich sie genauso gut selbst schneller erledigen könnte. Viel zu große Aufgaben, bei denen ich möglicherweise Zeit sparen könnte. Ich denke, es wird wahrscheinlich scheitern, also keine wirkliche Nische, in der ich es verwenden möchte. Denken Sie daran, dass wir von erfahrenen Softwareentwicklern sprechen. Daher werden die meisten dieser Tools Ihnen beim Erstellen kleiner Anwendungen helfen. Aber wenn Sie an komplexen Systemen arbeiten, werden die Mängel sichtbar. Hier ist nun eine weitere Funktion. Anfangs war ich begeistert, wie nah es war, denn ich hatte das Gefühl, dass ich noch ein paar Kleinigkeiten optimieren konnte. Dann wurde ich aber langsam frustriert, weil ich immer mehr ändern musste, um an den Punkt zu gelangen, an dem ich besser bei Null angefangen und Schritt für Schritt vorgegangen wäre. Das kann ich persönlich nachvollziehen. Selbst bei einigen anderen Coding Tools fangen sie zwar ganz gut an, verlieren dann aber auf halbem Weg den Überblick. Und das ist richtig frustrierend. Aber wenn es sich um ein komplett autonomes System handelt, über das man keine Kontrolle hat, dann viel Glück. Und die letzte Überlegung stammt von Hamilton Hussein. Deon hatte also Schwierigkeiten, interne Tools zu verwenden, die für Answer entscheidend sind, was die Verwendung neben anderen Problemen erschwerte. Und das, obwohl ich Devon eine Fülle von Dokumentationen und Beispielen zur Verfügung gestellt habe. Bei Tools wie Cursor habe ich das nicht als Problem festgestellt. Dort gibt es mehr Möglichkeiten, Dinge schrittweise in die richtige Richtung zu lenken. Und ich denke, das ist im Moment der richtige Weg, Softwareentwicklung zu betreiben. Man möchte einen Mitarbeiter involviert haben, der diese Softwareentwickler korrigieren kann, wenn es Fehler gibt. Komplette Systeme sind noch nicht so weit und werden sich mit der Zeit definitiv verbessern. Aber im Moment ist es entscheidend, den Mitarbeiter involviert zu haben und da stimme ich voll und ganz zu. Im Gegensatz zu Devon haben wir Workflows gefunden, bei denen Entwickler eher mit dem Cursor fahren und die meisten Probleme vermeiden, mit denen wir bei Devon konfrontiert waren. Was genau waren diese Aufgaben? Wir haben über Planet Tracker gesprochen und hier ist die Beschreibung. Ich wollte einige Behauptungen über die historische Position von Jupiter und Saturn entlarven und Devon hat diese Aufgabe mit Bravour gemeistert. Die zweite Aufgabe, die wir uns angesehen haben, war die Migration von Daten aus Notion in Google Sheet. Das war auch ein Erfolg, aber danach gab es noch andere Aufgaben, wie die Multi App Bereitstellung von Railway. Das war nicht schlüssig, weil die Funktion in Railway eigentlich nicht vorhanden ist oder nicht unterstützt wird. Dann synthetische Daten generieren und in Trust hochladen. Die Aufgabe bestand also darin, Devon zu bitten, synthetische Daten für eine LLM Observability Plattform namens Braintrusk zu. Erstellen, die der Nutzer testen wollte. Devon schrieb also übermäßig komplexen Code, der schwer zu verstehen war, und blieb beim Versuch, die Fehler zu beheben, stecken. Am Ende verwendeten wir den Cursor, um dies Schritt für Schritt iterativ durchzuführen. Weitere Fehler sind die Erstellung einer Integration zwischen zwei Anwendungen oder das Web Scraping von Dokumenten über das Folgen von Google Scholar Links. Dies sollte eigentlich recht einfach möglich sein, aber es schlug trotzdem fehl, weil Devon beim Versuch, HTML zu parsen, in ein Hindernis geriet, aus dem er scheinbar nicht mehr herauskam, hängen blieb und in den Ruhezustand wechselte. Es gibt noch weitere interessante Fehler, daher werde ich einen Link zu diesem Beitrag einfügen. Ich empfehle dringend, jeden Einzelnen davon durchzugehen. Er zeigt einem wirklich den aktuellen Stand der Technik, wenn es um vollständig autonome Systeme für die Codierung geht. Ihre Schlussfolgerung gefällt mir sehr gut. Abgesehen von der Erörterung Ihrer Experimente ist dies ein Abschnitt, der mich wirklich angesprochen hat. Dies spiegelt also ein Muster wider, das wir bei Key Tools immer wieder beobachten konnten. Die Begeisterung in den sozialen Medien und Unternehmensbewertungen habe nur wenig mit dem Nutzen in der realen Welt zu tun. In diesem Channel stelle ich viele verschiedene Key Tools vor und bin auch persönlich von einigen der Veröffentlichungen begeistert. Ich empfehle jedoch immer, diese Tools selbst auszuprobieren und sicherzustellen, dass sie für die eigene Anwendung geeignet sind. Wir haben festgestellt, dass detaillierte Berichte von Nutzern, die Produkte und Dienstleistungen ausliefern, die zuverlässigsten Signale liefern. Im Moment bleiben wir bei den Tools, mit denen wir den Entwicklungsprozess vorantreiben und gleichzeitig KI Unterstützung bieten können. Bleiben Sie bei den Tools, die für Sie funktionieren. Sie müssen nicht jedem neuen tollen Objekt oder Key Tool hinterherjagen, das veröffentlicht wird. Devon oder autonome Coding Agenten im Allgemeinen befinden sich noch in der Anfangsphase. Mit der Zeit werden sie sich also definitiv verbessern und es scheint, dass das Team hinter Devon diese Rückmeldungen sehr ernst nimmt. Hier ist eine Person aus dem Devon Team, Er hat Hamel Hussein getwittert. Fakt ist, dass viele Teams Anwendungsfälle mit der Zuverlässigkeit gefunden haben, die sie benötigen. Und viele Teams haben es nicht wirklich geschätzt, dass du es ausprobiert und deine Gedanken teilst. Und hier ist der C CEO von Cognition Lab. Also hey Hamill, danke, dass du Devon ausprobiert hast und ich freue mich sehr über dein durchdachtes Feedback. Ich habe Deine Aufschlüsselung der 3 Hauptkategorien von Anwendungsfällen gesehen, die du ausprobiert hast. Das sind die Kategorien und wir möchten in Zukunft bei allen besser werden. Aber Devon konzentriert sich heute in erster Linie auf Beiträge zu den bestehenden Repositories. Daher würden wir uns besonders über deine Gedanken freuen, wie wir uns dort verbessern, verbessern können. Sie scheinen wirklich daran interessiert zu sein, mehr zu lernen und das System zu verbessern. Wie auch immer, ich persönlich fand diesen Blogbeitrag sehr interessant und wertvoll und wollte ihn mit der Community teilen. Den Link zum Blogbeitrag findest du in der Videobeschreibung. Danke fürs Zuschauen und wie immer bis zum nächsten Mal.










