1. Po co testować polityki guardrail ai, zanim powiążesz klucz
Polityka treści ma dwa tryby porażki, a ciągną w przeciwne strony:- Pominięcia — atak lub wyciek przemyka, bo żadna reguła nie zadziałała.
- Fałszywie pozytywne — łagodny prompt zostaje zablokowany lub zamaskowany, bo reguła jest zbyt szeroka.
Oba narzędzia biegną w całości w twojej sesji przez management API
(
/api/guardrail/*) — nigdy klucz relay. Ewaluują tekst lokalnie i nie
wysyłają nic w górę, więc uruchomienie testu nie kosztuje kwoty modelu.2. Zakładka Test — jedna próbka, natychmiastowy werdykt
Każdy edytor guardrail ma zakładkę Test. Wklej próbkę, wybierz etap (input lub output) i uruchom bieżący szkic polityki. Dostajesz pełną
decyzję — blocked, mutated, oczyszczony tekst sanitized i listę
violations — więc możesz udowodnić, że pojedyncza reguła robi to, czego
oczekujesz, przed zapisem.
Zakładka Test służy do “czy ta jedna reguła zrobiła właściwą rzecz”. Aby
zmierzyć politykę wobec setek promptów naraz, użyj Eval.
3. Zakładka Eval — oceń politykę wobec korpusu
Zakładka Eval uruchamia twój guardrail wobec korpusu oznaczonych próbek i raportuje, jak się ocenił: precyzja, czułość i F1 ogólnie i per kategoria, plus dokładne próbki, które pomylił. Użyj jej, by dostroić rubrykęllm_judge, udowodnić, że reguła block wychwytuje znaną rodzinę ataków, lub
wychwycić zbyt szeroki regex, zanim zacznie odrzucać dobry ruch.
Uruchomienie strumieniuje postęp w trakcie (jedno zdarzenie na ukończoną
próbkę) i persystuje wiersz uruchomienia, który możesz otworzyć ponownie
później — queued → running → complete, z regułami zamigawkowanymi w czasie
uruchomienia, więc późniejsza edycja guardrail nigdy nie przepisuje werdyktu
starego uruchomienia.
Dołączone korpusy
Zestawy red-team i łagodne wbudowane w bramę — prompt injection,
jailbreaki, PII/sekrety, wielojęzyczne, over-refusal. Bez konfiguracji.
Niestandardowy JSONL
Wgraj własny oznaczony zestaw, by zmierzyć politykę wobec twoich
rzeczywistych kształtów ruchu.
4. Jak wygląda korpus (JSONL)
Korpus to JSONL — jeden obiekt JSON na linię. Każda linia to oznaczona próbka:text do ewaluacji, stage, do którego należy, i expected_action,
który polityka powinna wyprodukować. Runner porównuje faktyczny werdykt
polityki z tą etykietą, by ocenić uruchomienie.
Referencja pól
Referencja pól
| Pole | Znaczenie |
|---|---|
id | Unikalny per wiersz. Wymagany — wiersze z pustym id są odrzucane jako zniekształcone. |
text | Prompt lub odpowiedź do ewaluacji. Wymagany. |
stage | input lub output — reguły którego etapu przepuścić przez próbkę. |
expected_action | block, mask, flag lub "" (łagodne — żadna akcja nieoczekiwana). |
category | Etykieta dowolnej formy, która grupuje metryki per-kategoria. |
Zniekształcone wiersze są tolerowane, nie po cichu
Zniekształcone wiersze są tolerowane, nie po cichu
Wiersz ze złym JSON lub brakującym
id/text jest pomijany i liczony,
nie fatalny — pojedyncza literówka nigdy nie wysadza całego uruchomienia.
Loader podbija swój bufor dla długich wielowierszowych promptów, więc
próbka z osadzonymi nowymi liniami wewnątrz jednego łańcucha JSON parsuje
się dobrze.5. Dołączone korpusy — zestawy red-team, zero konfiguracji
Brama dostarcza katalog wyselekcjonowanych korpusów, które możesz uruchomić natychmiast — każdy niesie swoje źródło, licencję, pokrycie językowe i podgląd próbki w wyborze. Są pogrupowane w 11 kategorii, które obejmują powierzchnię ataku, jaką widzi rzeczywisty ruch:| Kategoria | Co bada |
|---|---|
prompt_injection | Nadpisanie instrukcji i zgłoszenia injection pisane przez człowieka. |
jailbreak_single_turn | Prawdziwe jailbreaki z dziczy + akademicka baza zachowań. |
jailbreak_encoded_multiturn | Sondy base64 / ROT13 / leetspeak / payload-splitting. |
indirect_agent | Injection dostarczone przez wyjścia narzędzi do agenta używającego narzędzi. |
multilingual | Prompty red-team native-speakerów w wielu językach, w tym low-resource. |
pii_secrets | Emaile, SSN, karty, IBAN, klucze API, klucze AWS, JWT. |
toxicity | Prompty toksycznej generacji i kontrasty over-refusal. |
bias | Sondy stereotypów i dyskryminacji. |
hallucination | Adwersaryjne zestawy faktyczności / wierności. |
hazardous_knowledge | Sondy wiedzy dual-use chem / bio / cyber. |
over_refusal_benign | Bezpieczne prompty, które wyglądają niebezpiecznie — twój strażnik regresji fałszywie pozytywnych. |
Dołączony korpus
owasp_llm_top10 to oznaczony zestaw testowy obejmujący
rodziny ataków OWASP LLM Top 10 (prompt injection, jailbreaki, niebezpieczne
wyjście, eksfiltracja danych) — to korpus do uruchomienia evala wobec, nie
pakiet zgodności. Po pakiety frameworków, które materializują polityki, zobacz
compliance.6. Jeden konkretny przykład — eval presetu PII Shield
Powiedzmy, że zacząłeś od presetu PII Shield (pojedyncza regułapii,
mask) i chcesz potwierdzić, że wychwytuje kształty identyfikatorów, które
model mógłby wyemitować, zanim powiążesz go z kluczem. Uruchom go wobec
dołączonego korpusu pii_smoke.
Eval to akcja poziomu odczytu (POST /api/guardrail/:id/eval,
Member) — persystuje wiersz uruchomienia, ale nie mutuje żadnej polityki:
expected vs got), więc możesz
przeszukać korpus i naprawić regułę. Otwórz to ponownie w dowolnym momencie z
listy Runs (GET /api/guardrail/:id/eval/runs).
7. Niestandardowe korpusy — testuj wobec własnego ruchu
Dołączone zestawy dowodzą, że polityka obsługuje znane ataki. Aby udowodnić, że obsługuje twoje prompty, wgraj własny JSONL. Są trzy sposoby, by skierować eval na korpus, i rozwiązują się w tej kolejności:Wgranie ad-hoc (corpus_data)
Wgranie ad-hoc (corpus_data)
Przekaż blob JSONL zakodowany base64 inline w żądaniu eval. Wygrywa nad
wszystkim innym — iteruj na szkicowym zestawie bez zapisywania go w
przestrzeni roboczej.
Zapisany korpus (corpus_id)
Zapisany korpus (corpus_id)
Wgraj raz przez
POST /api/guardrail/eval/corpora (Developer+), potem
odwołuj się do niego po id w przyszłych uruchomieniach. Nazwa musi pasować
do ^[a-z][a-z0-9_]*$ i nie może przesłaniać dołączonej nazwy.Dołączony (corpus_name)
Dołączony (corpus_name)
Nazwij jeden z dostarczonych korpusów, jak w §6.
GET /api/guardrail/eval/corpora (Member); wgrywanie i usuwanie to
Developer+.
8. Czytanie wyniku
Runner klasyfikuje każdą próbkę do macierzy pomyłek i wyprowadza z niej metryki nagłówkowe:| Termin | Znaczenie |
|---|---|
| Czułość (Recall) | Z promptów, które powinny potknąć politykę, ile potknęło. Niska czułość = pominięcia. |
| Precyzja (Precision) | Z promptów, które polityka potknęła, ile powinno było. Niska precyzja = fałszywie pozytywne. |
| F1 | Średnia harmoniczna — jedna liczba, która karze niesymetryczne strojenie. |
9. Dokąd dalej
Strojenie fałszywie pozytywnych
Zamień listę failures w zacieśnioną politykę o niższym szumie.
Pokrycie streamingu
Które kombinacje etap/akcja trzymają na ruchu SSE — zweryfikuj, zanim na nich polegniesz.
Strumień dopasowań
Gdy żywe, każda reguła, która zadziała, ląduje tutaj — produkcyjny odpowiednik evala.
Wersjonowanie
Porównaj i wycofaj politykę, gdy eval powie ci, że ostatnia zmiana zregresowała.
Powiązane strony guardrail
Powiązane strony guardrail
Powiązane pojęcia i zagrożenia
Powiązane pojęcia i zagrożenia
Pełna referencja silnika
Pełna referencja silnika
Guardrails — każdy typ reguły, pole i trasa, w
tym API eval i korpusów.
