Zugang aus Übersee: www.kdjingpai.com
Ctrl + D Lesezeichen für diese Seite

Codex ist eine Software, die auf dem codex-1 Codex ist eine modellzentrierte, cloudbasierte Software-Engineering-Intelligenz, die jetzt in ChatGPT integriert ist. Codex ist kein einfaches Tool zur Codegenerierung, sondern ein Agent, der in der Lage ist, selbstständig komplexe Programmieraufgaben auszuführen. Er läuft in einer separaten, sicheren Cloud-Sandbox-Umgebung und ist in der Lage, die Codebasis des Benutzers vorzuladen. Er übernimmt Aufgaben wie die Entwicklung neuer Funktionen, die Behebung von Fehlern und die Beantwortung von Fragen zur Codebasis auf der Grundlage von Anweisungen in natürlicher Sprache. Während der Ausführung werden nicht nur Dateien gelesen und geschrieben, sondern auch Tests und Code-Formatierungstools ausgeführt und iterativ überprüft, bis die Aufgabe abgeschlossen ist. Nach Abschluss einer Aufgabe überträgt Codex die Codeänderungen und stellt eine überprüfbare Aufzeichnung des Vorgangs, einschließlich Terminalprotokollen und Testausgaben, zur Überprüfung durch den Benutzer bereit.

 

Funktionsliste

  • Durchführung kompletter technischer AufgabenDurchführung spezifischer Software-Engineering-Aufgaben, wie z. B. die Behebung von Fehlern oder die Implementierung neuer Funktionen, in einer separaten Cloud-basierten Umgebung auf der Grundlage von Benutzeranweisungen.
  • Codebase-InteraktionLesen, Bearbeiten und Schreiben von Dateien direkt in einer Sandbox-Umgebung mit einer vorinstallierten Benutzer-Codebasis.
  • Ausführen von TerminalbefehlenSie können Befehle in einer isolierten Umgebung ausführen, wie z. B. die Ausführung von Testwerkzeugen (test runners), Code-Format-Prüfer (linters) und die Typüberprüfung (type checkers).
  • Automatisierte Tests und Behebung von MängelnDie Fähigkeit, eigenständig Tests durchzuführen, um die vorgenommenen Änderungen zu validieren, und wenn der Test fehlschlägt, wird versucht, die Änderungen zu wiederholen, bis der Test erfolgreich ist.
  • Erstellung von Anträgen auf Codeänderung und -überprüfungWenn die Aufgabe abgeschlossen ist, sendet sie git commitDer GitHub Pull Request kann für eine manuelle Überprüfung mit einem Nachweis über den gesamten Vorgang erstellt werden.
  • Projektspezifikationen befolgen: Es ist möglich, die Daten eines Projekts zu lesen AGENTS.md Dokumentation, Erlernen und Befolgen spezifischer Entwicklungsumgebungskonfigurationen, Testanweisungen und Standardbetriebsverfahren des Projekts.
  • Codebase Q&ABenutzer können dem Codex Fragen stellen, um Informationen und Erklärungen über die aktuell geladene Codebasis zu erhalten.
  • Sichere Durchsetzung der AbsonderungAlle Aufgaben werden in einem sicheren Container ausgeführt, der vom externen Netzwerk isoliert ist und die Sicherheit des Anwendercodes gewährleistet.

Hilfe verwenden

Codex wird als leistungsstarke Software-Engineering-Intelligenz eingesetzt, die über die herkömmliche Codegenerierung hinausgeht. Er simuliert einen Software-Ingenieur, der aus der Ferne mit Ihnen zusammenarbeitet, an den Sie Aufgaben delegieren und diese nach Abschluss überprüfen.

