Wie man riesige Prompts aufteilt, um Token-Verschwendung bei Agenten zu reduzieren
TuBrief 편집팀
2026년 3월 14일
0
Computing/Software원본 영상을 바탕으로 AI의 도움을 받아 작성했습니다. 원본 영상이 기준입니다.
커뮤니티의 다른 글
댓글 (0)
Log in to leave a comment
아직 작성된 글이 없습니다
원본 영상을 바탕으로 AI의 도움을 받아 작성했습니다. 원본 영상이 기준입니다.
Log in to leave a comment
아직 작성된 글이 없습니다
Eine monolithische Architektur, die alle möglichen Richtlinien und Tools in einen einzigen System-Prompt presst, stößt schnell an ihre Grenzen. Schon bei etwas längeren Konversationen vergisst der Agent die Anweisungen, die mitten im Prompt standen. Da bei jeder Anfrage zigtausend Tokens redundant übertragen werden, schießen die Inferenzkosten in die Höhe und man muss lange warten, bis das erste Token generiert wird.
In der Praxis wird dieses Problem durch eine schrittweise Kontextlade-Struktur gelöst, die auf der offenen Spezifikation von agentskills.io basiert. Dabei handelt es sich um einen Ansatz, bei dem die entsprechenden Skills nur im Bedarfsfall geladen werden, um Tokens zu sparen.
Monolithische System-Prompts sollten anhand von Domänengrenzen, Tool-Ausführungsrechten und der Ausführungshäufigkeit aufgeteilt werden. Um zu verhindern, dass sich Skills bei der Einbettungs-Ähnlichkeitssuche gegenseitig behindern, sollten in einer einzigen Sitzung maximal 3 Skills gleichzeitig aktiv sein.
Am Anfang der ausgelagerten Skill-Datei sollte ein YAML-Frontmatter stehen, das einen Identifier (der nur aus Bindestrichen, englischen Kleinbuchstaben und Zahlen besteht) sowie den Zweck der Ausführung angibt.
name: backend-api-generator
description: Generates Spring Boot REST API controller and service boilerplate code. Use when the user asks to create API endpoints, build REST controllers, or define DTO mappings for backend services.
when_to_use:
`
Der Prozess zum Erstellen einer schrittweisen Ladestruktur ist einfach:
Wenn man eine monolithische Struktur, die ständig 15.000 bis 30.000 Tokens belegt, auf eine SKILL.md-Struktur mit Lazy Loading umstellt, sinkt der anfängliche Token-Overhead um über 90 %. Basierend auf internen Testdaten von Anthropic lässt sich die p95-Latenz um 12 % bis 40 % verkürzen und der durchschnittliche Token-Verbrauch pro Konversation um 29,6 % senken.
Wenn mehrere Skills nacheinander geladen werden, verbleiben die Anweisungen des vorherigen Skills oft in der Sitzung und verfälschen die nächste Aufgabe. Bei risikoreichen Prüfungen oder Vorgängen, die viele Protokolle hinterlassen, sollte im YAML-Frontmatter eine Unterkontext-Verzweigung (context: fork) eingerichtet werden, um eine Isolierung auf Prozessebene zu erreichen.
`
Auch die klare Definition von Ein- und Ausgabedatenverträgen (Data Contracts) darf nicht fehlen.
allowed-tools) in den YAML-Metadaten werden beliebige Bash-Ausführungen oder unüberlegte Netzwerkaufrufe verhindert.`markdown
All responses must strictly adhere to the following JSON structure without markdown wrapping:
{
"status": "SUCCESS" | "FAILED",
"generated_files": [
{
"path": "string",
"content": "string"
}
],
"error_message": "string | null"
}
`
Die Isolierung in einen Subprozess verhindert, dass Tool-Aufrufprotokolle die Hauptsitzung überfluten. Da die Hauptkonversationssitzung sauber bleibt, sinkt auch die Fehlerwahrscheinlichkeit beim Datenaustausch zwischen Sub-Agenten.
Wenn Anforderungen unklar sind oder Tool-Aufrufe wiederholt fehlschlagen, gerät der Agent in eine Endlosschleife von Wiederholungen. Das ist der Moment, in dem innerhalb weniger Minuten API-Kosten in Höhe von Dutzenden von US-Dollar verbrannt werden. Wenn man am Ende des Skill-Dateitextes eine schrittweise statische Überprüfungscheckliste (Verification Checklist) einfügt, führt der Agent vor Beendigung der Aufgabe eine Selbstüberprüfung durch.
`markdown
Before declaring the task finished, you MUST sequentially execute the following verification checklist:
`
Auch das Schreiben eines Circuit Breakers, der die Schleife physisch unterbricht, ist unkompliziert:
MAXIMUM_TOOL_CALL_LIMIT: 3) angegeben.`markdown
[SKILL EXECUTION HALTED]
Skill Name: backend-api-generator
Failure Reason: [Brief error description]
Attempts Made: [Number of retries]
Suggested Action: [Action required by backend developer]
`
Bei riskanten Aktionen wie dem Löschen von Dateien oder dem Drop von Datenbanken ist es sicherer, die Option disable-model-invocation: true zu aktivieren. Damit wird verhindert, dass der Agent diese eigenständig aufruft, und es wird eingeschränkt, dass sie nur ausgeführt werden, wenn der Entwickler einen Slash-Befehl (/skill-name) direkt eingibt.
Wenn Teamkollegen gemeinsam Skills schreiben, sollten sie der Standard-Verzeichnisarchitektur von agentskills.io folgen, um Konflikte mit Markdown-Dateien zu vermeiden. Im Hauptordner werden Hauptteil, CLI-Skripte, Referenzdokumente und statische Vorlagenressourcen klar voneinander getrennt platziert.
| Verzeichnis- und Dateipfad | Rolle | Erstellungsrichtlinie |
|---|---|---|
| skills/api-generator/SKILL.md | Pflicht-Einstiegsdokument | Enthält YAML-Frontmatter und zentrale Prozessrichtlinien (innerhalb von 500 Zeilen) |
| skills/api-generator/scripts/ | Ordner für ausführbaren Code | Speicherort für Python/Bash-CLI-Skripte, die der Agent bei Bedarf aufruft |
| skills/api-generator/references/ | Ordner für Hilfsreferenzdokumente | Enthält umfangreiche API-Spezifikationen, DB-Schemata und Styleguides |
| skills/api-generator/assets/ | Ordner für statische Ressourcen-Templates | Speichert generierten Code-Boilerplate und Konfigurationsdateibeispiele |
Zur Überprüfung der Skill-Qualität wird das Evaluierungs-Framework promptfoo verwendet.
promptfooconfig.yaml werden der Pfad zur zu testenden SKILL.md und das LLM-Modell angegeben.npx promptfoo@latest eval ausgeführt, um die Einhaltung der Richtlinien zu messen.`yaml
description: "Backend Agent Skills Validation Suite"
prompts:
`
Für die Bereitstellung wird eine Trunk-Based-Development-Strategie mit kurzlebigen Branches und Git-Tags (v1.2.0) kombiniert. Wenn sich ein Agent in der Produktion fehlerhaft verhält, kann man mit dem Befehl git checkout tags/v1.1.0 -b hotfix/rollback sofort auf den Stand des vorherigen Tags zurückrollen.