Der KI-Programmiertool Cursor erfreut sich großer Beliebtheit und steht schnell im Mittelpunkt der Programmier- und KI-Welt. Cursor ist ein auf VS Code basierender Code-Editor, der zahlreiche leistungsstarke Funktionen für die KI-gestützte Programmierung bietet und Entwickler begeistert.
Der bekannte Podcast-Moderator Lex Fridman führte kürzlich ein ausführliches Gespräch mit den vier Gründungsmitgliedern des Cursor-Teams über ihren innovativen Werdegang und ihre Zukunftspläne.
Die Geschichte von Cursor beginnt im Jahr 2020, als OpenAI eine Arbeit über Skalierungsverluste veröffentlichte. Diese Arbeit weckte große Erwartungen an die Zukunft des maschinellen Lernens. Sie postulierte, dass die Leistung von Modellen mit mehr Rechenressourcen und Daten immer besser wird.
Dieser Gedanke ließ das Team über die Möglichkeiten nachdenken: Wie kann KI zukünftig Wissensarbeitern in verschiedenen Bereichen helfen, ihre Effizienz zu steigern? Ende 2022 erhielt das Cursor-Team vorzeitig Zugriff auf GPT-IV, was ihnen zeigte, dass die vorherigen theoretischen Vorhersagen immer mehr Realität wurden. Dieser Moment bestärkte sie in ihrer Vision: Alle Programmieraktivitäten sollen mit Hilfe dieser leistungsstarken Modelle durchgeführt werden.
Ein Highlight von Cursor ist die einzigartige Funktion zur Darstellung von Code-Differenzen. Wenn Sie Code im Editor ändern, werden die Änderungen vom Modell rot und grün hervorgehoben, sodass der Benutzer die hinzugefügten und entfernten Codeteile deutlich erkennen kann.
Bei der Optimierung der automatischen Vervollständigungsfunktion hat Cursor eine schnelle Diff-Schnittstelle entwickelt, damit Entwickler bei Bedarf Code schnell und effizient lesen können. Das Team hat verschiedene Ansätze ausprobiert und schließlich das optimale Design für die Benutzerfreundlichkeit gefunden, sodass die Code-Vorschläge sowohl intuitiv als auch unaufdringlich sind.
Wenn wir von der Leistungsfähigkeit von Cursor sprechen, dürfen wir die zugrunde liegende Technologie des maschinellen Lernens nicht vergessen. Cursor besteht tatsächlich aus mehreren maßgeschneiderten und hochmodernen Modellen, insbesondere die Tab- und Apply-Funktionen sind das Ergebnis sorgfältiger Feinabstimmung.
Obwohl diese Modelle bei der Generierung von Vorschlägen für Codeänderungen hervorragende Leistungen erbringen, treten bei der Bearbeitung großer Dateien in der Praxis immer wieder Fehler auf. Um dieses Problem zu beheben, verwendet Cursor eine Strategie: Zuerst wird ein grober Entwurf der Codeänderungen von einem Modell erstellt, und dann wird ein anderes Modell verwendet, um diese Änderungen auf die tatsächliche Datei anzuwenden. Dies erhöht nicht nur die Effizienz der Codeänderungen, sondern ermöglicht es dem Modell auch, weniger Tokens bei der Codegenerierung zu verwenden, wodurch Verzögerungen und Kosten reduziert werden.
Bei der Frage, wie die Verarbeitungsgeschwindigkeit von Cursor verbessert werden kann, stellte das Team das Konzept des „spekulativen Editierens“ vor. Mit dieser Technik kann das Modell mehrere Tokens gleichzeitig verarbeiten, anstatt sie einzeln zu generieren. Traditionell wurde ein kleines Modell verwendet, um Code vorherzusagen, und ein großes Modell, um ihn zu überprüfen. Das Cursor-Team stellte jedoch fest, dass die direkte Eingabe des ursprünglichen Codeabschnitts in das Modell oft zu schnelleren Ergebnissen führt. Nur wenn der vom Modell generierte Text nicht mit dem ursprünglichen Code übereinstimmt, werden neue Tokens zur Aktualisierung generiert.