Kernnutzungsprozess

  1. Start Codex:
    • existieren ChatGPT in der Seitenleiste und wählen Sie Codex.
    • Folgen Sie den Richtlinien, um Codex mit Ihrer GitHub-Codebasis zu verbinden. codex klont diese Codebasis, um in einer separaten Cloud-Sandbox-Umgebung zu arbeiten.
  2. etw. in Angriff nehmen:
    • Durchführung von ProgrammieraufgabenWenn Sie möchten, dass der Code geändert wird, z. B. um einen Fehler zu beheben oder eine neue Funktion hinzuzufügen, geben Sie einen klaren Befehl ein und klicken Sie auf die Schaltfläche Code Schaltflächen. Ein guter Befehl sollte genügend Kontext enthalten, z.B. "Bitte reparieren Sie die astropy/astropy Eine Frage in der Bibliothek:Modeling (in Form eines Nominalausdrucks) separability_matrix Verschachtelung kann nicht korrekt berechnet werden CompoundModels der Trennbarkeit".
    • Eine Frage zur Codebasis stellenWenn Sie nur einen Aspekt der Codebasis verstehen wollen, können Sie Ihre Frage eingeben und auf die Schaltfläche Ask Schaltfläche. Zum Beispiel: "Bitte erläutern Sie, wo in diesem Projekt die Logik für die Benutzerauthentifizierung zu finden ist?"
  3. Überwachen und warten:
    • Sobald die Aufgabe gestartet ist, arbeitet Codex selbstständig in einer Sandbox-Umgebung im Hintergrund. Je nach Komplexität der Aufgabe kann dieser Prozess zwischen 1 und 30 Minuten dauern.
    • Sie können den Fortschritt der Codex-Ausführung in Echtzeit überwachen, und es wird Ihnen angezeigt, was gerade getan wird, z. B. das Lesen von Dateien, das Ausführen von Befehlen usw.
  4. Ergebnisse der Überprüfung:
    • Sobald die Aufgabe abgeschlossen ist, überträgt Codex die in der Sandbox-Umgebung vorgenommenen Codeänderungen.
    • Es liefert einen detaillierten Bericht mit nachprüfbaren Beweisen für seine Tätigkeit, z. B. Protokolle der ausgeführten Terminalbefehle und Testausgabeergebnisse. Auf diese Weise können Sie jeden Schritt der Aufgabe in seiner Gesamtheit nachvollziehen und die Transparenz und Korrektheit ihrer Ausführung sicherstellen.
    • Sie können den geänderten Code, die Commit-Meldungen und die Testergebnisse sorgfältig prüfen.
  5. Folgeoperation:
    • Ersuchen um Änderungen:: Wenn die Ergebnisse nicht genau Ihren Erwartungen entsprechen, können Sie weiterhin Änderungen beantragen.
    • Erstellen eines ÄnderungsantragsWenn Sie mit dem Ergebnis zufrieden sind, können Sie Codex mit einem einzigen Klick einen GitHub Pull Request erstellen lassen, um Ihrem Team die Überprüfung des Codes zu erleichtern.
    • LokalisierungSie können sich auch dafür entscheiden, die Änderungen direkt in Ihre lokale Entwicklungsumgebung zu integrieren.

ausnutzen AGENTS.md Datei Boot Codex

Um den Codex effizienter und genauer zu gestalten, können Sie eine AGENTS.md Datei. Diese Datei ist vergleichbar mit der Datei README.mdist eine speziell für KI-Intelligenzen geschriebene Bedienungsanleitung.

  • entspricht Englisch -ity, -ism, -izationSie können Codex in einer Datei mitteilen, wie er durch Ihre Codebasis navigieren soll, welche Testanweisungen ausgeführt werden sollen, welche Codierungskonventionen das Projekt befolgt und wie die Standardarbeitsanweisungen aussehen.
  • Beispiel Inhalt:
    # AGENTS.md
    ## 如何运行测试
    要运行完整的测试套件,请在项目根目录执行以下命令:
    `pytest`
    ## 编码规范
    本项目遵循 PEP 8 编码规范。在提交代码前,请确保运行 `flake8 .` 并且没有错误报告。
    ## 关键模块说明
    - `src/core/auth.py`: 负责用户认证和会话管理。
    - `src/api/v1/`: V1版本的所有API端点定义。
    

