AI Personal Learning
und praktische Anleitung
Sitzsack Marscode

Vergleich der Cursor-Plattformmodelle: DeepSeek V3/R1 und Claude 3.5 Sonnet Tests

DeepSeek Aktueller Modelltest: V3 vs. Claude 3.5 Sonnet, wer ist besser?

DeepSeek hat vor kurzem eine Ankündigung gemacht in Cursor Die Plattform hat ihre beiden neuen Modelle DeepSeek V3 und R1 auf den Markt gebracht. Derzeit verwenden viele Entwickler (einschließlich uns) Claude 3.5 Sonnet (neueste Version claude-3-5-sonnet-20241022) als Hauptsprachmodell. Um zu sehen, wie die neuen Modelle in der Praxis abschneiden, haben wir beschlossen, einen echten Vergleichstest zwischen diesen beiden DeepSeek-Modellen und Claude 3.5 Sonnet durchzuführen.


 

Einführung in das DeepSeek-Modell

DeepSeek hat in letzter Zeit viel Aufmerksamkeit auf sich gezogen, weil es sein leistungsstarkes R1-Modell offengelegt hat, von dem behauptet wird, dass es in Bezug auf die Leistung mit dem o1-Modell von OpenAI vergleichbar ist, was keine leichte Aufgabe ist. Die Cursor-Plattform hat schon immer schnell gehandelt, und sobald das DeepSeek-Modell online ging, konnten es die Leute kaum erwarten, es in realen Anwendungen zu testen.

Leistungsvergleich Referenz
Die offizielle Veröffentlichung von DeepSeek DeepSeek R1 und V3 Leistungsdaten gegen die Modelle o1 und o1-mini von OpenAI.

Überblick über die Prüfaufgaben

Dieser Vergleichstest besteht aus zwei Hauptteilen:

  • Chat-Modus -- Simuliert alltägliche Entwicklungsszenarien und erforscht, wie man einer Dialogbox-Komponente in einer Next.js-Anwendung serverseitige Aktionen hinzufügt.
  • Code-Erzeugungsmodus -- Änderung einer CircleCI-Konfigurationsdatei zur Simulation eines Code-Wartungsszenarios mit dem Ziel, nicht mehr benötigte Front-End Deployment-bezogene Konfigurations- und E2E (End-to-End) Testschritte zu entfernen.

Es ist wichtig zu beachten, dass der "Agentenmodus" der Cursor-Plattform, der sich im Allgemeinen auf einen Modus bezieht, in dem ein Modell selbständig Operationen durchführen und Werkzeuge aufrufen kann, derzeit nur für die Cursor-Plattform verfügbar ist. Anthropisch Modell und GPT-4o sind offen, daher betrifft dieser Test nicht das Proxy-Modell.

 

Chat-Modus-Vergleich

Leitbild

Die Frage, die wir gestellt haben, war, wie man einer Dialogbox-Komponente in einer Next.js-Anwendung serverseitige Aktionen hinzufügen kann. Die spezifische Frage lautete:

"Bitte erklären Sie mir, wie man eine serverseitige Operation implementiert und sie korrekt an diese Dialogfeldkomponente übergibt?"

Um einen spezifischeren Kontext zu schaffen, haben wir auch die Datei mit dem Code für die Dialogfeldkomponente beigefügt.

Leistung von DeepSeek R1

