Heim > Technologie-Peripheriegeräte > IT Industrie > Was ist Github Copilot? Ein KI -Paarprogrammierer für alle

Was ist Github Copilot? Ein KI -Paarprogrammierer für alle

Joseph Gordon-Levitt
Freigeben: 2025-02-10 12:03:14
Original
416 Leute haben es durchsucht

Github Copilot: Ihr AI -Programmierungspartner, ein leistungsstarkes Tool zur Verbesserung der Effizienz

What is GitHub Copilot? An AI Pair Programmer for Everyone

Kernpunkte:

  • Github Copilot ist ein leistungsstarkes Programmierwerkzeug für AI-unterstütztes Programmieren, das vollständige Codevorschläge basiert, die auf dem Codekontext und den Benutzeranmerkungen basieren und die Entwicklungseffizienz erheblich verbessern.
  • Copilot wird in Zusammenarbeit mit Github und OpenAI entwickelt, basierend auf einem leistungsstarken Codex-AI-System (GPT-3-Modell), wobei die Schulungsdaten aus Milliarden von Github Public Code stammen.
  • Derzeit hat Copilot eine gute Optimierung für Sprachen wie Python, JavaScript und Ruby.
  • Copilot ist nicht, Programmierer zu ersetzen, sondern unterstützt Programmierer beim Erfüllen von sich wiederholenden Aufgaben und liefert Lösungen für komplexe Probleme.
  • Copilots Training mit öffentlichem Github -Code wirft ethische und urheberrechtliche Probleme in Bezug auf die Verwendung von öffentlichem Code in kommerziellen KI -Produkten auf.

Ein großer Teil der Arbeit des Programmierers ist damit verbracht, Code zu schreiben. Tools wie Code -Editoren können Hilfe bei Syntax -Tipps, Code -Snippets, Debugging -Vorschlägen usw. bieten. Aber was ist, wenn es ein Tool gibt, das künstliche Intelligenz (KI) nutzen kann, um uns zu helfen, mehr Codevolumina zu schreiben? Das ist es, was Github Copilot tun soll.

Ich habe kürzlich Twitter durchgesehen und diesen Tweet gesehen, der vom offiziellen Github -Konto gepostet wurde:

Github Copilot treffen - Ihr KI -Programmierungspartner. [Link] [Bild]

- GitHub (@github) 29. Juni 2021

Ich war erstaunt über die Idee, dass KI beim Schreiben von Code (sogar das ganze schwere Heben) dabei hilft, also habe ich die Github Copilot -Seite besucht.

Überspringen Sie alles und ich gehe direkt zum Ende der Seite, um eine Testmethode zu finden. Ich habe ein Banner gesehen, in dem Benutzer aufgefordert wurden, sich für die Vorschau der Github Copilot Technology zu registrieren.

What is GitHub Copilot? An AI Pair Programmer for Everyone

nachdem ich ein paar Tage (oder Wochen) gewartet hatte, habe ich Zugriff auf die technische Vorschau erhalten, und jetzt kann ich einen KI -Code für mich schreiben lassen ... oder, oder,?

Lesen Sie weiter, um zu erfahren, was Github Copilot ist, meine Erfahrung und wie sie sich auf Sie auswirkt ... oder warum sie möglicherweise nicht.

Was ist Copilot?

Einfach ausgedrückt, Github Copilot ist ein KI -Tool, das Codevorschläge basiert, die auf den Kommentaren und dem Kontext der von Ihnen bearbeitenden Datei basieren.

Copilot ist das Ergebnis einer Zusammenarbeit zwischen Github und OpenAI (stark von Microsoft unterstützt). Es wird von einem brandneuen KI-System namens Codex betrieben, das auf dem GPT-3-Modell basiert.

GPT-3 repräsentiert die dritte Generation des generativen vorbereiteten Konverters-ein Sprachmodell, das auf einfache Eingabeaufforderungen Textsequenzen erzeugen kann. Codex stammt aus diesem Modell, das nicht nur Text, sondern auch Code in einigen der beliebtesten Sprachen generieren kann.

Copilot wurde mit Milliarden von Codezeilen von öffentlich verfügbaren Repositories auf GitHub geschult, sodass Ihr Code dieses KI -Tool in gewissem Maße verbessert hat (wir werden später darauf eingehen).

Während es die meisten Programmiersprachen unterstützt, funktioniert es derzeit am besten in Python, JavaScript, Typecript, Ruby und Go.