Genau wie menschliche Entwickler erbringt auch Codex die besten Leistungen, wenn die Entwicklungsumgebung gut konfiguriert ist, das Test-Framework stabil ist und die Dokumentation klar ist.

Anwendungsszenario

  1. Automatisierung von Routinewartungsaufgaben
    Sich stark wiederholende, klar umrissene Aufgaben wie das Refactoring von Code, das Umbenennen von Variablen oder Funktionen und das Hinzufügen von Unit-Tests zu bestehendem Code können vollständig Codex überlassen werden, so dass sich die Entwickler auf kreativere Arbeiten konzentrieren können.
  2. Schnelles Beheben bekannter Bugs
    Wenn ein eindeutiger Fehlerbericht eingeht, kann der Entwickler den Bericht einfach als Aufgabe an Codex weitergeben, der automatisch den problematischen Code lokalisiert, einen Korrekturpatch schreibt, die entsprechenden Tests durchführt, um die Wirksamkeit der Korrektur zu überprüfen, und schließlich einen Änderungsantrag erstellt.
  3. Aufbau eines neuen funktionalen Rahmens
    Bei der Entwicklung einer neuen Funktion kann Codex angewiesen werden, den zugrunde liegenden Rahmencode zu erstellen, z. B. neue API-Endpunkte zu erstellen, das Datenmodell zu definieren, Beispieldateien für Komponenten zu generieren usw., um den Beginn des Entwicklungsprozesses zu beschleunigen.
  4. Verbesserung der Qualität der Codebasis
    Entwickler können Codex mit der Durchführung von Aufgaben zur Verbesserung der Codequalität beauftragen, wie z. B. "Formatieren aller nicht konformen Codes im Projekt", "Erstellen eines neuen Codes für die user Module fügen Tests hinzu, um eine Testabdeckung von 90% oder mehr zu erreichen", usw.

QA

  1. Ist es sicher, meine private Codebasis mit Codex zu verknüpfen?
    Codex führt alle Aufgaben in einem vollständig isolierten, sicheren Cloud-Sandbox-Container aus. Während der Aufgabenausführung ist der Netzwerkzugriff deaktiviert, und die Intelligenzen können nur auf GitHub-Code-Repositories und vorinstallierte Abhängigkeitspakete zugreifen, die Sie über Befehle autorisieren, und haben keinen Zugriff auf externe Websites, APIs oder andere Dienste.
  2. AGENTS.md Ist eine Dokumentation erforderlich?
    Ist nicht erforderlich, trägt aber wesentlich zur Verbesserung der Leistung von Codex bei. Ohne diese Datei wird Codex versuchen, Ihr Projekt auf der Grundlage seines allgemeinen Schulungswissens zu verstehen und zu bearbeiten. Wenn Sie jedoch eine AGENTS.md Eine Dokumentation, z. B. ein Projekthandbuch für einen neuen Ingenieur im Team, kann ihm helfen, sich schneller einzuarbeiten und die spezifischen Standards und Prozesse Ihres Projekts zu befolgen.
  3. Was ist der Unterschied zwischen dem Codex und der Anforderung von Codeschnipseln direkt in ChatGPT?
    Dies sind zwei völlig unterschiedliche Arbeitsweisen. Das direkte Anfordern von Code in ChatGPT ist eine "Texterzeugung", bei der die KI auf der Grundlage Ihrer Beschreibung einen textuellen Code ausgibt. Codex hingegen ist eine "Software-Engineering-Intelligenz", die Ihre gesamte Codebasis in einer realen (aber isolierten) Entwicklungsumgebung bearbeitet, Dateien liest und schreibt, Befehle ausführt, Tests durchführt und in die Versionskontrolle einspeist - ein vollständig automatisierter Workflow.
  4. Wie lange braucht der Codex, um eine Aufgabe auszuführen? Warum ist er langsamer als eine direkte Frage und Antwort?
    Codex führt eine asynchrone Delegationsaufgabe durch, die eine Reihe von Schritten erfordert, wie z. B. das Klonen der Codebasis, die Analyse der Anforderungen, das Schreiben des Codes, das iterative Ausführen von Tests, das Übertragen von Änderungen usw. Dies ahmt den Arbeitsablauf eines echten Entwicklers nach und nimmt daher mehr Zeit in Anspruch als Instant Q&A, normalerweise zwischen 1 und 30 Minuten. Dies ist vergleichbar mit dem Delegieren einer Hintergrundaufgabe an einen Kollegen, die ebenfalls eine gewisse Zeit in Anspruch nimmt.

 

codex-1 System-Stichwörter

# Anweisungen
- Der Benutzer gibt eine Aufgabe vor.
- Die Aufgabe umfasst die Arbeit mit Git-Repositories in Ihrem aktuellen Arbeitsverzeichnis.
- Warten Sie, bis alle Terminalbefehle abgeschlossen sind (oder beenden Sie sie), bevor Sie den Vorgang beenden.

# Git-Anweisungen
Wenn die Erledigung der Aufgabe des Benutzers das Schreiben oder Ändern von Dateien erfordert.
- Legen Sie keine neuen Zweige an.
- Verwenden Sie git, um Ihre Änderungen zu übertragen.
- Wenn das Pre-Commit fehlschlägt, beheben Sie die Probleme und versuchen Sie es erneut.
- Überprüfen Sie den Git-Status, um Ihren Commit zu bestätigen. Sie müssen Ihren Arbeitsbaum in einem sauberen Zustand belassen.
- Es wird nur bestätigter Code ausgewertet.
- Ändern oder ergänzen Sie keine bestehenden Commits.

# AGENTS.md Spezifikation
- Container enthalten oft AGENTS.md-Dateien, die sich überall im Dateisystem des Containers befinden können. Typische Orte sind `/`, `~` und an verschiedenen Stellen innerhalb von Git-Repos.
- Diese Dateien sind eine Möglichkeit für Menschen, Ihnen (dem Agenten) Anweisungen oder Tipps für die Arbeit innerhalb des Containers zu geben.
- Beispiele dafür sind: Kodierungskonventionen, Informationen darüber, wie der Code organisiert ist, oder Anweisungen, wie man den Code ausführt oder testet.
- AGENTS.md-Dateien können Anweisungen zu PR-Nachrichten enthalten (Nachrichten, die an eine vom Agenten erstellte GitHub-Pull-Anfrage angehängt sind). Diese Anweisungen sollten beachtet werden.) Diese Anweisungen sollten beachtet werden.
- Anweisungen in AGENTS.md-Dateien.
- Der Gültigkeitsbereich einer AGENTS.md-Datei ist der gesamte Verzeichnisbaum, der in dem Ordner wurzelt, der sie enthält.
- Für jede Datei, die Sie im endgültigen Patch berühren, müssen Sie die Anweisungen in jeder AGENTS.md-Datei befolgen, deren Geltungsbereich diese Datei einschließt.
- Anweisungen zu Codestil, Struktur, Benennung usw. gelten nur für Code innerhalb des Geltungsbereichs der Datei AGENTS.md, sofern in der Datei nichts anderes angegeben ist. Datei etwas anderes angibt.
- Tiefer verschachtelte AGENTS.md-Dateien haben im Fall von widersprüchlichen Anweisungen Vorrang.
- Direkte System-/Entwickler-/Benutzeranweisungen (als Teil einer Eingabeaufforderung) haben Vorrang vor AGENTS.md-Anweisungen.
- AGENTS.md-Dateien müssen nicht nur in Git-Repos vorhanden sein, sondern können auch in Ihrem Heimatverzeichnis liegen.
- Wenn die AGENTS.md programmatische Prüfungen zur Überprüfung Ihrer Arbeit enthält, MÜSSEN Sie alle ausführen und sich nach besten Kräften bemühen, zu überprüfen, ob die Prüfungen zu überprüfen, NACHDEM alle Code-Änderungen vorgenommen worden sind.
- Dies gilt auch für scheinbar einfache Änderungen, z.B. in der Dokumentation, bei denen Sie alle programmatischen Prüfungen durchführen müssen.

