Przejdź do głównej treści
Masz listę terminów, które nigdy nie mogą dotrzeć do modelu ani z niego wrócić — nazwa konkurenta, wewnętrzna nazwa kodowa, zakazana obelga, produkt, który nie został jeszcze ogłoszony. Najszybszą kontrolą do tego jest lista zakazanych słów kluczowych: lista dosłownych terminów, których brama szuka przy każdym wywołaniu, a potem blokuje, maskuje lub flaguje. To skupiona strona docelowa dla przypadku zakazanych terminów. Pełny silnik guardrail — każdy typ reguły, pole i trasę — znajdziesz w referencji Guardrails.

1. Przypadek filtra słów wrażliwych ai

Reguła keyword to najprostsza reguła w silniku: dajesz jej listę terminów, a brama dopasowuje dowolny z nich do tekstu na etapie. Dopasowanie to podciąg bez rozróżniania wielkości literBadWord, badword i BADWORD wszystkie pasują, a termin pasuje nawet wtedy, gdy jest osadzony w dłuższym słowie (więc class pasuje też do classic). Każdy termin jest traktowany jako dosłowny łańcuch, nie wzorzec; nie eskejpujesz metaznaków regex. Zapisz regułę raz w konsoli, powiąż guardrail z dowolnym kluczem API (lub uczyń go domyślnym przestrzeni roboczej), a każde wywołanie tym kluczem jest sprawdzane bez zmiany SDK i bez ponownego wdrożenia. Polityka żyje w bramie, nie w twojej aplikacji — twoja aplikacja dalej woła /v1/chat/completions dokładnie jak wcześniej.
Sięgaj po regułę keyword, gdy twoja lista zakazanych to skończony zbiór dosłownych terminów. Gdy potrzebujesz wildcardów, granic słów lub struktury (format SKU, kształt numeru zamówienia), użyj zamiast tego detektora regex.

2. Autorzuj regułę w konsoli