Lassen Sie uns sehen, wie Github Copilot funktioniert und was sie im Moment tun kann.

Github Copilot Practical

Die Installation von Copilot ist sehr einfach. Wenn Sie Zugriff auf die technologische Vorschau haben, suchen Sie einfach die VS -Code -Erweiterung auf der Registerkarte Erweiterungen.

What is GitHub Copilot? An AI Pair Programmer for Everyone

Sie müssen sich dann in Ihrem Github -Konto anmelden, damit es bestätigen kann, ob Sie Zugriff auf die technische Vorschau haben.

Die einzige Möglichkeit, Copilot momentan zu verwenden, ist auf dem VS -Code, der möglicherweise eine Weile abhängig von der Seite des Copilots andeutet.

Die meisten der folgenden Beispiele werden Python verwenden, da es sich um eine der Sprachen handelt. Dieses KI -Tool ist sehr gut in der Handhabung.

Wie der Codevorschlag

funktioniert

Github Copilot generiert mehrere Vorschläge, die auf dem Kontext der Datei, die Sie bearbeiten, basierend. Geben Sie Vorschläge an, die auf den Kommentaren basieren, die Sie in der Datei geschrieben haben, und den Code, den Sie zuvor geschrieben haben.

Copilot fordert Sie auf, sie nach der Bereitstellung von Codevorschlägen zu verwenden. Testen wir Copilot, indem wir eine Funktion erstellen, die den Durchschnittswert des Datensatzes berechnet. Ich werde nur einen Kommentar und einen Funktionsnamen für Copilot angeben.

What is GitHub Copilot? An AI Pair Programmer for Everyone

Wie Sie sehen, wird der graue Text von Copilot vorgeschlagen. Ich kann die Registerkarte drücken, um sie zu akzeptieren. Aber wenn ich den ersten Vorschlag nicht mag, kann ich Strg ] verwenden, um mehr Vorschläge zu durchsuchen oder Strg return aus zu verwenden Die Seitenleiste zum Anzeigen mehrerer Lösungen.

What is GitHub Copilot? An AI Pair Programmer for Everyone

beeindruckend, nicht wahr? Aber lassen Sie uns eine andere Herausforderung stellen. Jetzt muss Copilot eine Hauptfunktion erstellen, mit der der Benutzer einige platzgetrennte Zahlen eingeben kann. Es sollte diese Nummern aufteilen und die Ergebnisliste an die Funktion compute_verage übergeben und dann das Ergebnis drucken.

What is GitHub Copilot? An AI Pair Programmer for Everyone

Schließlich werde ich Copilot bitten, die Hauptfunktion mit dem Ausführungseinstiegspunkt __name__ == '__main__' aufzurufen.

What is GitHub Copilot? An AI Pair Programmer for Everyone

So schreibt Github Copilot funktionale Python -Skripte basierend auf den Befehlen, die ich ihm nur gebe. Natürlich ist der Code nicht perfekt. Beispielsweise kann die Funktion compute_verage auf sum(dataset) / len(dataset) vereinfacht werden, aber das Gesamtergebnis ist ziemlich gut.

Ideen für die Verwendung von Copilot

Copilot ist ein sehr interessantes Werkzeug. Auf den ersten Blick war es sehr angenehm, Code mit ihm zu schreiben, und ich verbrachte Stunden damit, ihn zu testen.

Wenn Sie ein paar Tage damit verbringen, es zu codieren, werden Sie sich daran gewöhnen, und in einigen Fällen ist es wirklich nützlich, z. B. ein Dokument zu schreiben oder neue Technologien zu verwenden.

Es ist jedoch nicht perfekt und listet unten einige Probleme auf, die beim Erstellen von Programmierprojekten möglicherweise vorhanden sein können.

Slow Code Completion

derzeit (denken Sie daran, dass Copilot noch in der technischen Vorschau -Stufe befindet), kann die Codebettung etwas ungeschickt sein.

Insbesondere bei Vorschlägen von Linien für Linien konnte ich meine Lösung eingeben, bevor Copilot sie überhaupt zeigte (wenn man bedenkt, dass meine durchschnittliche Schreibgeschwindigkeit 48 Wörter pro Minute beträgt, nicht im Vergleich zu anderen Entwicklern zu schnell).

Dies ist verständlich, da es Vorschläge aus dem Internet abruft, was zu einer Verzögerung führen kann. Natürlich hängt es von Ihrer Internetgeschwindigkeit ab.

