AI Personal Learning
und praktische Anleitung

Überlegungen zur Verwendung von Devin nach einem Monat, in dem mehr als 20 Aufgaben mit Devin ausgeführt wurden

Dieser Artikel wurde am 2025-01-20 16:28 aktualisiert, ein Teil des Inhalts ist zeitkritisch, falls er ungültig ist, bitte eine Nachricht hinterlassen!

Im März 2024 trat ein neues KI-Unternehmen mit beeindruckender Unterstützung ins Rampenlicht: eine 21 Millionen Dollar schwere Serie A unter der Leitung von Founders Fund und mit Unterstützung von Branchenführern wie den Collison-Brüdern, Elad Gil und anderen Tech-Größen. Das Team hinter dem Unternehmen? Goldmedaillengewinner der Internationalen Informatik-Olympiade - sie sind die Art von Leuten, die Programmierprobleme lösen können, die die meisten von uns nicht einmal ansatzweise verstehen können. Ihr Produkt, Devin, verspricht ein völlig autonomer Software-Ingenieur zu sein, der sich mit Ihnen wie ein menschlicher Kollege unterhalten kann und in der Lage ist, alles zu tun, vom Erlernen neuer Technologien und dem Debuggen ausgereifter Code-Basen bis hin zur Bereitstellung vollständiger Anwendungen und sogar dem Training von KI-Modellen.

Die ersten Demos waren überzeugend. Die Demonstration der Devin Wie man selbstständig eine Kopfgeldaufgabe auf Upwork erledigt, indem man ein PyTorch-Projekt ohne menschliches Zutun installiert und ausführt. Das Unternehmen behauptet, dass Devin in der Lage war, das 13,86% reale GitHub-Problem im SWE-Bench-Benchmark Ende-zu-Ende zu lösen - etwa dreimal besser als das vorherige System. Das System war zunächst nur einer kleinen Gruppe von Nutzern zugänglich, was zu aufregenden Tweets darüber führte, wie es die Softwareentwicklung revolutionieren würde.


handeln als Antwort.AI Da wir zu einem Team gehören, das häufig KI-Entwicklungstools ausprobiert, hatten wir das Gefühl, dass Devin etwas Besonderes ist. Wenn es nur die Hälfte von dem hält, was es verspricht, könnte es die Art und Weise, wie wir arbeiten, verändern. Aber bei aller Begeisterung auf Twitter konnten wir nicht viele detaillierte Berichte von Leuten finden, die es tatsächlich benutzen. Also haben wir beschlossen, das Programm gründlich zu testen, und zwar anhand einer Reihe von Aufgaben aus der Praxis. Hier ist unsere Geschichte - ein gründlicher, realistischer Versuch, mit einem der am meisten gehypten KI-Produkte des Jahres 2024 zu arbeiten.

 

Was ist Devin?

Was Devin einzigartig macht, ist seine Infrastruktur. Anders als typische KI-Assistenten betreibt und startet Devin seine eigene Rechenumgebung über Slack. Wenn Sie mit Devin sprechen, sprechen Sie mit einer KI, die Zugriff auf eine vollständige Rechenumgebung hat - komplett mit Webbrowser, Code-Editor und Shell - die Abhängigkeiten installieren, Dokumentation lesen und sogar eine Vorschau der von ihr erstellten Webanwendungen anzeigen kann. Hier sehen Sie einen Screenshot einer Möglichkeit, Devin zu starten, um eine Aufgabe auszuführen:

Überlegungen zur Verwendung von Devin nach der Durchführung von mehr als 20 Aufgaben in einem Monat-1

Eine Möglichkeit, Devin über Slack mit einer Aufgabe zu beginnen

 

Dieses Erlebnis soll Ihnen das Gefühl geben, mit einem Kollegen zu plaudern. Sie beschreiben, was Sie wollen, und dann macht sich Devin an die Arbeit. Über Slack können Sie ihm dabei zusehen, wie er Probleme durchdenkt, bei Bedarf Anmeldeinformationen anfordert und Links zu abgeschlossenen Arbeiten teilt. Hinter den Kulissen läuft Devin in einem Docker-Container, der ihm die nötige Isolierung bietet, um sicher zu experimentieren und gleichzeitig Ihr System zu schützen. Devin bietet auch eine Weboberfläche, über die Sie auf seine Umgebung zugreifen und ihm bei der Arbeit in Echtzeit zuschauen können. Unten sehen Sie einen Screenshot der Weboberfläche:

