disarmBotは、Microsoftが開発しているOSSのAIエージェントフレームワーク:AutoGenを使用し複数のAI Agentを立て、RAG技術により引き出されたMITRE ATT&CKの戦略に基づいて偽情報に関する議論を自動生成した後、ユーザに結論を返すBotです。
日本語・英語・中国語に対応しています。
偽情報対策のフレームワークであるDISARM Disinformation TTP Frameworkに基づいた情報を提供します。
[JSAC 2025 LT] Introduction to MITRE ATT&CK utilization tools by multiple LLM agents and RAG
disarmBotは、Discord上に導入できるBotです。ユーザがコマンドを入力することで複数のLLMエージェント(GPT-4)が自動的に立ち上がり、応答します。また、DISARM(Disinformation Analysis and Response Measures)TTP Frameworksに基づいており、DISARMはCTIの「理論」にあたるMITRE ATT&CKに基づいています。つまり、理論から公助に向けたLLMによる実践的CTI利活用のための施策です。
複数の異なる戦術を学習したLLMエージェントが協力し、attacker_assistant、defender_assistant、user、skeptics、solution architect、OSINT Specialistの視点から偽情報フレームワークに基づいた戦術的・技術的な対話を行います。対話を通じてエージェント同士の議論を通じた情報の深堀りを行います。disarmBotは、これらの条件を満たし、ユーザーが多様な意見に触れることができる情報環境を提供します。これにより、ユーザーは自ら考え、情報を消化するクリティカルな能力を高めることができます。仮に、想定ユーザーの要求が異なる立場や抽象度であっても個別最適化可能で、かつ4A(Accurate,Audience Focused,Actionable,Adequate Timing)条件が整った質の高いインテリジェンスを、防衛マインドから脱却し、プロアクティブな形で提供できることを示します。
【5つのAI Agentのイメージ】
【AutoGenにおけるGroup Chatのイメージ】
ソフトウェア | バージョン |
---|---|
Python | 3.12.7 |
autogen-agentchat | 0.2.37 |
プロジェクトのディレクトリ構成
.
├── README.md
├── bot.py # disarm botの日本語版プログラム
├── bot_en.py # disarm botの英語版プログラム
├── bot_ch.py # disarm botの中国語版プログラム
├── extract.py # データ処理スクリプト
└── generated_pages # DISARM Frameworksのデータ
├── actortypes
├── counters
├── detections_index.md
├── disarm_blue_framework.md
├── その他のファイル...
10 directories, 33 files
-
仮想環境の作成
以下のコマンドで仮想環境を作成します。python3 -m venv .venv
-
仮想環境の有効化
仮想環境をアクティブにします。-
Bashの場合:
source ./.venv/bin/activate
-
Fishの場合:
. ./.venv/bin/activate.fish
-
-
依存パッケージのインストール
必要なパッケージをインストールします。pip install -r requirements.txt
-
OpenAIのAPI(GPT-4)かazure APIを取得してください API keys - OpenAI API
-
実行する 日本語版か英語版か中国語版を選択して実行してください。
dotenv run python3 bot_en.py
-
Discordでの動作確認
Discord上で/discuss msg
コマンドを入力し、msg内にメッセージを入力してください。 自動でスレッドが生成され、ボットが会話を開始するか確認してください。
-
環境変数ファイル(.env)の作成
プロジェクトフォルダに.env
ファイルを作成し、以下のように記述します(詳細は環境変数の設定を参照)。 OpenAIのAPIを使う場合OPENAI_API_KEY=xxxxx DISCORD_TOKEN=xxxxx BASE_URL=https://xxxxxxxx.openai.azure.com/ DEPLOYMENT= MODEL=gpt-4o-mini VERSION=2024-08-01-preview API_TYPE=openai AUTOGEN_USE_DOCKER=0
環境変数名 | 説明 | 取得方法 |
---|---|---|
OPENAI_API_KEY | Azure Open AIのAPIキー | Azure Open AI Studio |
DISCORD_TOKEN | DiscordのBotトークン | Discord Developer Portal |
BASE_URL | AzureのエンドポイントURL | Azure Open AIのDevelopタブ |
.env
ファイルが存在しない場合は、上記の「環境変数の設定」を参考にファイルを作成してください。
- 仮想環境が起動しない: 仮想環境が正しく作成されているか確認し、パスを再確認してください。
- 依存パッケージのインストールエラー:
requirements.txt
が最新か確認し、pip install -r requirements.txt
を再度実行してください。
(トップへ)