Informationen zum Kontextfenster
Wenn Sie GitHub Copilot CLI verwenden, werden jede von Ihnen gesendete Nachricht, jede Antwort von Copilot, jeder Toolaufruf und dessen Ergebnis sowie die Systeminstruktionen, die das Verhalten von Copilot definieren, alle in einem Kontextfenster gehalten. Das Kontextfenster ist die Gesamtmenge der Informationen, die das KI-Modell beim Generieren einer Antwort gleichzeitig berücksichtigen kann.
Das Kontextfenster hat eine feste Größe, gemessen in Token, die je nach Modell variiert. Token bestehen in der Regel aus kurzen, häufig verwendeten Wörtern und Fragmenten von mehrsiligen Wörtern. Wenn Ihre Unterhaltung fortschreitet, füllt sich das Kontextfenster mit:
-
**Systemanweisungen und Tooldefinitionen**: Die integrierten Anweisungen, die angeben Copilot , wie sie sich verhalten, sowie die Schemas aller verfügbaren Tools. Diese sind immer vorhanden und belegen einen festen Teil des Kontextfensters. -
**Ihre Nachrichten**: Jede Aufforderung, die Sie senden. -
** CopilotAntworten**: Alles, was Copilot Ihnen zurücksagt. -
**Toolaufrufe und -ergebnisse**: Wenn Copilot Sie Dateien lesen, Befehle ausführen oder Ihre Codebasis durchsucht, werden sowohl die Anforderung als auch die Ausgabe dem Kontext hinzugefügt. Toolergebnisse können besonders groß sein, z. B. wenn ein Tool eine lange Datei liest oder einen Befehl ausführt, der umfangreiche Ausgabe erzeugt.
All dies wird im Kontextfenster angesammelt. In einer langen oder komplexen Sitzung kann sich das Kontextfenster füllen.
Warum das Kontextfenster wichtig ist
Das Kontextfenster ist das, was Copilot sein "Gedächtnis" Ihrer Unterhaltung gibt. Alles innerhalb des Kontextfensters wird von Copilot verwendet, um bei der Beantwortung auf Sie zu verweisen.
Dies bedeutet, dass Copilot in einer sehr langen Sitzung möglicherweise nicht in der Lage ist, den gesamten Unterhaltungsverlauf auf einmal zu speichern. Copilot CLI verfügt über Kontextverwaltungsfunktionen, mit denen Sie eine Unterhaltung mit Copilot effektiv fortsetzen können, solange es benötigt wird.
Überprüfen der Kontextnutzung
Sie können überprüfen, wie viel des Kontextfensters derzeit verwendet wird, indem Sie den /context Schrägstrichbefehl eingeben. Dadurch wird eine visuelle Aufschlüsselung der Tokenverwendung angezeigt, die Folgendes zeigt:
-
**System/Tools**: Der feste Aufwand der Systemanweisungen und Tooldefinitionen. -
**Nachrichten**: Der von Ihrem Chatverlauf verwendete Platz. -
**Freier Speicherplatz**: Wie viel Platz für neue Nachrichten übrig bleibt. -
**Puffer**: Ein reservierter Teil, der die automatische Kontextverwaltung auslöst.