Überlegungen zur Verwendung von Devin nach der Durchführung von mehr als 20 Aufgaben in einem Monat-2

 

Früher Erfolg

Unsere erste Aufgabe war einfach, aber wahr: Wir mussten die Daten aus dem Begriff Die Datenbank wurde in Google Sheets extrahiert. Devin löste dieses Problem mit erstaunlicher Kompetenz. Er navigierte zur Notion-API-Dokumentation, verstand, was er brauchte, und führte mich durch den Prozess der Einrichtung der erforderlichen Anmeldeinformationen in der Google Cloud Console. Anstatt einfach nur API-Befehle auszugeben, führte es mich durch jedes Menü und jeden Schaltflächenklick - das sparte mir Zeit, die ich normalerweise für eine mühsame Dokumentationssuche benötigt hätte. Der gesamte Prozess dauerte etwa eine Stunde (aber nur ein paar Minuten menschlicher Interaktion). Am Ende stellte Devin einen Link zu einem perfekt formatierten Google Sheet mit unseren Daten zur Verfügung.

Der erzeugte Code ist etwas langwierig, aber er funktioniert. Das fühlt sich wie ein Blick in die Zukunft an - eine KI, die die "Glue Code"-Aufgaben übernehmen kann, die so viel Zeit eines Entwicklers in Anspruch nehmen. Johno hatte mit Devin einen ähnlichen Erfolg bei der Erstellung eines Planetentrackers, um Behauptungen über die historische Lage von Jupiter und Saturn zu widerlegen. Besonders beeindruckend ist, dass er dies komplett von seinem Mobiltelefon aus gemacht hat, während Devin die ganze Arbeit des Einrichtens der Umgebung und des Schreibens des Codes übernommen hat.

 

Ausweitung unserer Tests

Aufbauend auf unserem frühen Erfolg nutzten wir Devins asynchrone Fähigkeiten. Wir stellten uns vor, dass Devin während der Besprechungen Dokumentationen schreiben oder Probleme debuggen würde, während wir uns auf die Designarbeit konzentrierten. Doch als wir unsere Tests ausweiteten, zeigten sich Risse. Scheinbar einfache Aufgaben dauerten oft Tage statt Stunden, und Devin stieß auf technische Sackgassen oder produzierte Lösungen, die zu komplex waren, um sie zu verwenden.

Noch besorgniserregender ist Devins Tendenz, auf Aufgaben zu drängen, die praktisch unmöglich sind. Als er gebeten wurde, mehrere Anwendungen in einem einzigen Railway-Deployment einzusetzen (eine Funktion, die von Railway nicht unterstützt wird), verbrachte Devin mehr als einen Tag damit, verschiedene Ansätze auszuprobieren und Funktionen zu erfinden, die nicht existierten.

Am frustrierendsten sind nicht die Fehlschläge selbst - alle Werkzeuge haben ihre Grenzen -, sondern die Zeit, die wir damit verbringen, diese Versuche zu retten.

 

Einsicht in das, was schief gelaufen ist

Auf unserer Reise waren wir verwirrt. Wir sahen, dass Devin in der Lage war, APIs kompetent zu integrieren und funktionale Anwendungen zu erstellen, aber mit scheinbar einfacheren Aufgaben hatte es Probleme. War das einfach nur Pech? Hatten wir es falsch eingesetzt?

Im Laufe eines Monats haben wir unsere Versuche in den folgenden Kategorien systematisch dokumentiert:

  1. Ein neues Projekt von Grund auf erstellen
  2. Umsetzung des Forschungsauftrags
  3. Analyse und Modifizierung bestehender Projekte

Die Ergebnisse waren entmutigend. Von 20 Aufgaben hatten wir 14 Misserfolge, 3 Erfolge (einschließlich unserer ersten 2) und 3 nicht eindeutige Ergebnisse. Noch bezeichnender ist, dass wir kein Muster erkennen konnten, um vorherzusagen, welche Aufgaben erfolgreich sein würden. Aufgaben, die unseren ersten Erfolgen ähnelten, scheiterten auf unerwartete Weise.Nähere Informationen zu diesen Aufgaben finden Sie im folgenden Anhang. Im Folgenden finden Sie eine Zusammenfassung unserer Erfahrungen in jeder Kategorie während des Prozesses:

