Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Kontextverwaltung
Wahl des richtigen Kontextansatzes
Amazon Q bietet drei Möglichkeiten, Kontext bereitzustellen, die jeweils für unterschiedliche Anwendungsfälle optimiert sind:
| Ansatz | Auswirkung auf das Kontextfenster | Persistenz | Am besten für |
|---|---|---|---|
| Ressourcen für Agenten | Immer aktiv (verbraucht Tokens) | Sitzungsübergreifend persistent | Wichtige Projektdateien, Standards und Konfigurationen |
| Sitzungskontext | Immer aktiv (verbraucht Tokens) | Nur aktuelle Sitzung | Temporäre Dateien, schnelle Experimente |
| Wissensdatenbanken | Nur wenn gesucht | Sitzungsübergreifend persistent | Große Codebasen, umfangreiche Dokumentation |
Flussdiagramm für Entscheidungen
Verwenden Sie diesen Entscheidungsbaum, um den geeigneten Kontextansatz auszuwählen:
-
Ist Ihr Inhalt größer als 10 MB oder enthält er Tausende von Dateien?
-
Ja → Wissensdatenbanken verwenden
-
Nein → Fahren Sie mit Schritt 2 fort
-
-
Benötigen Sie diesen Kontext in jeder Konversation?
-
Ja → Agentenressourcen verwenden
-
Nein → Sitzungskontext verwenden
-
Kurzreferenz:
-
Wichtige Projektdateien (README, Konfigurationen, Standards) → Ressourcen für Agenten
-
Große Codebasen oder Dokumentationssätze → Wissensdatenbanken
-
Temporäre Dateien für die aktuelle Aufgabe → Sitzungskontext
Die Auswirkungen des Kontextfensters verstehen
Kontextdateien und Agentenressourcen verbrauchen bei jeder Anfrage Tokens aus Ihrem Kontextfenster, unabhängig davon, ob darauf verwiesen wird oder nicht. Wird verwendet/context show, um die Token-Nutzung zu überwachen:
q chat > /context show Total: ~1100 tokens
Token-Limits: Kontextdateien sind auf 75% des Kontextfensters Ihres Modells beschränkt. Dateien, die dieses Limit überschreiten, werden automatisch gelöscht.
Wissensdatenbanken verbrauchen erst dann Platz im Kontextfenster, wenn sie durchsucht werden, und eignen sich daher ideal für umfangreiche Referenzmaterialien. Weitere Informationen finden Sie unter Wissensdatenbank-Kontext (für große Datensätze).
Verwalten von Kontext
Kontextdateien enthalten Informationen, die Amazon Q bei Ihren Konversationen berücksichtigen soll. Dazu können Projektanforderungen, Kodierungsstandards, Entwicklungsregeln oder andere Informationen gehören, die Amazon Q dabei helfen, relevantere Antworten zu geben.
Konfigurieren eines persistenten Kontextes mit Agentenressourcen
Es wird empfohlen, den Kontext über das Feld resources in Ihrer Agentenkonfigurationsdatei zu konfigurieren. Dadurch entsteht ein persistenter Kontext, der bei jeder Verwendung des Agenten verfügbar ist.
Fügen Sie dem resources-Array in Ihrer Agentenkonfiguration Dateipfade oder Glob-Muster hinzu:
{ "name": "my-agent", "description": "My development agent", "resources": [ "file://README.md", "file://.amazonq/rules/**/*.md", "file://docs/**/*.md", "file://src/config.py" ] }
Ressourcen müssen mit dem Präfix file:// versehen werden, um als Kontextdateien aufgenommen zu werden. Diese Dateien sind automatisch in allen Chat-Sitzungen verfügbar, die diesen Agenten verwenden.
Hinzufügen von temporärem Sitzungskontext
Mit dem Befehl /context add können Sie Ihrer aktuellen Chat-Sitzung vorübergehend Dateien hinzufügen. Diese hinzugefügten Dateien sind nur für die aktuelle Sitzung verfügbar und bleiben nicht bestehen, wenn Sie eine neue Chat-Sitzung starten.
q chat > /context add README.md Added 1 path(s) to context. Note: Context modifications via slash command is temporary.
Sie können auch mehrere Dateien gleichzeitig hinzufügen, indem Sie Glob-Muster verwenden:
q chat > /context add docs/*.md Added 3 path(s) to context. Note: Context modifications via slash command is temporary.
Wenn Sie Kontextänderungen dauerhaft festlegen möchten, fügen Sie die Dateien stattdessen dem Feld resources Ihres Agenten hinzu. Weitere Informationen finden Sie unter Konfigurieren eines persistenten Kontextes mit Agentenressourcen.
Wissensdatenbank-Kontext (für große Datensätze)
Verwenden Sie für umfangreiche Codebasen, Dokumentationssätze oder Referenzmaterialien, die die Grenzen des Kontextfensters überschreiten würden, Wissensdatenbanken. Wissensdatenbanken bieten semantische Suchfunktionen, ohne dass bis zur Suche Platz im Kontextfenster beansprucht wird.
Wissensdatenbanken aktivieren:
q settings chat.enableKnowledge true
Inhalte zu einer Wissensdatenbank hinzufügen:
q chat > /knowledge add /path/to/large-codebase --include "**/*.py" --exclude "node_modules/**"
Wissensdatenbanken werden von Amazon Q bei Bedarf durchsucht, wenn relevante Informationen benötigt werden, was sie ideal für umfangreiche Referenzmaterialien macht.
Anzeigen von Kontext
Verwenden Sie den Befehl /context show, um Ihren aktuellen Kontext anzuzeigen:
q chat > /context show 👤 Agent (my-agent): README.md (1 match) .amazonq/rules/**/*.md (3 matches) docs/**/*.md (5 matches) 💬 Session (temporary): <none> 5 matched files in use: 👤 README.md (~250 tkns) 👤 .amazonq/rules/security.md (~180 tkns) 👤 .amazonq/rules/coding-standards.md (~320 tkns) 👤 docs/architecture.md (~150 tkns) 👤 docs/best-practices.md (~200 tkns) Total: ~1100 tokens
Die Ausgabe zeigt Folgendes an:
-
👤 Agent: dauerhafter Kontext aus dem Feld
resourcesIhres Agenten -
💬 Sitzung: temporärer Kontext, der während der aktuellen Sitzung hinzugefügt wurde
Entfernen von Kontext
Verwenden Sie den Befehl /context rm, um Dateien aus Ihrem aktuellen Sitzungskontext zu entfernen:
q chat > /context rm src/temp-file.py Removed 1 path(s) from context. Note: Context modifications via slash command is temporary.
Verwenden Sie den Befehl /context clear, um den gesamten Sitzungskontext zu löschen:
q chat > /context clear Cleared context Note: Context modifications via slash command is temporary.
Hinweis: Sie können den vom Agenten definierten Kontext nicht mithilfe von /context-Befehlen entfernen. Wenn Sie den Kontext dauerhaft entfernen möchten, bearbeiten Sie das Feld resources Ihres Agenten.
Häufige Anwendungsfälle
Im Folgenden finden Sie einige häufig auftretende Anwendungsfälle für die Kontextverwaltung:
Verwenden von Projektregeln
Amazon Q unterstützt Regeln auf Projektebene, mit denen Sicherheitsrichtlinien und Einschränkungen definiert werden können. Diese Regeln sind in Markdown-Dateien im Verzeichnis .amazonq/rules Ihres Projekts definiert.
Sie können beispielsweise Regeln erstellen, die Folgendes angeben:
-
Auf welche Verzeichnisse Amazon Q nicht zugreifen sollte
-
Sicherheitsanforderungen für generierten Code
-
Codierungsstandards und bewährte Methoden
Es wird empfohlen, Projektregeln über Ihre Agentenkonfiguration einzubeziehen:
{ "name": "my-project-agent", "resources": [ "file://.amazonq/rules/**/*.md", "file://README.md", "file://docs/architecture.md" ] }
Sie können Ihrer aktuellen Sitzung auch vorübergehend Projektregeln hinzufügen:
q chat > /context add .amazonq/rules/*.md Added 3 path(s) to context. Note: Context modifications via slash command is temporary.
Weitere Informationen zum Erstellen und Verwenden von Projektregeln finden Sie in der IDE-Dokumentation unter Erstellen von Projektregeln für die Verwendung mit dem Chat von Amazon Q Developer.
Migration von Sitzungskontext zu den Agentenressourcen
Wenn Sie wiederholt dieselben Kontextdateien mithilfe von /context add-Befehlen hinzufügen, sollten Sie erwägen, sie aus Gründen der Persistenz in das Feld resources Ihres Agenten zu verschieben:
-
Notieren Sie sich die Dateien, die Sie häufig mit
/context addhinzufügen. -
Bearbeiten Sie Ihre Agenten-Konfigurationsdatei, indem Sie die Datei verwenden
/agent editoder direkt ändern -
Fügen Sie dem
resources-Array die Dateipfade mit dem Präfixfile://hinzu. -
Speichern Sie die Agentenkonfiguration.
Beispiel für eine Migration:
# Instead of running these commands every session: > /context add README.md > /context add docs/*.md > /context add .amazonq/rules/*.md # Add them to your agent config once: { "resources": [ "file://README.md", "file://docs/**/*.md", "file://.amazonq/rules/**/*.md" ] }
Wann sollten Wissensdatenbanken verwendet werden
Erwägen Sie Wissensdatenbanken, wenn:
-
Ihre Kontextdateien überschreiten das Token-Limit (75% des Kontextfensters)
-
Sie haben große Codebasen oder Dokumentationssätze
-
Sie benötigen eine semantische Suche in umfangreichen Materialien
-
Sie möchten den ständigen Verbrauch von Kontextfenstern vermeiden
Beispiel: Anstatt eine große Codebasis als Kontextdateien hinzuzufügen:
# This would consume too many tokens: > /context add src/**/*.py # Use knowledge base instead: > /knowledge add src/ --include "**/*.py" --exclude "__pycache__/**"
Einen Standard-Agenten mit Kontext einrichten
Sie können einen Standard-Agenten konfigurieren, der Ihre bevorzugten Kontextdateien enthält:
q settings chat.defaultAgent my-project-agent
Dadurch wird sichergestellt, dass Ihr Kontext in neuen Chat-Sitzungen automatisch verfügbar ist, ohne dass Sie den Agenten jedes Mal angeben müssen.
Bewährte Methoden
Organisation von Kontextdateien
-
Sorgen Sie dafür, dass die Kontextdateien fokussiert und relevant sind, um Token-Limits zu vermeiden
-
Verwenden Sie aussagekräftige Dateinamen, die ihren Zweck angeben
-
Organisieren Sie Regeln und Dokumentation in logischen Verzeichnisstrukturen
-
Beachten Sie die Dateigröße — sehr große Dateien können erhebliche Tokens verbrauchen
Leistungsaspekte
-
Überwachen Sie die Token-Nutzung mit
/context show, um die Grenzwerte einzuhalten -
Verwenden Sie spezifische Glob-Muster statt zu weit gefasster Muster
-
Entfernen Sie unbenutzte Kontextdateien aus den Agentenkonfigurationen
-
Erwägen Sie, große Kontextdateien in kleinere, fokussierte Dateien aufzuteilen
-
Verwenden Sie Wissensdatenbanken für große Datensätze, um den Verbrauch von Kontextfenstern zu vermeiden
Sicherheitsüberlegungen
-
Vermeiden Sie es, vertrauliche Informationen in Kontextdateien aufzunehmen
-
Wird verwendet
.gitignore, um versehentliche Übertragungen von sensiblem Kontext zu verhindern -
Überprüfen Sie die Kontextdateien regelmäßig, um sicherzustellen, dass sie keine veralteten Informationen enthalten
-
Achten Sie darauf, welche Informationen geteilt werden, wenn Sie Kontext in Konversationen verwenden