Der DeepSeek R1 war aufgrund seiner Bekanntheit natürlich unsere erste Wahl für den Test. Bei der Verwendung des R1 entdeckten wir jedoch schnell zwei ziemlich offensichtliche Probleme:

  • Ausgabe-Streaming ist langsam
    R1 ist langsam bei der Erstellung von Antworten und muss länger warten, um das vollständige Ergebnis zu sehen.
  • Die Antwort beginnt mit einem klaren Block
    R1 gibt vor der formalen Beantwortung einen großen Teil des mit Tags versehenen Inhalts aus, ähnlich wie bei der Präsentation eines Gedankengangs. Dieser Vorverarbeitungsschritt ist zwar akzeptabel, wenn er die Qualität der endgültigen Antwort deutlich verbessert. Das Problem ist jedoch, dass er, wenn er mit einer langsamen Streaming-Ausgabe überlagert wird, die Präsentation der tatsächlich gültigen Informationen erheblich verzögert. Wenn das Modell zum Beispiel einen großen Teil des Inhalts ausgibt, bevor die eigentliche Antwort langsam gestreamt wird, wird die gesamte Wartezeit sehr lang. Theoretisch wäre es möglich, die Cursor-Regel so einzustellen, dass Abschnitte übersprungen werden, aber das lag außerhalb des Rahmens dieses Tests zum Standardzustand.

Darüber hinaus wird in der Antwort von R1 vorgeschlagen, die Bibliothek next-safe-action/hooks zu installieren, um das Problem zu lösen, aber es wird nicht weiter erläutert, wie diese Bibliothek für serverseitige Operationen in einer nachfolgenden Antwort verwendet werden kann. Bei einem relativ einfachen Problem wie dem von uns gestellten scheint es etwas "trivial" zu sein, einfach die Installation einer zusätzlichen Bibliothek vorzuschlagen.

Leistung von DeepSeek V3

DeepSeek V3 schneidet auch recht gut ab, es empfiehlt sogar die Verwendung des Reagieren Sie 19 der neuen Funktion useFormStatus. Dies deutet darauf hin, dass das V3-Modell von neueren Frontend-Technologien und Codebasen lernt. Allerdings hat V3 einen kritischen Fehler in seiner Code-Implementierung: Es ruft serverseitige Operationen direkt von clientseitigen Komponenten auf. In Next.js ist dies nicht machbar. (Nebenbei bemerkt: Next.js erfordert, dass serverseitiger Code aus Sicherheits-, Leistungs- und Codeorganisationsgründen in einer serverseitigen Umgebung ausgeführt wird, und Code in clientseitigen Komponenten läuft standardmäßig im Browser. Der direkte Aufruf von serverseitigem Code in clientseitigen Komponenten kann zu Fehlern führen, wie z.B. dass serverseitige Module nicht gefunden werden, Netzwerkanfragen fehlschlagen usw.). So führt beispielsweise der direkte Aufruf einer serverseitigen Funktion in clientseitigem JavaScript-Code zu einem Laufzeitfehler oder der serverseitige Code wird überhaupt nicht ausgeführt.

Ähnlich wie beim R1 ist die Streaming-Geschwindigkeit des V3 langsamer. Da die V3 aber nicht die langen Blöcke der R1 hat, ist das Gesamterlebnis etwas besser als bei der R1.

Aufführung von Claude 3.5 Sonnet

Im Vergleich dazu ist Claude 3.5 Sonnet die schnellste Lösung, selbst im "langsamen Anfragemodus" (z. B. wenn die Anzahl der API-Anfragen pro Monat die kostenlose Quote übersteigt und eine bezahlte Anfrage eingegeben wird, kann es zu einer Begrenzung der Anfragegeschwindigkeit kommen). Sonnet empfiehlt zwar nicht das neueste React-Feature (useFormStatus), wie es V3 tat, und macht einen ähnlichen Fehler wie V3, indem es serverseitige Operationen direkt von clientseitigen Komponenten aus aufruft, bietet aber eine Lösung, die der tatsächlich verfügbaren Antwort näher kommt. Sonnet schlägt vor, dass das Hinzufügen der Direktive "use server" zur serverseitigen Operationsfunktion Sonnet schlägt vor, dass das Hinzufügen der "use server"-Direktive zu den serverseitigen Aktionsfunktionen die Anforderungen von Next.js erfüllen würde.(Wissensergänzung: "Server verwenden") ist eine wichtige Direktive, die in Next.js Version 13 und später eingeführt wurde, um eine Funktion explizit als serverseitige Operation zu deklarieren. Das Hinzufügen der Server verwenden'. Dann kann Next.js die Funktion korrekt als serverseitigen Code erkennen und es clientseitigen Komponenten ermöglichen, sie sicher aufzurufen.) In der Tat ist es so einfach wie das Hinzufügen von Server verwenden'. Fürs Protokoll: Sonnets Lösung löst das Problem im Wesentlichen und ist praktischer als die Lösung des DeepSeek-Modells.

 