1. ein neues Projekt von Grund auf erstellen

Diese Kategorie sollte Devins Stärke sein. Schließlich zeigt das Demo-Video des Unternehmens, wie es selbstständig Kopfgeldaufgaben auf Upwork erledigt, und unsere ersten Erfolge deuten darauf hin, dass es brandneue Entwicklungen bewältigen kann. Doch die Realität erwies sich als komplizierter.

Nehmen wir zum Beispiel unseren Versuch, eine Beobachtungsplattform namens Braintrust mit einem Large Language Model (LLM) zu integrieren. Die Aufgabe war klar: synthetische Daten generieren und hochladen. Anstatt eine zielgerichtete und klare Lösung zu liefern, generierte Devin etwas, das man nur als Codesuppe bezeichnen kann - mehrere Abstraktionsebenen, die einfache Operationen unnötig kompliziert machten. Schließlich gaben wir Devins Versuch auf und verwendeten die Cursor Es erwies sich als effizienter, die Integration Schritt für Schritt aufzubauen. Als er gebeten wurde, eine Integration zwischen unserem KI-Notizbuch und Spiral.computer zu erstellen, produzierte Devin etwas, das ein Teammitglied als "Spaghetticode, der schwerer zu lesen war als Code, den ich von Grund auf neu geschrieben hatte" beschrieb. Obwohl er Zugang zur Dokumentation für beide Systeme hatte, schien Devin jeden Aspekt der Integration zu verkomplizieren.

Am aufschlussreichsten ist vielleicht unser Versuch des Web-Crawlings. Wir baten Devin, die Google Scholar-Links zu verfolgen und die 25 neuesten Veröffentlichungen der Autoren zu crawlen - eine einfache Aufgabe für ein Tool wie Playwright. In Anbetracht von Devins Fähigkeit, im Internet zu surfen und Code zu schreiben, hätte dies eigentlich ein Kinderspiel sein müssen. Stattdessen blieb es in einer Endlosschleife stecken, in der es versuchte, HTML zu parsen, und konnte sich selbst nicht aus dem Weg gehen.

2. der Forschungsauftrag

Wenn Devin bei bestimmten Codierungsaufgaben Schwierigkeiten hat, ist es dann wahrscheinlich, dass es bei einem forschungsorientierten Unterfangen besser abschneidet? Die Ergebnisse sind bestenfalls gemischt. Während es grundlegende Dokumentensuchen bewältigen kann (wie wir bei der frühen Notion/Google Sheets-Integration gesehen haben), erwiesen sich komplexere Rechercheaufgaben als schwierig.

Als wir Devin baten, Transkriptionszusammenfassungen mit genauen Zeitstempeln zu untersuchen (eine spezifische technische Herausforderung, mit der wir konfrontiert waren), wiederholte er lediglich oberflächlich relevante technische Informationen, anstatt sich mit dem Kernproblem auseinanderzusetzen. Anstatt potenzielle Lösungen zu erforschen oder die wichtigsten technischen Herausforderungen zu identifizieren, lieferte es allgemeine Codebeispiele, die nicht auf das zugrunde liegende Problem eingingen. Selbst wenn Devin Fortschritte zu machen scheint, sind die Ergebnisse meist nicht das, was sie zu sein scheinen. Als wir zum Beispiel gebeten wurden, ein minimales DaisyUI-Theme zu erstellen, wurde eine Lösung generiert, die zu funktionieren schien. Bei näherer Betrachtung stellten wir jedoch fest, dass das Theme eigentlich gar nichts tat - die Farben, die wir sahen, stammten vom Standard-Theme, nicht von unseren Anpassungen.

3. die Analyse und Änderung des bestehenden Codes

Die vielleicht besorgniserregendsten Fehler unterlaufen Devin bei der Arbeit mit bestehenden Codebasen. Diese Aufgaben erfordern das Verstehen von Zusammenhängen und die Wahrung der Konsistenz mit etablierten Mustern - Fähigkeiten, die zum Kern der Fähigkeiten eines KI-Softwareingenieurs gehören sollten.