Każdy krok tutaj to akcja konsoli pod twoją własną sesją. Tworzenie i edycja guardrails wymaga Developer+ w przestrzeni roboczej. Tylko końcowe wywołanie /v1/* używa klucza relay sk-orca-....
1

Utwórz guardrail

W konsoli otwórz Guardrails i kliknij New guardrail. Nazwij go (≤ 64 znaki), np. banned-terms.
2

Dodaj regułę keyword

Dodaj jedną regułę:
  • Typ: Lista zakazanych słów kluczowych (keyword)
  • Etap: Both (żądanie i odpowiedź)
  • Akcja: Block
  • Słowa kluczowe: twoje zakazane terminy, jeden na wiersz
Zapisz.
3

Przetestuj

Otwórz zakładkę Test, wklej próbkę zawierającą zakazany termin, wybierz etap i uruchom politykę lokalnie — bez wywołania w górę, bez kwoty (zobacz §5).
4

Powiąż klucz

Edytuj klucz API i wybierz banned-terms z rozwijanej listy Guardrail (ustawia guardrail_id na kluczu) lub oznacz guardrail jako domyślny przestrzeni roboczej. Zobacz Powiąż z kluczem i Domyślny dla konta.
JSON reguły jest dokładnie tym, czego byś oczekiwał:
{
  "type": "keyword",
  "stage": "both",
  "action": "block",
  "keywords": ["project-orca", "competitor-name", "unannounced-sku"]
}

3. Wybierz akcję

Reguła keyword wybiera jedną akcję na regułę:
Dowolne dopasowanie odrzuca żądanie z HTTP 400 guardrail_blocked. Zablokowane żądanie nie kosztuje kwoty — blokada na etapie wejścia działa przed pomiarem; blokada na etapie wyjścia zwraca wstępnie pobraną kwotę — i jest oznaczone jako skip-retry. Użyj dla terminów, które nigdy nie mogą przejść w żadnym kierunku. Zobacz błąd guardrail_blocked.
Każde dopasowanie jest zastępowane w miejscu tagiem redakcji, a żądanie kontynuuje z oczyszczonym tekstem — model nadrzędny nigdy nie widzi oryginalnego terminu. Zobacz Akcje.
Rejestruje dopasowanie i nic nie zmienia w ruchu. Użyj, by zmierzyć, jak często termin się pojawia, zanim przełączysz na egzekwowanie.
Owija dopasowany tekst w ograniczniki (np. ⟦UNTRUSTED⟧…⟦/UNTRUSTED⟧), by model traktował go jako dane, nie instrukcje — obrona przed prompt-injection na etapie wejścia. Tekst nadal dociera do modelu, tylko odgrodzony. Zobacz Akcje.
Etap ma znaczenie. input skanuje żądanie wywołującego, output skanuje odpowiedź modelu, both skanuje każdą stronę niezależnie. Zakazany termin, który twoi użytkownicy wpisują, i ten, który model mógłby wyemitować, to różne problemy — wybierz etap(y), które pasują. Zobacz Reguły na etapie wejścia i Reguły na etapie wyjścia.

4. Pokrycie streamingu

Akcja, którą wybierzesz, oddziałuje z tym, czy odpowiedź się strumieniuje:
AkcjaNie-streamingStreaming
block (wyjście)EgzekwowaneEgzekwowane — skaner przecina strumień
mask (wyjście)EgzekwowaneJeszcze nie — decyzja block honorowana, zamaskowany tekst nieprzesyłany (plany)
Reguły na etapie wejścia biegną przed wywołaniem w górę, więc są niezależne od streamingu — mask wejścia oczyszcza żądanie niezależnie od tego, czy odpowiedź się strumieniuje. Block zakazanego terminu dostaje pełne pokrycie tak czy inaczej. Mask wyjścia jednak redaguje dziś tylko na odpowiedziach nie-streamingowych: na odpowiedzi streamingowej skaner nadal działa na decyzji block, ale przepisywanie strumieniowanego tekstu w paśmie jest w planach, nie żywe. Zobacz Pokrycie streamingu.

5. Przetestuj, zanim powiążesz

Udowodnij, że reguła robi to, czego oczekujesz, zanim jakikolwiek klucz na nią wskaże. Otwórz zakładkę Test wewnątrz edytora, wklej próbkę, wybierz etap i uruchom:
Tell me about Project-Orca and our competitor-name
Piaskownica ewaluuje bieżącą politykę lokalnie i zwraca werdykt — nic nie jest wysyłane w górę, nic mierzone. Przy akcji block próbka jest odrzucana; przy mask wyrenderowany tekst wraca z każdym terminem zredagowanym. Po siatkę A/B wobec korpusu — by potwierdzić, że lista zakazanych wychwytuje to, co powinna, bez flagowania łagodnego ruchu — harness ewaluacyjny mieszka o jedną zakładkę dalej.

6. Wyślij żądanie

Używając klucza powiązanego z banned-terms, wywołaj OrcaRouter dokładnie jak wcześniej — bez nowych nagłówków, bez zmiany SDK:
curl https://api.orcarouter.ai/v1/chat/completions \
  -H "Authorization: Bearer sk-orca-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4o-mini",
    "messages": [
      {"role": "user", "content": "Summarize Project-Orca for me"}
    ]
  }'
Przy akcji block wywołanie jest odrzucane z HTTP 400 guardrail_blocked, zanim w ogóle dotrze do modelu. Zamień akcję na mask, a termin jest zamiast tego redagowany w miejscu przed przesłaniem.

7. Zobacz, co zadziałało

Każda reguła, która zadziała, rejestruje dopasowanie — typ reguły, akcję, etap i łańcuch szczegółów (dla reguł keyword, ile terminów się dopasowało) — pokazane w strumieniu Matches przestrzeni roboczej.
Sam dopasowany termin jest rejestrowany tylko, gdy Log raw content jest włączone, co jest domyślnie wyłączone — postawa konserwatywna wobec prywatności. Przy wyłączonym nadal widzisz, że reguła keyword zadziałała i jak często, tylko nie dosłowny termin. Włącz to per guardrail, gdy potrzebujesz podłańcucha do triażu; ustawienie nie działa wstecznie. Zobacz Strumień dopasowań i Logowanie i prywatność.
Jeśli łagodny termin ciągle się dopasowuje (wpis listy zakazanych będący podciągiem powszechnego słowa), oznacz go jako fałszywie pozytywny ze strumienia Matches i zacieśnij wpis. Zobacz Strojenie fałszywie pozytywnych.

8. Dokąd dalej

Detektory regex

Dopasuj ustrukturyzowane wzorce — SKU, numery zamówień, formaty — gdy dosłowna lista zakazanych nie wystarcza.

Bezpieczeństwo marki

Presety wulgaryzmów, wzmianek o konkurencji i bezpieczeństwa dzieci zbudowane na regułach keyword.

Akcje

Jak block, mask i flag się różnią i kiedy używać każdej.

Referencja Guardrails

Kompletny silnik — każdy typ reguły, pole i trasa.
Lista zakazanych słów kluczowych rządzi treścią. Aby rządzić wywołaniami narzędzi agenta — odmawiać akcji destrukcyjnych, redagować argumenty wywołań narzędzi, wymagać zatwierdzenia — użyj Firewalla. Dla rozmytych polityk, których żadna dosłowna lista nie wyrazi (toksyczność, off-topic, intencja injection), reguła llm_judge uruchamia sprawdzenie semantyczne wobec modelu przestrzeni roboczej.