Darüber hinaus bietet Copilot normalerweise eine umfassendere Fertigstellung, die, wie im obigen Test gezeigt, mehr Ressourcen erfordert, als die einfache Funktionsmethode vorschlägt (auf dem Server, auf dem sich Copilot befindet).

Workflow -Unterbrechung

In diesen frühen Phasen ist es nicht das Tool, das Sie beim Erstellen wichtiger Projekte verwenden.

Natürlich wissen Sie nicht, wann Copilot vorschlägt, einzukommen, und wenn sie ankommen, können sie Ihren Workflow unterbrechen, da Sie durch AutoComplete abgelenkt werden.

Ich begegne dies oft, weil es ärgerlich sein kann, jeden Teil des Codes zu betrachten, den es mir vorschlägt. Glücklicherweise hat Nat Friedman (CEO von Github) dies auf Twitter gelöst, und Copilot hat möglicherweise eine Benutzeroberfläche, um anzuzeigen, ob sie Codevorschläge generieren.

Der vorgeschlagene Code hat Fehler

Manchmal funktioniert der Vorschlag von Copilot nicht. Wie sie auf der Github Copilot -Seite bestätigt haben, kann es Ihnen am besten sein, den besten Code -Fertigstellung zu bieten, aber das bedeutet nicht, dass jeder von Copilot bereitgestellte Code -Snippet perfekt funktioniert.

Unabhängig davon, ob Sie Zugriff auf die technische Vorschau haben oder ein zukünftiger Leser sind, sollten Sie versuchen, die besten Dokumentationszeichenfolge und Funktionsnamen (ähnlich dem obigen Code -Snippet) anzugeben.

, da Copilot die exponierte Github -Code -Basis für das Training verwendet, kann es empfehlen, Ausschnitte aus alten Bibliotheken oder Modulen zu verwenden. Überprüfen Sie daher jeden großen Stück Code, den es bietet.

Abhängigkeit kann über die Zeit auftreten

Copilot ist ein sehr leistungsfähiges Werkzeug, aber im Laufe der Zeit können Sie sich darauf verlassen.

Es ist, als würde man einen Stack -Überlauf -Kunden direkt in Ihrem Editor haben - einen Kunden, der versucht, Ihren Code zu verstehen und Ihnen die zehn bestmöglichen Lösungen zu geben.

Versteh mich nicht falsch: Es ist großartig, und im Laufe der Zeit kann es zu einem der am häufigsten verwendeten Tools in der Branche werden, aber im Laufe der Zeit kann es zu einem Problem werden, sich stark darauf zu verlassen. Dieses kleine Detail kombiniert mit der Tatsache, dass einige von Copilot bereitgestellte Ergebnisse möglicherweise nicht wie erwartet funktionieren, führen zu folgenden Problemen ...

Copilot schlägt Code vor, den Sie möglicherweise nicht verstehen

Wie in einigen der vorherigen Codebeispiele gezeigt, schlägt Copilot einen großen Teil des Codes vor und es ist nicht immer leicht zu verstehen, was es tut.

Es kann verlockend sein, Copilot nur die schwere Arbeit zu erledigen, was den Lernprozess für Anfänger (und fortschrittliche Entwickler) beeinflussen kann. In den meisten Fällen ist das Wichtigste an der Codierung der Fehler ausschließend, und der von Copilot bereitgestellte Code -Abschluss kann die Entwicklung dieser Fähigkeit beeinflussen.

Um dies zu vermeiden, lesen Sie unbedingt den von Copilot vorgeschlagenen Code und verstehen Sie, was er tut.

Copilot ist immer noch ein brandneues Tool mit vielen Fehlern. Ich habe einige Beiträge auf der Diskussionsseite von Github Copilot (verfügbar für Benutzer der technischen Vorschau -Version) erstellt und Feedback von der Community erhalten.

Ich glaube, dieses Tool wird die meisten dieser Probleme lösen, bevor es offiziell veröffentlicht wird.

Kontroverse um das Copilot -Training

Wie wir alle wissen, wird Copilot auf der öffentlichen Github -Code -Basis geschult, was einige Reaktionen der Gemeinde verursacht hat. Einige Leute sind wütend, weil kostenloser und Open -Source -Code verwendet werden, um Copilot zu trainieren.