Unsere Versuche, Devin dazu zu bringen, nbdev-Projekte zu bearbeiten, waren besonders aufschlussreich. Als wir ihn baten, ein Python-Projekt auf nbdev zu migrieren, war Devin nicht in der Lage, das grundlegende nbdev-Setup zu verstehen, selbst wenn wir ihm eine umfassende Dokumentation zur Verfügung stellten. Noch verwirrender war die Art und Weise, wie es mit Notizbüchern umging - anstatt sie direkt zu bearbeiten, wurden Python-Skripte erstellt, um sie zu ändern, was eine einfache Aufgabe unnötig kompliziert machte. Während es gelegentlich nützliche Kommentare oder Ideen liefert, ist der eigentliche Code, den es erzeugt, durchweg problematisch.

Bei der Sicherheitsüberprüfung traten ähnliche Probleme auf. Als wir Devin baten, ein GitHub-Repository (weniger als 700 Codezeilen) auf Sicherheitsschwachstellen zu prüfen, ging es zu weit: Es wurden viele falsch-positive Meldungen angezeigt und Probleme ausgeblendet, die gar nicht existierten. Diese Art der Analyse wird wahrscheinlich am besten durch einen gezielten Aufruf des Large Language Model (LLM) gehandhabt und nicht durch den anspruchsvolleren Ansatz von Devin.

Dieses Muster setzte sich auch bei den Debugging-Aufgaben fort. Bei der Untersuchung, warum die SSH-Schlüsselweiterleitung im Setup-Skript nicht funktionierte, konzentrierte sich Devin auf das Skript selbst und zog nicht in Betracht, dass das Problem woanders liegen könnte. Dieser "Peek-a-boo"-Effekt führte dazu, dass wir die eigentliche Ursache nicht entdecken konnten. Als ein Teammitglied gebeten wurde, eine Konfliktprüfung zwischen Benutzereingaben und Datenbankwerten hinzuzufügen, verbrachte es Stunden damit, Devins Versuche zu studieren, bevor es aufgab und die Funktion in etwa 90 Minuten selbst schrieb.

 

Reflexionen im Team

Nach einem Monat intensiver Tests kam unser Team zusammen, um unsere Erfahrungen zu sortieren. Diese Zitate bringen unsere Gefühle am besten zum Ausdruck:

Die Aufgaben, die es erledigen kann, sind so klein und klar definiert, dass ich sie besser und schneller auf meine Weise erledige. Ich denke, dass es bei größeren, zeitsparenden Aufgaben, die ich sehen könnte, wahrscheinlich versagen wird. Folglich gibt es keine wirklichen Anwendungsfälle, in denen ich es wirklich einsetzen möchte.- Johno Whitaker

Anfangs war ich sehr aufgeregt, weil es so nah dran war und ich das Gefühl hatte, dass ich die Dinge noch optimieren könnte. Dann wurde ich langsam frustriert, weil ich immer mehr ändern musste und schließlich den Punkt erreichte, an dem es besser war, alles schrittweise von Grund auf neu zu machen.- Isaac Flath

Devin hatte Schwierigkeiten mit den internen Werkzeugen von AnswerAI, was unter anderem die Nutzung erschwerte. Trotz der umfangreichen Dokumentation und der Beispiele, die wir Devin zur Verfügung stellen, ist dies immer noch ein Problem. Ich habe festgestellt, dass dies bei Tools wie Cursor kein Problem ist, da es hier mehr Möglichkeiten gibt, die Dinge schrittweise in die richtige Richtung zu lenken.- Hamel Husain

Im Vergleich zu Devin haben wir festgestellt, dass entwicklergesteuerte Prozesse (wie Cursor) die meisten der Probleme, die wir in Devin hatten, vermieden haben.

ein Urteil fällen

Die Zusammenarbeit mit Devin veranschaulicht die Vision der autonomen KI-Entwicklung. Die Benutzererfahrung ist hervorragend - Chatten über Slack, beobachten, wie es asynchron arbeitet, Umgebungen einrichten und mit Abhängigkeiten umgehen. Wenn es funktioniert, ist es beeindruckend.