Vergleich der Codegenerierungsmodi

Leitbild

In dieser Testsitzung stellen wir ein CircleCI-Profil für die Bereitstellung einer Full-Stack-Anwendung bereit. Diese Anwendung enthält ein reines React-Front-End und ein Node.js-Back-End. Der ursprüngliche Bereitstellungsprozess umfasst mehrere Schritte. Unser Ziel ist es, diese Konfigurationsdatei so zu ändern, dass sie beide der folgenden Schritte ausführt:

  • Entfernen Sie alle Konfigurationen im Zusammenhang mit der Front-End-Bereitstellung
  • Da es sich bei der Anwendung nur um ein Back-End handelt, sind E2E-Tests (End-to-End-Tests, die normalerweise zum Testen des gesamten Benutzerflusses verwendet werden) nicht mehr erforderlich, und die entsprechenden Konfigurationsschritte werden entfernt. (Zusätzliches Wissen: E2E-Tests werden hauptsächlich verwendet, um das Benutzerverhalten zu simulieren und den kompletten Fluss der Front-End- und Back-End-Interaktionen zu überprüfen. Wenn die Anwendung nur ein Back-End und keine Benutzeroberfläche hat, sind E2E-Tests sinnlos. Zu den häufig verwendeten E2E-Test-Frameworks gehören Cypress, Selenium usw.)

In der Eingabeaufforderung wird ausdrücklich darauf hingewiesen, dass "alle Abschnitte, die sich auf die Front-End-Bereitstellung beziehen, zu entfernen sind" und die vollständige CircleCI-Konfigurationsdatei dem Modell als Kontext zur Verfügung zu stellen ist.

Leistung von DeepSeek R1

Wir erwarteten, dass das R1-Modell mit Blöcken bei Aufgaben, die ein Verständnis des Kontexts und mehrere Änderungen erfordern (Composer-Aufgaben), besser abschneiden würde. Dies war jedoch nicht der Fall:

  • R1 lässt einige Konfigurationen aus, die eindeutig mit dem Front-End-Einsatz verbunden sind (z. B. bleibt der Teil der Konfigurationsdatei, der sich auf die Erstellung von Webapp-Referenzen bezieht, erhalten). Aber zu seiner Ehrenrettung sei gesagt, dass es die deploy-netlify (der Schritt der Bereitstellung auf der Netlify-Plattform, die üblicherweise als Front-End-Hosting-Plattform für statische Ressourcen verwendet wird) Dieser Schritt ist nicht mehr erforderlich und wurde entfernt.
  • Gleichzeitig entfernt R1 fälschlicherweise den Backend-Bereitstellungsschritt mit der Bezeichnung deploy_production_apiwas dazu führen kann, dass die Backend-Dienste nicht ordnungsgemäß bereitgestellt werden. Außerdem ist R1 nicht nachweisbar Der E2E-Test ist nicht mehr relevant und die zugehörige Konfiguration bleibt erhalten.

Leistung von DeepSeek V3

DeepSeek V3 schneidet bei Aufgaben zur Codeänderung etwas besser ab als R1. Es behebt einige Front-End Deployment-Konfigurationen, die R1 übersehen hat, aber es zeigt auch neue Probleme auf - zum Beispiel behält V3 immer noch den Schritt deploy-netlify bei, was darauf hindeutet, dass es die Anforderungen der Aufgabe nicht vollständig versteht. Lobenswert ist, dass V3 den Schritt der Backend-Bereitstellung beibehalten hat und die Backend-Bereitstellungskonfiguration nicht versehentlich gelöscht hat, wie es in R1 der Fall war. Wie R1 hat V3 jedoch auch nicht erkannt, dass der E2E-Testabschnitt gelöscht werden kann.

