ここにあるすべては読み取り専用かサンドボックスです — ユーザーに見えるブロックなし、
本番トラフィックへの影響なし。(キーワード、正規表現、PII ルールは完全にローカルで
実行されます;
llm_judge ルールは依然として設定されたモデルを呼び出すため、judge
ポリシーに対する eval はその呼び出しを行います。)要点は、あなたの条件で、ローンチ
前に物事を壊すことです。1. ローンチ前に AI エージェントをレッドチームする方法
ローンチ前のレッドチームは 3 つの質問に答え、OrcaRouter にはそれぞれに 1 つのツールが あります:私のガードレールは攻撃を捕捉するか?
ガードレールの Eval ハーネスをバンドルされた敵対的コーパスに対して実行し、
precision / recall / F1 を読み返します。
私のファイアウォールは何を壊すか?
シャドウモードをオンにして、どの実際のツール呼び出しが denyされるかを — まだ
どれも deny せずに — 監視します。
よりタイトな姿勢は安全か?
自律性レベルをシミュレートして、適用前に、あなたのトラフィックに対してそれが
何を変えるかを正確にプレビューします。
2. 敵対的コーパスに対してガードレールをスコアリングする
コンテンツポリシーが攻撃者との接触を生き延びるかを知る最速の道は、既知の攻撃のコーパスを それに投げつけてスコアを読むことです。ガードレールエディタの Eval タブはまさにそれを 行います:コーパス内のすべてのサンプルをあなたの現在のポリシーを通して再生し、判定を 各サンプルの期待される結果と比較します — コーパスをローカルであなたのルールに対して 再生し、決してライブトラフィックに対してではなく。 OrcaRouter は、あなたが自分のものを調達しなくて済むよう、バンドルされたレッドチーム コーパスを出荷しています。その中には:| コーパス | それが何か |
|---|---|
advbench_harmful_behaviors | 典型的な敵対的サフィックスのターゲットセット — すべての行はガードレールがブロックすべき安全でないリクエスト。 |
anthropic_hh_redteam | アシスタントに対する実際のマルチターンの人間レッドチーム書き起こし。 |
deepset_prompt_injections | ラベル付けされたプロンプトインジェクション vs 良性リクエスト — 入力ステージブロックのための precision/recall ベースライン。 |
databricks_dolly_benign | 純粋な良性ベースライン:過度に厳格なポリシーはこれらをひとつもブロックすべきではありません。 |
deepset_prompt_injections コーパスに対して eval を実行します:
- TP / FP / FN / TN — 真/偽の陽性と陰性、ここで「偽陽性」には、攻撃を間違った アクションクラスで捕捉すること(例:ブロックを期待したのにマスキング)が含まれます。
- Precision / Recall / F1 — 見出しの数値。低い recall は攻撃がすり抜けることを、 低い precision は良性トラフィックをブロックしていることを意味します。
プロンプトインジェクション防御がどこに存在するか。 バンドルされた Prompt-Injection
Basics プリセットは、flag アクションのキーワードルールです — ユーザーをブロックせずに、
一般的なジェイルブレイク句を表面化します。どのキーワードリストも捕捉しない意味論的な
インジェクション意図には、
llm_judge ルールを追加し、それを同じようにレッドチームします:
deepset_prompt_injections と anthropic_hh_redteam に対して eval し、F1 を読みます。
ガードレールリファレンスを参照。3. 実トラフィックに対してファイアウォールをシャドウモードにする
ガードレール eval は、固定コーパスに対してテキストをテストします。対照的にあなたの ファイアウォールは、エージェントが実際に何をするかの乱雑な現実に対してテストされる 必要があります — そしてローンチ前にそれを行う最も安全な道はシャドウモードです。 シャドウモードは、ファイアウォールにすべてのツール呼び出しを本番と全く同様に評価・ログ させるが、すべての強制判定をaudit に格下げするポリシーごとのフラグです。deny は、
理由に [shadow] would … が前置された audit 行になります。何もブロックされません。何も
壊れません。しかし Events フィードは、いまやあなたのポリシーが拒否したはずの
呼び出しの正確なリストを示します。
これがファイアウォールのレッドチームです:あなたの最も厳格な意図したポリシーを作成し、
シャドウモードをオンにし、現実的なローンチリハーサルでエージェントを実行し、それから
[shadow] would … イベントを読みます。
ポリシーを作成し、それをシャドウする
ポリシーを作成し、それをシャドウする
コンソール(Developer+)で強制ポリシーを構築します — ローンチのドライランには、
default_verdict を audit に設定し、出荷予定の deny ルールを追加します。
シャドウモードをオンに切り替えます。これでポリシー全体が、強制せずにログします。ローンチ当日のようにエージェントを動かす
ローンチ当日のようにエージェントを動かす
シャドウされたポリシーがアタッチされたキーで、ゲートウェイに対して実際のエージェント
フローを実行します。すべてのツール呼び出し — inbound、response、MCP ディスパッチ、
egress — が評価・ログされます。
would-block リストを読む
would-block リストを読む
Firewall → Events(Developer+)を開き、
[shadow] would … の理由でフィルタ
します。それぞれが、あなたのポリシーが本番で deny したはずの呼び出しです。すべての
エントリが denyしたい呼び出しであること — そして正当なものがリストにないこと — を
確認します。シャドウをオフにしてライブにする
シャドウをオフにしてライブにする
would-block リストがクリーンになったら、シャドウモードをオフにします。次にマッチする
呼び出しが本物で強制されます — 他の変更なし。
4. コミットする前によりタイトな姿勢をシミュレートする
3 番目のレッドチームの動きは最も安価です:より厳格な 自律性レベルを適用する前に、それを シミュレートします。シミュレータは、tight(または任意のレベル)を適用することが、
あなたのワークスペースの最近のトラフィックに対して何を変えるか — いくつの呼び出しが
deny に切り替わるか — を、単一のポリシー行も書き込まずにプレビューします。
tight の準備ができているか?」に答えます:プレビューが、あなたの
エージェントが依存する呼び出しへの拒否の壁を示すなら、go-live の後のインシデントでは
なく、go-live の前に和らげるべきルールがあります。
シミュレートはプレビューのみです — 決してあなたのポリシーを変更しません。自律性レベルの
適用は別個の Developer+ アクションであり、ライブの結果がそれでも驚かせる場合の
ワンクリックの取り消しを持つひとつのトランザクションです。
5. ローンチ前レッドチームチェックリスト
3 つのパスを組み合わせれば、ローンチゲートが得られます:| パス | ツール | グリーンの条件 |
|---|---|---|
| コンテンツポリシー | ガードレール Eval vs 攻撃 + 良性コーパス | 攻撃で高 recall、良性でブロックなし |
| アクションポリシー | ファイアウォール シャドウモード vs リハーサルトラフィック | すべての [shadow] would … が意図的 |
| カバレッジ | 観察モード + Discovered tools | 驚くツールがカバレッジギャップに座っていない |
| 姿勢 | ターゲット自律性レベルを シミュレート | プレビューが期待どおり |
https://api.orcarouter.ai/v1/... を呼び続けます。
6. 次のステップ
強制モード
Observe → shadow → enforce、このレシピがリハーサルする安全なロールアウト。
Secure Agents ベースライン
各自律性レベルが何を設定するか — そして
simulate がそれをどうプレビューするか。プロンプトインジェクション
あなたのガードレール eval がスコアリングしている脅威。
ライブにする
レッドチームが通った後の本番カットオーバー。