Aber genau da liegt das Problem - es funktioniert selten. Von den 20 Aufgaben, die wir versuchten, schlugen 14 fehl, 3 hatten ein ungewisses Ergebnis und nur 3 waren erfolgreich. Noch beunruhigender war, dass wir nicht vorhersagen konnten, welche Aufgaben erfolgreich sein würden. Selbst Aufgaben, die unseren frühen Erfolgen ähnelten, scheiterten auf komplexe und zeitraubende Weise. Was wie eine vielversprechende Autonomie aussah, wurde zu einer Belastung - Devin verbrachte Tage damit, unmögliche Lösungen zu finden, anstatt die zugrunde liegenden Hindernisse zu identifizieren.

Dies spiegelt ein Muster wider, das wir wiederholt bei KI-Tools beobachtet haben. Aufregung in den sozialen Medien und Unternehmensbewertungen haben wenig mit dem tatsächlichen Nutzen zu tun. Die verlässlichsten Signale, die wir gefunden haben, stammen aus detaillierten Berichten von Nutzern, die Produkte und Dienstleistungen liefern. Im Moment bleiben wir bei Tools, die uns die Möglichkeit geben, den Entwicklungsprozess zu steuern und gleichzeitig KI-Unterstützung zu leisten.

 

Anhang: Devins versuchter Einsatz

In der folgenden Tabelle sind die Projekte aufgelistet, die wir Devin übertragen haben, unterteilt nach folgenden Themen: (1) Erstellung neuer Projekte, (2) Forschung, (3) Analyse bestehender Codebasen und (4) Änderung von Codebasen.

1. die Schaffung neuer Projekte

Name des Projekts Stand der Dinge Beschreibungen Neubeurteilung
Planetentracker Erfolge Ich möchte einige der Behauptungen über die historischen Positionen von Jupiter und Saturn entkräften. Devin hat großartige Arbeit geleistet. Ich habe mit Devin über Slack auf meinem Telefon gesprochen und schon war es erledigt.
Daten von Notion zu Google Sheets migrieren Erfolge Ich beauftragte Devin, die Informationen aus dem Notion-Dokument programmatisch in ein Google Sheet zu extrahieren. Dies war das erste Projekt, das ich mit Devin durchgeführt habe, und es war gut gemacht; Devin hat die Notion- und Google-API-Dokumentation selbst gelesen; Devin hat mich auch zur Google Cloud-Konsole geführt und mir Anweisungen zu all den verschiedenen Menüs gegeben, auf die ich klicken musste, was mich ziemlich viel Zeit gekostet hätte! Am Ende bekam ich ein vernünftiges Python-Skript, das die Aufgabe erfüllte. Das war meine erste Interaktion mit Devin, und es hat genau so funktioniert, wie ich es wollte, was für mich eine neue Erfahrung war. Zum jetzigen Zeitpunkt bin ich von Devin sehr begeistert.
Multiapplikationseinsatz in der Eisenbahn nicht schlüssig Ich bat Devin, mehrere Anwendungen in einem einzigen Railway-Deployment bereitzustellen, damit verschiedene Anwendungen zu Testzwecken dieselbe lokale Datenbank nutzen können. Die Aufgabe erwies sich als unzureichend definiert, da es praktisch unmöglich war, dies zu tun, wenn ich sie richtig verstanden hatte. Trotzdem hat Devin es versucht und einige der Inhalte zur Interaktion mit der Eisenbahn verfälscht.
Generieren Sie synthetische Daten und laden Sie sie auf Braintrust hoch. scheitern (z. B. bei Experimenten) Ich bat Devin, synthetische Daten für eine Beobachtungsplattform für große Sprachmodelle (LLM) namens Braintrust zu erstellen, die ich testen wollte. Devin erstellte einen Code, der übermäßig komplex und schwer zu verstehen war und sich bei der Fehlersuche verzettelte. Am Ende haben wir diesen Schritt mit Cursor iteriert.
Integration zwischen zwei Anwendungen schaffen scheitern (z. B. bei Experimenten) Ich habe Devin gebeten, eine Integration zwischen meinem KI-Notizbuch Circleback und Spiral.computer mit Verweisen auf die einzelnen Dokumente zu erstellen. Ich bekam wirklich schlechten Spaghetti-Code, der schwieriger zu lesen war als der Code, den ich von Grund auf zu schreiben versuchte. Also beschloss ich, keine Zeit mehr damit zu verbringen, Devin für diese spezielle Aufgabe zu verwenden.
Web Crawling von Dokumenten durch Verfolgung von Google Scholar-Links scheitern (z. B. bei Experimenten) Ich habe Devin gebeten, mit Playwright programmatisch die letzten 25 Veröffentlichungen von Autoren auf Google Scholar zu durchsuchen und das jeweilige Dokument zu überspringen, wenn es auf eine Paywall trifft. Devin ist beim Versuch, HTML zu analysieren, in einen Kaninchenbau gefallen, aus dem er nicht mehr herauszukommen scheint. Er bleibt stecken und geht in den Ruhezustand über.
Erstellen einer minimalen HTMX-Batch-Upload-Beispielanwendung scheitern (z. B. bei Experimenten) Ich bat Devin, das Bulk-Edit-Beispiel auf der HTMX-Dokumentationsseite zu lesen und dieses sowie den Pseudo-Server-Code zu verwenden, um eine minimale FastHTML-Version des Beispiels für die FastHTML-Galerie zu erstellen. Das Beispiel funktioniert nicht und ist nicht minimal: Devin verwendet Objekte, die es im Request-Objekt nicht gibt, und fügt eine Menge unnötiger Dinge wie Toasts (die ebenfalls nicht funktionieren) und Inline-CSS-Stile hinzu.
Erstellen Sie ein DaisyUI-Thema, das dem FrankenUI-Thema entspricht. scheitern (z. B. bei Experimenten) Ich habe Devin gebeten, DaisyUI- und highlight.js-Themen zu erstellen, damit sie mit dem frankenui-Thema übereinstimmen und nahtlos in der gleichen Anwendung verwendet werden können! Devin hat bereits existierende daisyUI-Themen auf frankenui-Themen abgebildet, aber in vielen Fällen passten sie nicht gut zusammen. Außerdem wurden viele Code-Änderungen vorgenommen, die ich nicht verstehen konnte. Am Ende habe ich keinen der Codes verwendet, weil ich zu verwirrt war, um zu wissen, was ich damit tun sollte.

