1. Input-Guardrails für LLM-Apps, vor dem Modell
Jede Guardrail-Regel trägt eine Stage —input, output oder both.
Eine input-Regel läuft gegen den Request-Text in dem Moment, in dem er
ankommt, auf dem Weg zum Upstream-Modell:
Input-Regeln prüfen die Anfrage des Aufrufers. Wenn Sie auch
Registry-Prompts verwenden, wird die injizierte
System-Message später im Routing hinzugefügt — daher sehen Input-Regeln die
Messages, die Ihre App gesendet hat, nicht den injizierten Prompt.
Output-Regeln prüfen die Antwort in jedem Fall.
2. Was Sie an der Input-Stage ausführen können
Jeder Regeltyp kann aninput laufen. Die häufigsten Gründe, die Anfrage
vor dem Modell zu gaten:
PII im Prompt maskieren
Eine
pii-Regel mit der mask-Action schreibt Entities zu
typisierten Tags um (jane@acme.com → [EMAIL]), sodass das
Upstream-Modell den Rohwert nie sieht. Siehe
PII Shield.Secrets blockieren, bevor sie leaken
Eine Anfrage, die einen API-Key oder ein Cloud-Credential trägt, wird an
der Tür abgelehnt — vor der Messung, kein Upstream-Aufruf. Siehe
Secrets blockieren.
Injection-Versuche stoppen
Das Prompt-Injection-Grundlagen-Preset paart Keyword-/Regex-Detektoren
mit einer
llm_judge-Regel für Injection-Absicht. Siehe
Prompt-Injection.Prompt-Größe begrenzen
Eine
max_chars-Regel lehnt einen übergroßen Prompt ab, bevor er
irgendwelche Tokens abrechnet. Siehe
Cost-Guardrails.keyword, regex, pii, max_chars, external,
llm_judge, grounding — und die fünf Actions block, mask, flag,
annotate und spotlight gelten hier alle. (spotlight fasst gematchten
nicht vertrauenswürdigen Text in Delimiter ein, sodass das Modell ihn als
Daten behandelt, nicht als Anweisungen — eine Input-Stage-Prompt-Injection-Verteidigung;
annotate hängt eine Notiz an, ohne den Traffic zu ändern.) Eine erwähnenswerte
Ausnahme:
grounding misst die
Antwort gegen abgerufene Quellen, ist also inhärent eine
Output-Stage-Prüfung. Alles andere passt natürlich zur Input-Stage.
3. Ein konkretes Beispiel
Verfassen Sie die Regel in der Konsole (unter Ihrer eigenen Session — Guardrail-Config braucht Developer+), nicht mit einem Relay-Key. Fügen Sie einem Guardrail namenssecrets-shield eine einzelne input-Regel
hinzu:
guardrail_id oder
markieren Sie es als Workspace-Default — siehe
An einen Key anhängen), rufen Sie
dann das Gateway mit diesem sk-orca-...-Relay-Key auf:
guardrail_blocked abgelehnt, bevor das Gateway irgendetwas nach Upstream
weiterleitet:
guardrail_blocked-Fehler
für die vollständige Response-Form.
4. Warum ein Input-Block kein Kontingent kostet
Das ist der strukturelle Vorteil, Dinge auf dem Weg hinein abzufangen. Ein Block der Input-Stage sitzt vor dem Vorabverbrauch, also:| Eigenschaft | Block der Input-Stage |
|---|---|
| HTTP-Status | 400 guardrail_blocked |
| Berechnetes Kontingent | Keines — feuert vor der Messung |
| Upstream-Aufruf | Nie getätigt |
| Retry | Als skip-retry markiert — erneutes Ausführen blockiert wieder |
Weil die Anfrage nie einen Channel erreicht, wird ein Input-Block als
skip-retry markiert: das erneute Ausführen desselben Prompts gegen einen
anderen Channel würde einfach wieder blockieren und Aufwand verschwenden. Die
Output-Stage unterscheidet sich — ein Block dort erstattet das Kontingent
zurück, das das Gateway bereits vorab verbraucht hat. Gleicher
400, andere
Verbuchung.5. Auflösung und Fallback
Eine Input-Stage-Regel läuft nur, wenn auf der Anfrage tatsächlich ein Guardrail auflöst. Die Auflösung ist explizit:- Die explizite
guardrail_iddes Keys, sofern sie existiert und aktiviert ist. - Andernfalls das Default-Guardrail des Workspaces.
- Andernfalls keines — die Anfrage ist byte-identisch zu einem Workspace ohne Policy.
6. Beweisen Sie es, bevor Sie ausliefern
Hängen Sie eine blockierende Input-Regel nicht auf gut Glück an Live-Traffic. Zwei Wege, zuerst zu validieren:Test-Tab — ein Sample
Test-Tab — ein Sample
Öffnen Sie den Tab Test im Guardrail-Editor, fügen Sie ein Sample
ein, wählen Sie die
input-Stage und führen Sie aus. Die Sandbox
evaluiert die aktuelle Policy lokal — kein Upstream-Aufruf, kein
Kontingent — und gibt das Verdikt plus (bei Mask-Regeln) den gerenderten
Text zurück. Siehe
Testing & Eval.Erst flaggen, dann blockieren
Erst flaggen, dann blockieren
Setzen Sie die Action zuerst auf flag. Ein Flag ändert nichts am
Traffic — es zeichnet nur einen Match auf — sodass Sie messen können, wie
oft eine Regel auf echtem Input feuern würde, bevor Sie sie auf block
kippen. Siehe
Fehlalarme tunen.
Sehen, was gefeuert hat
Sehen, was gefeuert hat
Jede Regel, die feuert, zeichnet einen Match auf — Type, Action, Stage
und einen Detail-String. Der gematchte Teilstring wird nur aufgezeichnet,
wenn Log raw content an ist (standardmäßig aus). Siehe den
Matches-Feed und
Logging & Datenschutz.
7. Wohin als Nächstes
Die Input-Stage stoppt schlechten Input, bevor er das Modell erreicht. Um die Antwort des Modells zu gaten, paaren Sie sie mit der Output-Stage; um die Tool-Calls eines Agenten zu steuern, verwenden Sie die Firewall.- Output-Stage-Regeln — die Antwort des Modells prüfen, nachdem sie zurückkommt.
- Stages und
both— wann eine Regel auf Input, Output oder beidem läuft. - KI-Agenten absichern — wo Input-Guardrails im vollständigen Control-Stack sitzen.
- Prompt-Injection-Bedrohung und Daten-Exfiltration — die Angriffe, die eine Input-Regel stoppen soll.