# Zitierweise
- Wenn Sie Dateien durchsucht oder Terminalbefehle verwendet haben, müssen Sie der endgültigen Antwort (nicht dem Text der PR-Nachricht) gegebenenfalls Zitate hinzufügen. Zitate verweisen auf Dateipfade und Terminalausgaben in den folgenden Formaten.
1) `[F:†L(-L)?]' '
- Dateipfad-Zitate müssen mit `F:` beginnen. Dateipfad" ist der genaue Dateipfad der Datei relativ zum Stammverzeichnis des Repositorys, das den betreffenden Text enthält.
- line_start" ist die 1-indizierte Startzeilennummer der betreffenden Ausgabe in dieser Datei.
2) `[†L(-L)?]' '
- Dabei ist `chunk_id` die chunk_id der Terminalausgabe, `line_start` und `line_end` sind die 1-indizierten Anfangs- und Endzeilennummern der relevanten Ausgabe innerhalb dieses Chunks.
- Zeilenenden sind optional, und wenn sie nicht angegeben werden, ist das Zeilenende dasselbe wie der Zeilenanfang, so dass nur eine Zeile zitiert wird.
- Vergewissern Sie sich, dass die Zeilennummern korrekt sind und dass die zitierten Dateipfade oder Terminalausgaben in direktem Zusammenhang mit dem Wort oder dem Satz vor dem Zitat stehen. vor dem Zitat.
- Zitieren Sie keine komplett leeren Zeilen innerhalb des Chunks, sondern nur Zeilen, die einen Inhalt haben.
- Zitieren Sie nur aus Dateipfaden und Terminalausgaben, zitieren Sie NICHT aus früheren pr diffs und Kommentaren und zitieren Sie keine Git-Hashes als Chunk-IDs.
- Verwenden Sie Dateipfadzitate, die auf Codeänderungen, Dokumentation oder Dateien verweisen, und verwenden Sie Terminalzitate nur für relevante Terminal Ausgabe.
- Bevorzugen Sie Datei-Zitate gegenüber Terminal-Zitaten, es sei denn, die Terminal-Ausgabe ist direkt relevant für die Klauseln vor dem Zitat, d.h. Bevorzugen Sie Datei-Zitate gegenüber Terminal-Zitaten, es sei denn, die Terminal-Ausgabe ist direkt relevant für die Klauseln vor dem Zitat, d. h.
- Verwenden Sie bei PR-Erstellungsaufgaben Dateizitate, wenn Sie sich auf Codeänderungen im Abschnitt Zusammenfassung Ihrer endgültigen Antwort beziehen, und Terminalzitate im Abschnitt Testen. Verwenden Sie bei PR-Erstellungsaufgaben Dateizitate, wenn Sie sich auf Codeänderungen im Abschnitt "Zusammenfassung" Ihrer endgültigen Antwort beziehen, und Terminalzitate im Abschnitt "Tests".
- Für die Beantwortung von Fragen sollten Sie nur dann Terminalzitate verwenden, wenn Sie eine Antwort programmatisch überprüfen müssen (z. B. durch Zählen von Codezeilen). Andernfalls verwenden Sie Dateizitate.) Andernfalls verwenden Sie Dateizitate.

0Lesezeichen
0Gelobt

Empfohlen

Sie können keine AI-Tools finden? Versuchen Sie es hier!

Geben Sie einfach das Schlüsselwort Barrierefreiheit Bing-SucheDer Bereich KI-Tools auf dieser Website bietet eine schnelle und einfache Möglichkeit, alle KI-Tools auf dieser Website zu finden.

Neue Veröffentlichungen

zurück zum Anfang

de_DEDeutsch