2) Durchführungsstudien

Name des Projekts Stand der Dinge Beschreibungen Neubeurteilung
Recherchieren, wie man einen Discord-Roboter baut Erfolge Ich bat Devin, einen Discord-Bot mit Python zu entwickeln, der die täglichen Nachrichten zusammenfasst und E-Mails verschickt. Ich sagte ihm auch, er solle Claudette dafür verwenden, wann immer dies möglich sei. Schließlich sagte ich ihm, er solle seine Ergebnisse in einem Notizbuch mit kleinen Codeschnipseln festhalten, die er zum Testen verwenden könne. Devin erstellt Forschungsnotizen in Form von Markdown-Dateien als Zwischenschritt bei der Erstellung eines Notizbuchs, worum ich es nicht gebeten hatte. Es ist jedoch nützlich, einen Schritt-für-Schritt-Plan zu sehen, wie man dies erreichen kann. Der im Notizbuch enthaltene Code ist nicht 100% korrekt, aber als Pseudocode hilft er mir zu verstehen, wie man das Ganze zusammenfügt. In Anbetracht der Tatsache, dass es sich hier eher um ein Forschungsprojekt handelt und ich nur die allgemeine Idee kennenlernen möchte, betrachte ich es als einen Erfolg.
Untersuchung von Transkriptionszusammenfassungen mit genauen Zeitstempeln scheitern (z. B. bei Experimenten) Eines der Probleme, mit denen ich bei der Zusammenfassung von Transkripten konfrontiert bin, ist, dass ich den genauen Zeitstempel mit den Notizen verknüpfen möchte, damit ich ihn für YouTube-Kapitelzusammenfassungen oder Ähnliches verwenden kann. Konkret ist es kein Problem, genaue Zeitstempel aus den Abschriften zu erhalten, aber es ist schwierig, die Zeitstempel mit den Zusammenfassungen zu korrelieren, weil die Zeitstempel oft durcheinander geraten sind. Es handelt sich also um eine Art Forschungsaufgabe der KI-Technik. Devin wiederholt, was für mein Problem relevant ist, aber er leistet keine gute Arbeit bei der Erforschung oder dem Versuch, das Problem zu lösen, das ich zu lösen versuche, und gibt mir nutzlosen Code und Beispiele.
Erstellung eines minimalen DaisyUI Themas als Beispiel scheitern (z. B. bei Experimenten) Ich bat Devin, ein minimales DaisyUI-Thema als Beispiel zu erstellen. Mein Ziel war es, von einem Ausgangspunkt auszugehen, da meine Bitte, dies auf eine vollständigere Weise zu tun, erfolglos war. Devin ignorierte die Aufforderung, eine FastHTML-Anwendung daraus zu machen, und es bedurfte einiger Hin- und Her-Kommunikation, um ihn dazu zu bringen, diesen Weg zu gehen. Letztendlich hat er eine Anwendung erstellt, die mit verschiedenen Schaltflächentypen zu funktionieren schien. Der angegebene Link sah zwar gut aus, aber als ich versuchte, das Thema zu ändern, war klar, dass das Thema nichts bewirkte. Die anderen Farben in der Anwendung stammen aus dem Standardthema. Dies ist kein nützlicher Ausgangspunkt.