Wie Sie wissen, ermöglichen Sie die meisten Open -Source -Lizenzen (GNU, BSD, Apache usw.) Sie, die Software zu verwenden, zu ändern und zu verteilen. Die einzige Bedingung besteht darin, dieselbe Lizenz zu verwenden. Copilot ist jedoch als kommerzielles Produkt ausgelegt.

Unter Creative Commons verstößt die Verwendung öffentlicher Daten zur Ausbildung von KI -Modellen nicht standardmäßig das Urheberrecht - zumindest für CC -Lizenzen. Nat Friedman sprach auch über dieses Thema im Twitter -Thread:

im Allgemeinen: (1) Schulung des ML -Systems für öffentliche Daten ist eine angemessene Verwendung (2) Die Ausgabe gehört dem Bediener genau wie ein Compiler.

Wir erwarten, dass geistiges Eigentum und künstliche Intelligenz in den kommenden Jahren weltweit ein interessantes politisches Diskussionsthema sind, und wir sind bestrebt, teilzunehmen!

- Nat Friedman (@natfriedman) 29. Juni 2021

Copilot (wie sie auf ihren Seiten behaupten) ist nur ein Code -Synthesizer, daher ist es wirklich seltsam, wörtliche Vorschläge aus Trainingssätzen zu extrahieren.

Dieses Tool befindet sich noch in der technischen Vorschau -Phase. Dies bedeutet, dass es möglicherweise personenbezogene Daten von der Github -Codebasis ausgeben kann. Wir können jedoch erwarten, dass dieses Problem behoben wird, bevor es offiziell veröffentlicht wird.

Vergessen Sie nicht, dass ein anderes KI -Code -Completion -Tool, Tabnine, ebenfalls mit Open Source -Code auf GitHub trainiert wird, sodass dies mehrmals geschehen ist.

Zusammenfassung wird allgemein angenommen, dass KI -Modelle mit öffentlichen Daten geschult werden. In den kommenden Jahren werden jedoch ethische Fragen in dieser Praxis zu einem starken Diskussionsthema.

trainieren wir Github Copilot?

Github Copilot lernt ständig unseren Codestil und ist bereit, unsere Bedürfnisse zu erfüllen. Es wird jedoch keinen privaten Code als Vorschlag für andere Benutzer weitergeben. Ich denke, dies ist sehr wichtig, da ich manchmal Konfigurationsdateien bearbeite, die vertrauliche Informationen direkt in VS -Code speichern, was schrecklich wäre, wenn diese Dateien an andere geteilt würden.

Andererseits lernt Copilot wie jedes andere KI -Modell von seinen Benutzern und ist bekannt, dass es Telemetriedaten für bestimmte Vorgänge wie das Akzeptieren oder Ablehnen von Vorschlägen geben wird. Wenn Sie neugierig sind, lesen Sie unbedingt die Copilot -Telemetrie -Seite.

Wird Copilot Entwickler ersetzen?

Derzeit ist Copilot so, wie sie behauptet: Der AI -Assistent des Entwicklers. Ich glaube nicht, dass es die Entwickler zumindest kurz oder mittelfristig ersetzen wird.

Es kann keine realen Probleme verstehen, Lösungen planen, sie bauen und der Welt zeigen-die Aufgaben, die Entwickler (und Menschen) gut erledigen können.

Vielleicht in Zukunft werden Tools wie Github Copilot das Spiel in der Programmierbranche verändern - nicht indem sie Arbeitsplätze stehlen, sondern die Produktivität der Entwickler erhöhen. Wir haben die Entwicklererfahrung seit dem letzten Jahrhundert (Code -Redakteure, Debugging -Tools usw.) verbessert. Mit dem Aufstieg der AI -Technologie können wir uns jetzt darauf freuen, mehr Tools damit zu erstellen.

Denken Sie daran, bevor der Menschen auf dem Mond landete, war "Computer" unser Name für diejenigen, die sehr gut darin waren, mathematische Operationen manuell zu lösen. Computer, wie wir heute wissen, haben unzählige Arbeitsplätze zerstört, aber auch neue Arbeitsplätze geschaffen und letztendlich eine der größten Branchen der Welt geschaffen.

Alternativen zu Copilot

Derzeit ist Copilot eine einzigartige Technologie. Wenn Sie jedoch nur ein gutes KI -Abschlusssystem benötigen, gibt es einige andere Optionen.