Aufführung von Claude 3.5 Sonnet

Das ehrwürdige Claude 3.5 Sonnet schnitt bei dieser Aufgabe der Codeänderung am besten ab:

  • Sonnet hat die meisten Befehle im Zusammenhang mit der Front-End-Bereitstellung erfolgreich entferntObwohl es, wie das V3, auch Der Schritt deploy-netlify konnte nicht entfernt werden.
  • In Bezug auf die Back-End-Bereitstellungsschritte hat Sonnet auch die Integrität derNein, es gab keine versehentliche Löschung.
  • Entscheidend ist, dass Sonnet genau erkannte, dass E2E-Tests nicht mehr notwendig waren, da nur noch Back-End-Dienste übrig bliebenInfolgedessen hat Sonnet alle E2E-Test-bezogenen Konfigurationen entfernt, einschließlich des Cypress Binary Cache, der zur Beschleunigung von Cypress-Tests verwendet wird. Infolgedessen hat Sonnet alle E2E-Test-bezogenen Konfigurationen entfernt, einschließlich des Cypress Binary Cache (der Cache, der zur Beschleunigung der Cypress-Tests verwendet wird).(Zusätzliches Wissen: Der Cypress Binary Cache wird verwendet, um die für die Ausführung der Cypress-Tests erforderlichen Binärdateien zwischenzuspeichern, was den Start der nachfolgenden Tests beschleunigen kann. Wenn jedoch der E2E-Test entfernt wird, sollte auch diese Cache-Konfiguration entfernt werden, um redundante Konfigurationen zu vermeiden). Dies war die beste Lösung in diesem Test, was das tiefe Verständnis von Sonnet für die Intention der Aufgabe und seine Fähigkeit, umfassendere Codeänderungen vorzunehmen, unter Beweis stellt.

 

Zusammenfassungen

Die Cursor-Plattform führt ständig neue KI-Modelle ein, die den Entwicklern immer neue Optionen und Möglichkeiten bieten. Obwohl die Aufgabe dieses Vergleichstests relativ einfach war, reichte sie aus, um zunächst die Fähigkeiten der beiden DeepSeek-Modelle in einem realen Entwicklungsszenario zu demonstrieren. Im Vergleich zu Claude 3.5 Sonnet haben die Modelle von DeepSeek ihre eigenen Stärken und Schwächen.

Alles in allem liegt Claude 3.5 Sonnet in diesem Test in Bezug auf die Reaktionsgeschwindigkeit und die Ausgabequalität deutlich vor den beiden Modellen von DeepSeek. Auch wenn die Reaktionsgeschwindigkeit des DeepSeek-Modells in zukünftigen Versionen aufgrund von Serveroptimierung, Netzwerkverteilung und anderen Faktoren verbessert werden kann, liegt Claude 3.5 Sonnet in Bezug auf Praktikabilität und Zuverlässigkeit nach den bisherigen Testergebnissen immer noch in der Spitzengruppe.

Alles in allem zeigt dieser Test, dass Claude 3.5 Sonnet heute immer noch die ausgereiftere und zuverlässigere Wahl auf der Cursor-Plattform ist. Das neue Modell von DeepSeek zeigt jedoch auch ein gewisses Potenzial und verdient die weitere Aufmerksamkeit und das Experimentieren der Entwickler. Wenn das Modell weiter überarbeitet und verbessert wird, könnte es in Zukunft noch besser abschneiden.

CDN
Darf nicht ohne Genehmigung vervielfältigt werden:Chef-KI-Austauschkreis " Vergleich der Cursor-Plattformmodelle: DeepSeek V3/R1 und Claude 3.5 Sonnet Tests

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)