3. die Analyse des bestehenden Codes

Name des Projekts Stand der Dinge Beschreibungen Neubeurteilung
Durchführung einer Sicherheitsüberprüfung der Codebasis nicht schlüssig Für diese Aufgabe verwies ich Devin auf ein GitHub-Repository und wies ihn an, es auf Sicherheitsschwachstellen zu untersuchen. Das Repository besteht aus weniger als 700 Codezeilen. Ich habe Devin angewiesen, seine Kommentare in einer Markdown-Datei zu dokumentieren und bei Bedarf Beispielcode bereitzustellen. Devin hat zwar einige Sicherheitslücken aufgedeckt, war aber übereifrig und hat einige Probleme übersehen, die gar nicht existierten. Vielleicht ist dies nicht die ideale Aufgabe für Devin, da dies genauso gut mit einem einzigen Aufruf meines Large Language Model (LLM) funktioniert.
Pull Requests zur Überprüfung von Blogbeiträgen und Verbesserungsvorschlägen scheitern (z. B. bei Experimenten) Ich bat Devin, einen Blogeintrag mit einem Pull-Request für Änderungsvorschläge zu überprüfen. Letztendlich scheiterte Devin daran, dass er nicht herausfinden konnte, wie Quarto, der Generator für statische Websites, den ich verwendete, funktionierte. Ich denke, dass diese Aufgabe in einem Werkzeug wie Cursor erfolgreich sein würde. Es sieht so aus, als ob Devin nicht sehr gut aus der Projektstruktur und der vorhandenen Dokumentation gelernt hat, so dass er Dinge wie die Präambel und andere Konventionen, die für die korrekte Bearbeitung eines Blogbeitrags erforderlich sind, vermasselt hat.
Überprüfung des Antrags und Ermittlung potenzieller Verbesserungsbereiche scheitern (z. B. bei Experimenten) Ich habe Devin gebeten, einen Blick auf die bereits erwähnte Zeitmanagement-App zu werfen und eine offene Aufgabe zu stellen, in der er um Verbesserungsvorschläge gebeten wird. Die darin enthaltenen Ratschläge machen keinen Sinn.
Fehlersuche, warum die Weiterleitung von SSH-Schlüsseln in Setup-Skripten nicht funktioniert nicht schlüssig Ich habe Devin gebeten, herauszufinden, warum die Weiterleitung von SSH-Schlüsseln nicht funktioniert, wenn ich sie mit einem Skript auf dem Server einrichte. Das Problem hatte letztendlich nichts mit dem Skript zu tun, das ich für das Problem hielt, aber Devin hat nie angedeutet oder angedeutet, dass das Problem woanders liegen könnte. Das war nicht hilfreich, weil es mir nicht half, die Ursache herauszufinden.

4. die Änderung von bestehenden Projekten