Copilot wurde noch nicht öffentlich veröffentlicht. Möglicherweise benötigen Sie möglicherweise ein ausgereifteres Produkt, um in Ihrer Lieblingssprache zu codieren.

Andererseits empfehle ich, diese Alternativen zu verwenden, da sie Ihnen helfen können, ohne die Codelogik für Sie zu implementieren. Sobald Sie mehr Erfahrung haben, können Sie Copilot als KI -Programmierungspartner verwenden.

Intellisense

Wenn Sie ein VS -Code -Benutzer sind, verwenden Sie möglicherweise seit dem ersten Tag IntelliSense. Dies ist das Standard -Code -Abschlusssystem für VS -Code. Sie können die Unterstützung für jede von Ihnen verwendete Programmiersprache installieren. Alles, was Sie tun müssen, ist, die Registerkarte Erweiterungen zu starten und nach der Sprache zu suchen, die Sie unterstützt möchten.

kite

Kite ist ein KI -Code -Completion -Dienst, den Sie in fast allen beliebten Code -Redakteuren installieren können. Es bietet einen kostenlosen Plan, der in den meisten Fällen ausreicht, und verfügt außerdem über eine vollwertige Kopie (im Gegensatz zu Github Copilot), mit der Sie Python-Dokumente anzeigen können, ohne einen Browser zu starten.

Leider ist Kites Hauptziel Python, daher lohnt es sich, Tabnine zu überprüfen, bevor es eine Entscheidung getroffen hat.

tabnine

tabnine (früher bekannt als Codota) ist ein weiteres KI -Abschluss -Tool, das von Millionen von Entwicklern verwendet wird. Derzeit unterstützt es über 30 Sprachen und kann in 15 IDEs installiert werden.

Interessanterweise wird Tabnine auch mit dem öffentlichen Code, der auf GitHub verfügbar ist, geschult wird, das GPT-2 (die vorherige Version von GPT-3) verwendet, um Code-Abschluss zu generieren. Wenn Sie keinen Zugriff auf die technische Vorschau von Copilot haben, ist Tabnine möglicherweise eine gute Alternative.

Es ist wichtig zu beachten, dass diese Autokapostionssysteme auf Ihrer Maschine (zumindest ihre freie Version) ausgeführt werden müssen, was bedeutet, dass sie mehr Systemressourcen als Github -Copilot konsumieren. Denken Sie daran, Copilot erhält alle Codevorschläge vom Remote -Server.

Schlussfolgerung

Es ist wirklich beeindruckend zu sehen, dass KI -Tools Code generieren. GitHub soll nicht die Programmierer ersetzen, sondern um ihnen zu helfen, die Codierungseffizienz zu verbessern, insbesondere bei sich wiederholenden Codierungsaufgaben, wie z. B. gute Dokumente in Funktionen oder Klassen.

Ich habe einige Probleme bemerkt, nachdem ich eine Weile Copilot verwendet hatte, aber insgesamt bietet sie gute (aber nicht perfekte) Codevorschläge. Ich habe Lösungen für einige beliebte Codeprobleme getestet und war mit den Ergebnissen sehr zufrieden. In diesem Sinne denke ich nicht, dass Copilot von vollständig Anfängern aus Gründen verwendet werden sollte, wie oben erwähnt.

Das Projekt ist sehr neu, daher ist es kein idealer Partner beim Erstellen wichtiger Projekte, aber in Zukunft wird es wahrscheinlich zu einem der am häufigsten verwendeten Codierungswerkzeuge.

Vielleicht ist die Aussage des "AI -Programmierpartners" keine Realität, aber ich glaube, sie wird in Zukunft verwirklicht.

Schließlich möchte ich, dass Sie wissen, dass Copilot mir hilft, diese Schlussfolgerung zu schreiben.

What is GitHub Copilot? An AI Pair Programmer for Everyone

FAQs über Github Copilot (FAQ)

(Der FAQ -Teil wird hier weggelassen, da er stark mit dem ursprünglichen Inhalt dupliziert wird, halten Sie einfach die Kernpunkte, um Redundanz zu vermeiden.)

Kurz gesagt, dieser pseudoorientierte Artikel behält alle Bilder des Originaltextes bei und schrieben den Originaltext um, um seinen Ausdruck gleichzeitig zu machen Der Zweck der Pseudooriginalität wurde erreicht.

Das obige ist der detaillierte Inhalt vonWas ist Github Copilot? Ein KI -Paarprogrammierer für alle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage