このリポジトリには、学術論文「Securing AI Agents with Information-Flow Control」に付随するJupyterノートブックが含まれています。 ノートブックはチュートリアルとして構成されており、論文で紹介された概念を読者が理解できるように説明しています。 これは、エージェント型タスクにおいてセキュリティポリシーを決定的に強制するメカニズムの実践的な実装を示し、読者が実験できる実行可能なコードに概念を落とし込んだものです。
このノートブックは、Azure OpenAI Chat Completions APIを使用してGPT-4oおよびGPT-4.1でテストされていますが、代わりにOpenAIエンドポイントを使用するように簡単に適応できます。
コードは、AZURE_ENDPOINT、API_VERSION、AZURE_DEPLOYMENTの定義を含む.env設定ファイルを使用して、クライアントのモデルエンドポイントを設定します。
提供されている.env.exampleファイルを.envにコピーし、必要に応じて編集してください。
ノートブックはMicrosoft Entra IDを使用してAzure OpenAI Serviceに認証しますが、必要に応じてキーベースの認証を使用するように簡単に適応できます。
便宜上、期待される出力を示す完全に評価済みのノートブックを提供していますが、読者が実際に手を動かして実験し、私たちの出力を再現できるよう、独自のエンドポイントを設定することをお勧めします。
この作品を引用する場合は、以下の形式で引用してください。
@misc{securing_ai_agents_with_ifc,
title = {Securing {AI} Agents with Information-Flow Control},
author = {Costa, Manuel and
K{\"o}pf, Boris and
Kolluri, Aashish and
Paverd, Andrew and
Russinovich, Mark and
Salem, Ahmed and
Tople, Shruti and
Wutschitz, Lukas and
Zanella-B{\'e}guelin, Santiago},
year = {2025},
eprint = {2505.23643},
archivePrefix = {arXiv},
primaryClass = {cs.CR},
doi = {10.48550/arXiv.2505.23643}
}
このプロジェクトは、貢献と提案を歓迎します。 ほとんどの貢献には、あなたの貢献を使用する権利が実際にあり、その権利を私たちに与えることを宣言する Contributor License Agreement(CLA)への同意が必要です。詳細については、Contributor License Agreementsをご覧ください。
プルリクエストを送信すると、CLAボットが自動的にCLAの提供が必要かどうかを判断し、PRを適切に装飾します(例:ステータスチェック、コメント)。ボットから提供される指示に従ってください。この操作は、当社のCLAを使用するすべてのリポジトリで一度だけ行う必要があります。
このプロジェクトは、Microsoft Open Source Code of Conductを採用しています。 詳細については、Code of Conduct FAQを参照するか、 追加の質問やコメントがある場合は[email protected]までお問い合わせください。
このプロジェクトには、プロジェクト、製品、またはサービスに関する商標またはロゴが含まれる場合があります。Microsoftの 商標またはロゴの許可された使用は、Microsoft's Trademark & Brand Guidelinesに従う必要があり、これに従わなければなりません。 このプロジェクトの修正版でのMicrosoftの商標またはロゴの使用は、混乱を引き起こしたり、Microsoftの後援を示唆したりしてはなりません。 第三者の商標またはロゴの使用は、それらの第三者のポリシーに従うものとします。