Skip to main content
Forge は、v1.3 で導入された Starfort のポリシーテスト機能です。v1.2 では答えられなかった問い — 自分の Guard Policy は本当に期待どおりに判定しているのか? — に答えます。各入力と、その入力が受けるべき判定をペアにした Test Dataset を登録し、Project Guardian に対して Experiment を実行すると、action クラスごとの accuracy が算出されます。失敗したケースは、ポリシーを手動で改善するためのシグナルになります。
Forge ナビゲーション項目と Add Dataset、Run Experiment ボタンがハイライトされた Project Guardian の Forge タブ

Forge は各 Project Guardian の中にあります — (1) Forge タブ、(2) Add Dataset、(3) Run Experiment

Forge は測定と可視化を行うだけで、ポリシーを代わりに修正することはありません。評価は expected action と actual action の決定論的(deterministic)な比較であり(LLM による判定なし)、ポリシーの修正は通常の Guard Policy の編集・バージョン管理フローをそのまま使います。

Test Dataset

Test DatasetProject Guardian(ポリシーをテストする対象)に従属します。1 つの Guardian に複数の dataset を持てます — 例:「PII 攻撃パターン」「正常入力」「エッジケース」。Dataset 名は所属 Guardian 内で一意であり、Guardian を削除するとその dataset とすべての結果も一緒に削除されます。 Dataset の各 item は 2 つの部分で構成されます: v1.4 の評価は最終 action のみを比較します。ポリシーコードと reason は失敗ケース分析のためにすべての結果とともに保存されますが、スコアには影響しません。

Dataset の登録

プロジェクトの Guardian で Forge を開き、dataset を作成します:
1

名前と説明

名前はその Project Guardian 内で一意である必要があります。
2

Guardian Action List

この dataset が評価対象とする action の集合(例: Pass / Mask / Block)— クラス別 accuracy はこの基準で算出されます。
3

Item のアップロード

CSV または JSONL ファイル — 各レコードが 1 つの item(input + expected_output)です。
4

Goal(任意)

0〜100% の accuracy 目標値。設定すると、この dataset のすべての Experiment に PASS / FAIL の判定が付きます: Total Accuracy ≥ Goal なら PASS。
アップロードされた JSONL ファイルと列マッピングを示す Add Test Dataset ダイアログの Dataset File ステップ

Item のアップロード — ファイルの列が各 item の入力、期待判定値、メタデータにマッピングされます

Goal 80% と PASS、MASK、BLOCK が選択された Add Test Dataset ダイアログの Evaluation ステップ

評価設定 — accuracy Goal と Guardian Action List

Dataset はバージョン管理されます。編集や再アップロードで新しいバージョンが作成され、以前のバージョンも保存されます。Experiment は任意のバージョン(デフォルト = 最新)で実行できます。

Experiment

Experiment は、選択したポリシー構成で 1 つの Test Dataset を Project Guardian に通し、結果を採点する 1 回の実行です。以下を設定します:
PII Basic ポリシーのバージョン 0.1.0 と input process type が選択された Run Experiment ダイアログの Configuration ステップ

Experiment の設定 — バージョンを 1 つ指定したポリシー、process type、Guardian から事前入力された model config

実行は**同期(synchronous)**です。完了まで blocking され(RUNNINGCOMPLETED または ERROR)、完了時に結果が表示されます。結果・トレース・スコアは永続保存され、過去の Experiment をいつでも再照会できます。

採点方法

各 item はレスポンスが到着した瞬間に判定されます — expected action vs actual action、正解か不正解か。Experiment は以下を報告します:
  • Total Accuracy — action が一致した item 数 / 全 item 数。
  • Pass / Mask / Block Accuracy — dataset の Action List にあるクラスごとの、expected action 基準の正解率。
  • PASS / FAIL — dataset に Goal がある場合のみ: Total Accuracy ≥ Goal なら PASS。
処理 6 件、不一致 4 件、Total Accuracy 33%、FAIL 判定と action ごとの精度を示す Run Experiment の結果ステップ

Experiment の結果 — この実行は 80% の Goal に未達(FAIL)で、action ごとの内訳がどこで失敗したかを正確に示しています(MASK・BLOCK 項目の未検出)

結果の保存先

Experiment のトレースは OpticonGuardian › dataset › Experiment の階層で記録され、本番トラフィックとは厳密に分離されます: forge environment タグ(本番トレースは default)、Experiment 名 = session、dataset 名 = user ID。本番の PASS / MASK / BLOCK メトリクスがテスト実行で汚染されることはなく、特定の Experiment のトレースだけを正確にフィルタリングできます。Starfort の Experiment 履歴には、Forge からトリガーした実行のみが表示されます。

失敗ケースからポリシーを改善する

Forge は、従来は本番トラフィックの事後分析に頼っていたループを、事前検証で閉じます:
1

失敗ケースを見つける

accuracy が低い Experiment で失敗した item(accuracy = 0)を開き、各トレースを確認します — 入力、expected action、actual action。
2

診断

パターンを探します: 欠落している PII カテゴリ、過検出/見逃しのある topic など。
3

ポリシーの修正

Guard Policy を修正し、新しいバージョンを発行します — 通常の編集・バージョン管理フローそのままです。
4

再実行して比較

同じ dataset で新バージョンの Experiment を実行します。Run を並べて比較すると accuracy の変化が見え — リグレッションを本番トラフィックに到達する前に捕捉できます。

権限

v1.4 の Forge は意図的にテキスト専用・rule-based です。ファイル/画像の dataset、LLM-as-judge 評価、自動ポリシー最適化はこのバージョンの範囲外です。