Copilot for Microsoft 365 について (4)

「Copilot for Microsoft 365 (以下「Copilot for M365」という)」のような AI ツールを組織内で使用する際には IT 部門の方たちはログなどの証跡がどのように取得されているかを気にされると思います。
いくら「責任ある AI」の原則の下、Copilot for M365 の処理内でチェックされているとしても「誰が」、「いつ」、「どのような」プロンプトを投げてどんなレスポンスが生成されているかを確認する必要が生じた際の手段を知っておくに越したことはありません。

# ログの取得について

最初にログですが、以下の公開情報にもあるような形で監査ログに記録されています。
[監査ログア クティビティ - Copilot アクティビティ](https://learn.microsoft.com/ja-jp/purview/audit-log-activities#copilot-activities)

その監査ログ上での Copilot for M365 のレコードの種類は「CopilotInteraction」となります。
|フレンドリ名|操作|説明|
|----|----|----|
|Copilot と対話しました|CopilotInteraction|ユーザーまたは管理者またはシステムが Copilot にプロンプトを入力しました。|

## 監査ログの検索と確認
そして以下は、Microsoft Purview コンプライアンスポータル上の「監査」(ログを検索する) 画面で、実際にログを取得して内容を確認している様子です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/124244/3fedbb52-9042-ebf0-dfa8-34ec2a871afa.png)

:::note
この監査の検索をする際に「アクティビティ - フレンドリ名」に「Copilot␣」と入力すると「Copilot と対話しました」が候補に出てきますので、それを検索条件に含めると Copilot for M365 のログを取得することができます。
:::

さらに、この中の一行をクリックすると画面右に詳細画面が表示され、誰がいつ Copilot for M365 を利用したかなどの詳細を確認することができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/124244/dfbd8e79-7eed-a74c-c145-570a2932c84f.png)

ちなみに、このログの中には以下の公開情報に記載されているようなデータが格納されています。
[Copilot 相互作用イベントの概要](https://learn.microsoft.com/ja-jp/office/office-365-management-api/copilot-schema)

このログを見ることで、何のアプリから Copilot for M365 が利用され、どんなファイルが参照されたかも確認することが可能です。

このように監査ログの中で Copilot for M365 が利用された状況を確認することができるのですが、どんなプロンプトが投げられて、どんなレスポンスが生成されたのかを知ることはできません。
そこで電子情報開示 (eDiscovery) 機能の登場です。

# プロンプトおよびレスポンスの確認方法について

前述の通り、ログにはプロンプトやレスポンスに関する情報は含まれていません。
そのため、通常の監査ログによる監視をしている状況では組織内のユーザーがどのようなプロンプトを投げているかを知る術はありません。
それを知ることができるのは電子情報開示 (eDiscovery) の機能を使った「コンテンツの検索」です。
これも Microsoft Purview コンプライアンスポータルのメニューにあります。

:::note
電子情報開示 (eDiscovery) 機能を使うためには、適切な管理ロールが必要です (既定では「グローバル管理者」であってもその権限を持っていませんのでご注意ください)。
:::

## コンテンツの検索
ここでは、「コンテンツの検索」画面の「検索」タブにある「新しい検索」ウィザードを使ってどのコンテンツを検索対象とするかを設定します。

まず、検索対象の「場所」として以下を選択肢に含めることが可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/124244/90997da1-e019-5a2a-f720-e8877b0d3d98.png)

ここで注目頂きたいのが Exchange メールボックスです。
ここに Teams の記載がある理由は、Teams のチャットメッセージが Exchange メールボックスの隠しフォルダーに格納されているからなのです。Teams のチャット機能自体は以下の公開情報にも記載がありますが、Azure 上に作られたサービスを活用しており、ストレージも Azure 上にあります。
[Microsoft Teams の保持の詳細](https://learn.microsoft.com/ja-jp/purview/retention-policies-teams)

このチャット・データが同様に Exchange メールボックスの隠しフォルダーにも登録されるのですが、通常の方法ではこのデータにアクセスすることができません。
そこからデータを検索・抽出できるのが「電子情報開示 (eDiscovery)」の機能という訳です。

設定作業に戻りますが、次に「検索条件の定義」ということでキーワードや各種の条件に応じた設定を行うことが可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/124244/668de6e0-fecd-2526-adf9-07c966c08a95.png)

その際に設定可能な項目は以下の公開情報を参照してください。
[電子情報開示のキーワード クエリと検索条件](https://learn.microsoft.com/ja-jp/purview/ediscovery-keyword-queries-and-search-conditions)

ここで設定した項目を使って検索を実行するのですが、実行後にしばらく待ち時間が生じます (この検索は、その検索条件が保持されているので「操作」メニューの「検索の再実行」から繰り返し実行することが可能です)。

## 結果のエクスポート
そこで得られた実行結果を「結果のエクスポート」からエクスポートすることが可能です。
以下の様な設定項目でエクスポートする内容を設定できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/124244/572362e7-9b66-332e-b7c2-bbb416fa5ef2.png)

設定後に「エクスポート」ボタンを押してジョブを実行すると、「コンテンツの検索」画面で「エクスポート」タブに移動してエクスポートが完了するのを待ちます。
しばらく待って、検索が完了するとエクスポートキーの項目に以下のような値が表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/124244/a35ddf43-e561-48cb-8a49-551202667f3b.png)

この値をクリップボードにコピーして、「結果のダウンロード」を選択します。

すると以下のダイアログボックスが表示されますので、先程のキーを貼り付けて、ダウンロード先のフォルダーを選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/124244/f6af3dc7-0911-282d-4172-0b41e4f60202.png)

その後、ダウンロードの進捗状況を表示するウィンドウが表示され、指定したフォルダー配下に以下の様なファイルやフォルダが作成されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/124244/6fb43d98-c204-3b40-9d2d-24ddb8f2e714.png)

ちなみに、Exchange フォルダー配下には .PST ファイルが置かれています。
これを Outlook クライアントから開くことで中に Copilot (職場向け) でのプロンプトやレスポンスの内容、さらにその生成段階で使用したファイルへの参照などが含まれています (ちなみに E5 ライセンスを保有しているユーザーは eDiscovery のプレミアム機能が使えるため、Copilot for M365 が参照したファイルの実体を保存しておくことが可能です)。

それ以外のファイルやフォルダーに関する詳細は以下の公開情報を参照してください。
[コンテンツ検索の結果のエクスポート](https://learn.microsoft.com/ja-jp/purview/ediscovery-export-search-results)

# まとめ
今回は、Copilot for M365 のログなど証跡に関する情報をお届けしました。
これらを知ることで Copilot for M365 や Teams のデータがどこに格納されているかといったデータ構造に興味を持って頂くキッカケになればと思います。