PrivacyTraceは、ユーザーの会話にアクセスすることなく、MCPツール呼び出しトレースからユーザープロファイルを推論することを研究しています。このベンチマークには、旅行、健康、ショッピング、キャリア学習にわたる1,000件の合成ユーザープロファイル、4,000件のエージェント軌跡、25台のMCPサーバーが含まれています。
リファレンス環境では、Linux上のPython 3.10を使用します:
git clone https://github.com/AI45Lab/PrivacyTrace.git
cd PrivacyTrace
PYTHON=python3.10 bash scripts/setup_environment.sh
source .venv/bin/activate
モデル呼び出しを行うには、.env.example を .env にコピーし、エンドポイントと
API キーを設定してください。ライブ MCP ツールを使用する場合は、.env.mcp.example から .env.mcp も設定し、
python mcp_servers/install.py --install-dependencies を実行してください。
依存関係の詳細については、環境セットアップを参照してください。
完全なデータセットは Hugging Faceでホストされています。 データセットページでアクセスをリクエストしてください。ダウンロードには手動承認が必要です。 承認後:
hf auth login
python scripts/download_data.py
python -m eval.reproduce_results --input-root .
最後のコマンドは、モデル呼び出しを行わずに、ダウンロードした実験記録から結果テーブルと図を再構築します。出力は artifacts/results/ に書き込まれます。アーカイブの内容についてはデータアクセスを、報告された結果については論文を参照してください。
設定済みのモデルエンドポイントと MCP サービスを使用して、以下のステージを実行します:
# 1. Generate population-calibrated profiles.
python -m generate.generate_profiles --count 1000
# 2. Generate task scenarios in four domains.
python -m generate.generate_scenarios \
--n 1000 \
--input artifacts/profile_runs/latest/profiles.jsonl \
--output artifacts/scenario/cases.jsonl
# 3. Collect and package agent trajectories.
python -m agent.run_scenarios \
--profiles artifacts/profile_runs/latest/profiles.jsonl \
--scenarios artifacts/scenario/cases.jsonl \
--domains travel health shopping career_learning
python -m agent.package_trajectories --source-dir artifacts/trajectory_runs/latest
# 4. Infer user profiles from the traces.
python -m attack.run_attacks \
--input artifacts/trajectories/trajectories.jsonl \
--output-dir artifacts/privacy_attacks/run \
--attack-mode two_stage
コマンドガイドでは、スコアリング、観測チャネル実験、クロスドメイン推論について説明しています。各エントリポイントの引数については、それぞれ --help を使用してください。
| ディレクトリ | 内容 |
|---|---|
generate/ | プロファイル合成、母集団キャリブレーション、シナリオ生成 |
agent/ | ユーザーシミュレータ、MCPエージェント、トラジェクトリの収集とパッケージング |
attack/ | プロファイル推論とチャネル/スコープ実験 |
eval/ | セマンティックスコアリング、結果分析、再現 |
llm/ | モデルプロバイダーとリクエストクライアント |
mcp_servers/ | MCPサーバーカタログ、アダプター、上流依存関係 |
config/ | ドメイン設定、ポリシー、ツールスキーマ |
data/ | 統計参照入力とキャリブレーションターゲット |
examples/ | 小規模なサンプルタスクレコード |
scripts/ | 環境セットアップとデータセットのダウンロード |
docs/ | 使用方法と手法のドキュメント |
tests/ | ユニットテスト |
データのドキュメントについては、データセットカードを参照してください。 プロジェクトウェブサイトは専用リポジトリで管理されています。
未定。サードパーティコンポーネントは元のライセンスを保持します。THIRD_PARTY_NOTICES.mdを参照してください。