Sie möchten den /context Slash-Befehl verwenden, wenn:
- Sie befinden sich in einer langen Sitzung und möchten wissen, wie viel Platz übrig bleibt.
-
Copilot scheint frühere Teile der Unterhaltung zu vergessen. - Sie möchten verstehen, ob die Komprimierung aufgetreten ist oder bald auftreten wird.
Komprimierung
Verdichtung ist der Prozess, der es GitHub Copilot CLI ermöglicht, langlaufende Sitzungen zu unterstützen, ohne die Grenzen des Kontextfensters zu erreichen.
Wenn Komprimierung stattfindet
Wenn Ihre Unterhaltung ungefähr 80% der Kapazität des Kontextfensters erreicht, Copilot CLI beginnt die Komprimierung des Kontexts automatisch im Hintergrund. Dadurch bleibt ein Puffer von ca. 20%, sodass Toolaufrufe weiterhin ausgeführt werden können, während die Komprimierung ausgeführt wird. Wenn der Kontext auf ungefähr 95 % gefüllt ist, bevor die Komprimierung abgeschlossen ist, pausiert Copilot CLI kurz, um darauf zu warten, dass die Komprimierung abgeschlossen wird, bevor der Vorgang fortgesetzt wird.
Sie können die Komprimierung auch jederzeit manuell auslösen, indem Sie den /compact Befehl eingeben. Dies ist nützlich, wenn Sie eine neue Phase der Arbeit beginnen und kontextbezogene Räume proaktiv freigeben möchten. Drücken Sie ESC , um eine manuelle Komprimierung abzubrechen, wenn Sie Ihre Meinung ändern.
Was die Komprimierung bewirkt
Beim Kompaktiervorgang: Copilot CLI
- Erstellt eine Momentaufnahme des aktuellen Unterhaltungsverlaufs.
- Sendet die vollständige Unterhaltung mit einer speziellen Eingabeaufforderung an das KI-Modell, die sie auffordert, eine strukturierte Zusammenfassung zu generieren. Die Zusammenfassung erfasst die Ziele der Unterhaltung, was getan wurde, wichtige technische Details, wichtige Dateien und geplante nächste Schritte.
- Ersetzt den alten Unterhaltungsverlauf durch eine Zusammenfassung, einschließlich der ursprünglichen Benutzeranweisungen und des aktuellen Status aller Pläne oder Aufgabenlisten.
- Behält alle Nachrichten bei, die während der Komprimierung im Hintergrund hinzugefügt wurden.
Das Ergebnis ist, dass der Gesprächsverlauf in eine viel kleinere Zusammenfassung komprimiert wird, wodurch der Großteil des Kontextfensters für neue Aufgaben freigegeben wird. Copilot verwendet diese Zusammenfassung, um die Kontinuität aufrechtzuerhalten – es weiß, was diskutiert wurde, was entschieden wurde und was als Nächstes zu tun ist – auch wenn die ursprünglichen Nachrichten ersetzt wurden.
Was die Komprimierung nicht behält
Komprimierung ist ein Zusammenfassungsprozess, so dass einige Details zwangsläufig verloren gegangen sind. Die Zusammenfassung erfasst die wichtigsten Punkte, aber detaillierte Details wie der genaue Wortlaut jeder Nachricht, die vollständige Ausgabe jedes Befehls oder kleinere Entscheidungen, die früh in einer langen Unterhaltung getroffen wurden, sind möglicherweise nicht berücksichtigt. Wenn Sie Copilot ein sehr spezifisches Detail aus einem deutlich früheren Zeitpunkt der Sitzung zurückrufen müssen, enthält es diese Informationen möglicherweise nach der Verdichtung nicht.
Was passiert ohne Komprimierung?
Ohne Komprimierung müsste, nachdem das Kontextfenster gefüllt ist, Copilot darauf zurückgreifen, alte Nachrichten einfach aus dem Gesprächsverlauf zu entfernen – ohne Zusammenfassung oder Aufzeichnung. Dies würde bedeuten, dass der Kontext abrupt verloren geht, ohne die Möglichkeit Copilot zu wissen, was in den gelöschten Nachrichten war. Der Prozess der Verdichtung verhindert dies, indem er den Verlauf durch eine intelligente Zusammenfassung ersetzt, anstatt ihn zu verwerfen.
Kontrollpunkte
Bei jeder Komprimierung – ob automatisch oder manuell – wird ein Prüfpunkt erstellt. Ein Prüfpunkt ist eine gespeicherte Kopie der Komprimierungszusammenfassung, die als nummerierte, titelgetitelte Datei im Arbeitsbereich Ihrer Sitzung gespeichert ist.
Anzeigen von Prüfpunkten
Um alle Prüfpunkte in Ihrer aktuellen Sitzung anzuzeigen, geben Sie Folgendes ein:
/session checkpoints
/session checkpoints
Dadurch werden alle Prüfpunkte mit ihrer Nummer und ihrem Titel aufgelistet:
Checkpoint History (3 total):
3. Refactoring authentication module
2. Implementing user dashboard
1. Initial planning and setup
Verwenden Sie die Prüfpunktnummer, um den vollständigen Inhalt eines Prüfpunkts anzuzeigen. Geben Sie beispielsweise Folgendes ein, um den Prüfpunkt 2 anzuzeigen:
/session checkpoints 2
/session checkpoints 2
Wenn Prüfpunkte nützlich sind
-
**Überprüfen, was passiert ist**: Nach einer langen Sitzung mit mehreren Komprimierungen befinden sich frühere Phasen der Unterhaltung nicht mehr im aktiven Kontext. Mit Prüfpunkten können Sie die Aktionen von Copilot bei jeder Verdichtung zurückverfolgen. -
**Überprüfen der Kontinuität**: Wenn Sie sicherstellen möchten, dass die Zusammenfassung Ihrer früheren Arbeit genau erfasst wurde, bevor Sie fortfahren, können Sie den neuesten Kontrollpunkt ansehen. -
**Fehlerbehebung bei Verwirrungen**: Wenn Copilot Sie eine Entscheidung vergessen oder in eine Richtung einschlagen, die früheren Arbeiten widerspricht, können Prüfpunkte aufzeigen, was während der Komprimierung erhalten geblieben ist und was anders zusammengefasst wurde, als Sie erwartet haben.
Hinweis
- Prüfpunkte werden automatisch erstellt. Sie müssen sie nicht verwalten – sie sind dort, wenn Sie sie benötigen. Für die meisten Sitzungen müssen Sie sich überhaupt keine Prüfpunkte ansehen.
- Sie können eine Komprimierung nach Abschluss nicht rückgängig machen.
Verwendung von langen Sitzungen
Mit der automatischen Komprimierung können Sie weiterhin in einer langen Sitzung arbeiten, ohne sich Gedanken darüber zu machen, dass die Grenzen des Kontextfensters erreicht werden. Es gibt Zeiten, in denen dies sehr nützlich ist, und andere Zeiten, in denen Sie es vorziehen, eine neue Sitzung zu starten.
Wenn lange Sitzungen nützlich sind
Lange laufende Sitzungen funktionieren gut, wenn:
- Sie arbeiten an einer mehrstufigen Aufgabe, z. B. beim Erstellen eines Features, das Gerüst, Implementierung, Tests und anschließendes Erstellen einer Pullanforderung erfordert.
- Sie arbeiten an einem Problem und möchten Copilot den Kontext dessen beibehalten, was versucht wurde und was nicht funktioniert hat.
- Sie leisten explorative Arbeit in einer Codebasis und bauen Copilot im Laufe der Zeit gemeinsames Verständnis auf.
Wann eine neue Sitzung gestartet werden soll
Das Starten einer neuen Sitzung ist besser, wenn:
- Sie wechseln zu einer nicht verknüpften Aufgabe. Copilot benötigt nicht den Kontext Ihrer vorherigen Arbeit, und ein übersichtliches Kontextfenster bedeutet mehr Platz für die neue Aufgabe.
- Die Unterhaltung hat viele Komprimierungen durchlaufen, und Sie spüren, dass im Zusammenfassungsprozess ein wichtiger Kontext verloren geht.
- Sie möchten einen reinen Neuanfang – z. B. wenn die Arbeit in eine falsche Richtung gegangen ist und Sie lieber von vorn beginnen, als zu versuchen, frühere Entscheidungen mit einem neuen Ansatz in Einklang zu bringen.
Tipp
Sie können vorherige Sitzungen jederzeit mit dem /resume Befehl fortsetzen. Auf diese Weise können Sie dort weitermachen, wo Sie aufgehört haben, einschließlich aller Prüfpunkte, die während dieser Sitzung erstellt wurden.
Weiterführende Lektüre
-
[AUTOTITLE](/copilot/how-tos/copilot-cli) -
[AUTOTITLE](/copilot/how-tos/use-copilot-agents/use-copilot-cli) -
[AUTOTITLE](/copilot/reference/copilot-cli-reference/cli-command-reference)