
# AIによるコンテキスト証拠合成でリアルタイムベンダーアンケートに対応

セキュリティおよびコンプライアンス質問票は、SaaSの販売サイクルにおいてボトルネックとなっています。ベンダーは、[SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2)、[ISO 27001](https://www.iso.org/standard/27001)、[GDPR](https://gdpr.eu/) など、業界固有のコントロールに関する数十項目の詳細な質問に対し、数日ではなく数時間で回答することが求められます。従来の自動化ソリューションは、文書リポジトリから静的なスニペットを取得するだけで、チームはそれらを手作業で組み合わせ、関連性を検証し、欠落したコンテキストを追加しなければなりません。その結果、依然として膨大な人的作業が必要で、エラーが起きやすい脆弱なプロセスになります。

**Contextual Evidence Synthesis（CES）** は、単なる検索を超えるAI駆動のワークフローです。単一段落を取得するのではなく、**質問の意図を理解し**、**関連証拠の集合を組み立て**、**動的コンテキストを付加**し、**監査可能な単一回答を生成**します。主な要素は次のとおりです。

1. **統合証拠ナレッジグラフ** – ノードはポリシー、監査所見、サードパーティの証明書、外部脅威インテリジェンスを表し、エッジは「covers」「derived‑from」「expires‑on」などの関係を捕捉します。  
2. **検索強化生成（RAG）** – 大規模言語モデル（LLM）に高速ベクトルストアを組み合わせ、最も関連性の高い証拠ノードをグラフから検索します。  
3. **コンテキスト推論レイヤー** – コンプライアンス固有のロジック（例：「制御が ‘in‑progress’ とマークされている場合、是正タイムラインを追加」）を付加する軽量ルールエンジン。  
4. **監査トレイルビルダー** – 生成されたすべての回答は、基になるグラフノード、タイムスタンプ、バージョン番号に自動的にリンクされ、改ざん防止の証拠トレイルを作成します。

この結果、**リアルタイムでAIが作成した回答**が得られ、レビュー・コメント・ベンダーポータルへの直接公開が可能になります。以下では、アーキテクチャ、データフロー、実装ステップを順に解説します。

---

## 1. 従来の検索が陥りがちな問題点

| 痛点 | 従来のアプローチ | CES の優位性 |
|------|-------------------|--------------|
| **静的スニペット** | PDF 文書から固定条項を抽出 | 複数条項・更新情報・外部データを動的に組み合わせ |
| **コンテキスト喪失** | 質問のニュアンスを認識しない（例：「インシデント対応」vs「災害復旧」） | LLM が意図を解釈し、正確なコンテキストに合致する証拠を選択 |
| **監査可能性** | 手作業のコピー＆ペーストで追跡不能 | すべての回答がグラフノードとバージョンIDに紐付く |
| **スケーラビリティ** | 新ポリシー追加時に全文書を再インデックス | グラフエッジの追加は増分で済み、RAG インデックスは自動更新 |

---

## 2. CES のコアコンポーネント

### 2.1 証拠ナレッジグラフ

グラフは唯一の真実情報源です。各ノードは次を保持します。

* **コンテンツ** – 生テキストまたは構造化データ（JSON、CSV）。  
* **メタデータ** – ソースシステム、作成日、コンプライアンスフレームワーク、有効期限。  
* **ハッシュ** – 改ざん検知用の暗号学的指紋。

エッジは論理的関係を表現します。

```mermaid
graph TD
    "Policy: Access Control" -->|"covers"| "Control: AC‑1"
    "Audit Report: Q3‑2024" -->|"evidence‑for"| "Control: AC‑1"
    "Third‑Party Attestation" -->|"validates"| "Policy: Data Retention"
    "Threat Intel Feed" -->|"impacts"| "Control: Incident Response"
```

> **注**: Mermaid 構文ではすべてのノードラベルを二重引用符で囲む必要があります。エスケープは不要です。

### 2.2 検索強化生成（RAG）

質問票が届くと、システムは次を実行します。

1. **意図抽出** – LLM が質問を解析し、構造化表現（例：`{framework: "SOC2", control: "CC6.1", domain: "Security Incident Management"}`）を生成。  
2. **ベクトル検索** – 埋め込みベクトルを用いて、FAISS や Elastic Vector から上位 k 件の関連ノードを取得。  
3. **プロンプト渡し** – 取得した証拠スニペットと「引用を保持しつつ簡潔に合成する」指示を LLM に渡す。

### 2.3 コンテキスト推論レイヤー

検証ロジックを検索と生成の間に挟みます。

```goat
rule "Include remediation timeline if control status is in‑progress"
when
    ControlStatus(status == "in‑progress")
then
    add_context("Current remediation ETA: {{eta}} days")
end
```

このエンジンはさらに次を強制できます。

* **有効期限チェック** – 有効期限切れの証拠を除外。  
* **規制マッピング** – 複数フレームワークへの同時適合を保証。  
* **プライバシーマスク** – 敏感情報を LLM に渡す前に除去。

### 2.4 監査トレイルビルダー

各回答は **COMPOSITE OBJECT** として保存されます。

```json
{
  "answer_id": "ans-2025-10-22-001",
  "question_id": "q-12345",
  "generated_text": "...",
  "evidence_refs": [
    {"node_id": "policy-AC-1", "hash": "a5f3c6"},
    {"node_id": "audit-2024-Q3", "hash": "d9e2b8"}
  ],
  "timestamp": "2025-10-22T14:32:10Z",
  "llm_version": "gpt‑4‑turbo‑2024‑09‑12"
}
```

この JSON は不変ストレージ（WORM）に格納され、コンプライアンスダッシュボード上でマウスオーバーにより、各主張を裏付ける証拠を即座に参照できます。

---

## 3. エンド・ツー・エンド データフロー

```mermaid
sequenceDiagram
    participant User as Security Analyst
    participant UI as Procurize Dashboard
    participant CES as Contextual Evidence Synthesizer
    participant KG as Knowledge Graph
    participant LLM as Retrieval‑Augmented LLM
    participant Log as Audit Trail Store

    User->>UI: 新しい質問票をアップロード (PDF/JSON)
    UI->>CES: 質問を解析しインテントオブジェクトを作成
    CES->>KG: 各インテントでベクトル検索
    KG-->>CES: 上位 k 件の証拠ノードを返す
    CES->>LLM: 証拠と合成ルールを含むプロンプトを送信
    LLM-->>CES: 生成された回答
    CES->>Log: 証拠参照付きで保存
    Log-->>UI: 証拠リンク付き回答を表示
    User->>UI: レビュー・コメント・承認
    UI->>CES: 承認済み回答をベンダーポータルへ送信
```

シーケンス図は **人的レビュー** が重要なチェックポイントであることを示しています。アナリストは AI が生成したテキストにコメントを付けたり、必要に応じて上書きしたりでき、スピードとガバナンスの両立が実現します。

---

## 4. 実装ブループリント

### 4.1 ナレッジグラフの構築

1. **グラフデータベース選定** – Neo4j、JanusGraph、Amazon Neptune など。  
2. **既存資産のインジェスト** – ポリシー（Markdown/PDF）、監査報告（CSV/Excel）、サードパーティ証明書（JSON）、脅威インテリジェンス（STIX/TAXII）。  
3. **埋め込み生成** – `all-MiniLM-L6-v2` などの sentence‑transformer で各ノードテキストをベクトル化。  
4. **ベクトルインデックス作成** – FAISS または Elastic Vector に格納し高速最近傍検索を実現。

### 4.2 検索強化生成レイヤーの構築

* プライベート API ゲートウェイ経由で LLM エンドポイント（OpenAI、Anthropic、または自己ホスト Llama‑3）をデプロイ。  
* LangChain や LlamaIndex を用いて、`{{question}}`、`{{retrieved_evidence}}`、`{{compliance_rules}}` のプレースホルダーを持つプロンプトテンプレートを作成。  

### 4.3 推論ルールの定義

Durable Rules、Drools、または軽量 Python DSL で実装。例:

```python
rules = [
    {
        "condition": lambda node: node["status"] == "expired",
        "action": lambda ctx: ctx["exclude"](node)
    },
    {
        "condition": lambda node: node["framework"] == "SOC2" and node["control"] == "CC6.1",
        "action": lambda ctx: ctx["add_context"]("Incident response plan last tested on {{last_test_date}}")
    }
]
```

### 4.4 監査可能なストレージ

* 変更不可 S3 バケット（Object Lock 有効）またはブロックチェーン連携台帳に **append‑only** で保存。  
* 各回答に対して **SHA‑256** ハッシュを生成し、改ざん防止証拠とする。

### 4.5 UI 連携

* Procurize ダッシュボードに各質問行の横に **「AI‑合成」** ボタンを追加。  
* 折りたたみビューで以下を表示:  
  * 生成された回答。  
  * インライン引用（例：`[Policy: Access Control]`）がグラフノードへリンク。  
  * バージョンバッジ（`v1.3‑2025‑10‑22`）。

### 4.6 監視と継続的改善

| 指標 | 測定方法 |
|------|----------|
| **回答レイテンシ** | 質問受領から回答生成までのエンドツーエンド時間 |
| **引用カバレッジ** | 回答文のうち引用が付与された文の割合 |
| **人的編集率** | AI 生成回答がアナリストにより修正された割合 |
| **コンプライアンスドリフト** | 有効期限切れ証拠が原因で回答が古くなる件数 |

Prometheus にメトリクスを送信し、閾値超過時にアラートを発し、ルールエンジンの自動チューニングにフィードバックします。

---

## 5. 実際の効果

1. **回答時間の短縮** – チームは **70‑80 %** の平均応答時間削減（48 時間から約10 時間へ）を実現。  
2. **精度向上** – 証拠リンク付与により事実誤認が **約95 %** 減少。  
3. **監査対応資料の即時生成** – SOC 2 や ISO 27001 の証拠一覧作成がワンクリックで完了。  
4. **知識の再利用性** – 新たな質問票でも既存証拠を自動的に再利用し、作業の二度手間が回避。

金融テック企業の事例では、CES 導入後にベンダーリスクチームの処理件数が **4 倍** に増加し、追加人員を雇用せずに済んだと報告されています。

---

## 6. セキュリティ＆プライバシー考慮事項

* **データ分離** – ベクトルストアと LLM 推論はインターネットへの出入口を持たない VPC 内で実行。  
* **ゼロトラストアクセス** – 各アナリストセッションには短命 IAM トークンを付与。  
* **差分プライバシー** – 外部脅威インテリジェンスを利用する際は、内部ポリシー情報が漏洩しないようノイズ付与を実施。  
* **モデル監査** – すべての LLM リクエストとレスポンスをログに残し、将来のコンプライアンスレビューに備える。

---

## 7. 将来の拡張ロードマップ

| 項目 | 内容 |
|------|------|
| **フェデレーショングラフ同期** | パートナー企業と選択的にノードを共有し、データ主権を保持 |
| **Explainable AI オーバーレイ** | 質問から回答までの証拠経路を DAG で可視化 |
| **多言語対応** | フランス語、ドイツ語、日本語向けにマルチリンガル埋め込みを導入 |
| **セルフヒーリングテンプレート** | コントロールのポリシー変更を検知し、質問票テンプレートを自動更新 |

---

## 8. 開始チェックリスト

1. **証拠ソースのマッピング** – ポリシー、監査報告、証明書、インテリジェンスの一覧化。  
2. **グラフデータベースの構築** と資産インジェスト。  
3. **埋め込み生成とベクトル検索サービスの設定**。  
4. **RAG ラッパー付き LLM のデプロイ**（LangChain / LlamaIndex）。  
5. **組織固有のコンプライアンスルール定義**。  
6. **Procurize への統合** – 「AI‑合成」ボタンと監査トレイル UI コンポーネントの追加。  
7. **パイロット実施** – 限定的な質問票でレイテンシ、編集率、監査可能性を測定。  
8. **イテレーション** – ルール調整、証拠拡充、フレームワーク追加で拡大。

このロードマップに従うことで、時間と労力のかかる手作業プロセスを **継続的にAI拡張されたコンプライアンスエンジン** に変換でき、ビジネスの成長に合わせたスケーラビリティとガバナンスを実現します。