Name des Projekts Stand der Dinge Beschreibungen Neubeurteilung
Änderungen am nbdev-Projekt vornehmen scheitern (z. B. bei Experimenten) Ich habe eine einfache Anwendung zur Zeiterfassung mit FastHTML und nbdev erstellt, die ich gerne mit Apple Shortcuts über API-Routing integrieren möchte. Trotz der beeindruckenden Fortschritte war Devin nicht in der Lage, in dieser Umgebung erfolgreich zu arbeiten. Eine Merkwürdigkeit, die mir auffiel, war, dass Devin Python-Skripte zur Bearbeitung der Notizbücher erstellte, anstatt zu versuchen, die Notizbücher selbst zu bearbeiten. Devin gab mir hier jedoch einige nützliche Kommentare und Ideen, die ich nicht bedacht hatte. Allerdings machte der Code, den er zu schreiben versuchte, keinen Sinn. Letztendlich habe ich die Vorlage eines anderen Benutzers verwendet und nicht die Vorschläge von Devin.
Python-Projekte nach nbdev migrieren scheitern (z. B. bei Experimenten) Ich habe Devin gebeten, ein Projekt auf nbdev zu migrieren [aus Gründen der Kürze werden keine Details genannt]. Es hat sich verzettelt und konnte die grundlegende nbdev-Einrichtung nicht herausfinden. Es sieht so aus, als hätte es die nbdev-Dokumentation nicht sehr gut gelesen.
Einbindung von Style Packs in FastHTML scheitern (z. B. bei Experimenten) Ich habe Devin gebeten, MonsterUI in eine meiner Anwendungen zu integrieren. Devin konnte nicht herausfinden, wie er mit dem nbdev-Repository umgehen sollte.
Hinzufügen von Funktionen zur Prüfung auf Konflikte zwischen Benutzereingaben und der Datenbank scheitern (z. B. bei Experimenten) Ich bat Devin, der Anwendung eine Funktion hinzuzufügen, die Benutzereingabewerte mit Werten aus einer zuvor ausgeführten Datenbank vergleicht und eine Benutzeroberfläche bereitstellt, wenn sie nicht übereinstimmen. Ich habe Stunden damit verbracht, herauszufinden, wie man es richtig zum Laufen bringt, bevor ich aufgegeben habe. Ich habe die Funktion selbst in etwa 90 Minuten geschrieben.
Generierung von Kontextdateien für große Sprachmodelle (LLMs) unter Verwendung des Inhalts der einzelnen fasthtml-Galeriebeispiele scheitern (z. B. bei Experimenten) Ich habe Devin gebeten, Textdateien mit Large Language Models (LLMs) für die fasthtml-Galerie zu erstellen. Ich war erfreut zu sehen, dass für jedes Beispiel eine eigene Markdown-Datei erstellt wird und dann zunächst versucht wird, sie in der LLMs-Kontextdatei zusammenzufassen. Daran hatte ich nicht gedacht, und anfangs schien alles vorhanden zu sein. Als ich es herunterlud und anfing zu suchen, fiel mir etwas auf, das mir nicht gefiel: Die LLMs waren nicht richtig formatiert. Selbst als ich dem Programm die Informationen über die Verwendung von XML-Tags zur Trennung der Beispiele gab, verwendete es diese nicht. Es fügte eine bestimmte Version des markdown-Pakets als Abhängigkeit hinzu und verwendete diese Version, anstatt das markdown2-Paket zu verwenden, das bereits in Gebrauch und bereits eine Abhängigkeit war. Es macht einen Haufen pytest-Zeug und fügt eine Abhängigkeit hinzu, obwohl das Projekt pytest nicht benutzt.
Darf nicht ohne Genehmigung vervielfältigt werden:Chef-KI-Austauschkreis " Überlegungen zur Verwendung von Devin nach einem Monat, in dem mehr als 20 Aufgaben mit Devin ausgeführt wurden

Chef-KI-Austauschkreis

Der Chief AI Sharing Circle konzentriert sich auf das KI-Lernen und bietet umfassende KI-Lerninhalte, KI-Tools und praktische Anleitungen. Unser Ziel ist es, den Nutzern dabei zu helfen, die KI-Technologie zu beherrschen und gemeinsam das unbegrenzte Potenzial der KI durch hochwertige Inhalte und den Austausch praktischer Erfahrungen zu erkunden. Egal, ob Sie ein KI-Anfänger oder ein erfahrener Experte sind, dies ist der ideale Ort für Sie, um Wissen zu erwerben, Ihre Fähigkeiten zu verbessern und Innovationen zu verwirklichen.

Kontaktieren Sie uns
de_DE_formalDeutsch (Sie)