こんにちは!横浜情報機器株式会社のShahinです!
今回は、Microsoft Fabric に蓄積したデータを Copilot Studio
のエージェントと接続して、Teams や M365 Copilot
から自然言語で問い合わせできる環境を構築する手順を紹介します。
Fabric
には売上データ・在庫・ログ・セキュリティ情報など、社内のあらゆるデータを蓄積できます。それをチャットで気軽に質問できる形にするのが「Fabric
× Copilot
Studio」の組み合わせです。今回は一例として、セキュリティデータを使って実際に構築してみました。ぜひ最後まで読んでみてください。※デモで映りますデータはテスト環境でのデータです。
全体像と仕組み
この構成のポイントは「Fabric のデータ」と「Copilot Studio のエージェント」をつなぐ Fabric データエージェント です。Lakehouse に入っているどんなテーブルでも自然言語から問い合わせられるようになります。
[ 社内の各種データソース(業務システム / ログ / API 等)]
│ (パイプラインで収集・整形)
▼
[ Fabric Lakehouse(任意のテーブル)]
├─ 例: セキュリティデータ(alerts / incidents / vulnerabilities)
├─ 例: 売上・在庫データ
├─ 例: 勤怠・HR データ
└─ 例: IoT センサーログ など
│ (SQL Analytics Endpoint)
▼
[ Fabric データエージェント ]
│ (外部エージェント接続)
▼
[ Copilot Studio ] ──▶ [ Teams / M365 Copilot / Web チャット ]
必要なライセンスと環境
| 項目 | 内容 |
|---|---|
| Microsoft Fabric | F2 以上(F64 以上推奨)または Power BI Premium |
| Copilot Studio | Copilot Studio ライセンス(テナント単位) |
| Fabric ワークスペース | Lakehouse とデータエージェントを作成できるワークスペース |
| Teams 展開 | Microsoft 365 ライセンス(Teams 利用可能なプラン) |
ファイルをナレッジに追加するのとどう違うの?
Copilot Studio には「ファイルや SharePoint ドキュメントをナレッジとして追加する」機能もあります。では、なぜわざわざ Fabric を経由するのでしょうか。大きな違いはデータの鮮度・量・計算精度にあります。
| 比較項目 | ファイル / ドキュメントをナレッジに追加 | Fabric データエージェント経由(今回) |
|---|---|---|
| データの鮮度 | 手動でファイルを差し替える必要がある | パイプラインで自動収集しているため常に最新 |
| データ量 | ファイルサイズ・件数に上限あり | Lakehouse は数百万行でも対応可能 |
| 集計・計算 | LLM の推測に依存するため誤答が出やすい | SQL レベルで正確に集計・フィルタリングできる |
| 向いているデータ | 手順書・FAQ・マニュアルなどのテキスト | ログ・実績・数値など構造化テーブルデータ |
| アクセス制御 | Copilot Studio 側で別途設定が必要 | Fabric Lakehouse の権限をそのまま継承 |
「今月のアラートは何件?」「売上が先月比でどう変わった?」——こうした集計・比較・最新値を問う質問は Fabric Data Agent が得意です。逆に「〇〇の設定手順を教えて」のようなドキュメント検索は通常のナレッジ追加(SharePoint 等)と組み合わせるのがベストです。
Step 1 Fabricワークスペースを開く
Microsoft Fabric ポータルにサインインし、データエージェントを作成するワークスペースを開きます。
右上の「+新規」または「新しい項目」ボタンをクリックします。
Step 2 データエージェントを新規作成する
「新しい項目」ダイアログが開きます。ノートブックやデータフローなど様々なアイテムの中から「データ エージェント」を探します。
検索ボックスに「データエージェント」と入力すると絞り込めます。選択するとエージェントの構築が始まります。
名前入力ダイアログが開きます。わかりやすい名前を入力して「作成」をクリックします。
作成後、データエージェントの構築ガイド画面が表示されます。①データソースの追加 ②データ関数による拡張 ③Azure AI Search の有効化 という3ステップが示されます。
Step 3 データソース(Lakehouse)を追加する
「データの追加」ドロップダウンから「データソース」を選択します。
OneLake カタログが開きます。接続したい Lakehouse を選択して「追加」をクリックします。
追加後、画面右上に接続検証中の通知が表示されます。しばらく待つと検証が完了します。
Step 4 テーブルを選択してAI向け説明を設定する
検証が完了すると左ペインにテーブル一覧が表示されます。テーブル名をクリックすると右ペインでその場でテストできます。まずどんなデータが入っているか確認してみましょう。
AIに問い合わせてほしいテーブルにチェックを入れます。チェックしたテーブルのみがエージェントの回答対象になります。各テーブルの「説明(Description)」欄に、AIが理解しやすい日本語の説明を記入しておくと回答精度が大幅に向上します。
| テーブル名 | AI向け説明のポイント(記入例) |
|---|---|
securescores |
セキュアスコア履歴。currentScore÷maxScore で達成率を計算。値が高いほど安全 |
alerts |
Defender 検知アラート。severity で Critical/High/Medium/Low に分類。alertCreationTime が発生日時 |
incidents |
XDR インシデント。複数アラートをまとめた上位概念。severity, status, createdTime を含む |
manageddevices |
Intune 管理デバイス。complianceState=noncompliant が要対応 |
userregistrationdetails |
MFA 登録状況。isMfaRegistered=false のメンバーが未登録者 |
vulnerabilities |
MDE 検知の脆弱性。cvssScore と severity で優先度判断。exposedMachines が影響台数 |
riskyusers |
Entra ID Protection のリスクユーザー。riskState=atRisk または confirmedCompromised が要対応 |
Step 5 データエージェントをテストして公開する
右ペインのテストパネルで実際に質問を投げてみます。「今すぐ対応すべき推奨事項 Top 5 は?」など複雑な集計クエリも試してみましょう。
動作を確認したら「公開」ボタンをクリックします。公開することで Copilot Studio からこのデータエージェントを参照できるようになります。
公開設定画面でエージェントの説明を入力します。Copilot Studio 側がこの説明を参考にどのアクションを呼ぶか判断するため、丁寧に記載しておきます。
Step 6 Copilot Studioでエージェントを作成する
Copilot Studio にサインインします。トップ画面からエージェントまたはワークフローの作成を選択します。
左ナビゲーションの「エージェント」をクリックしてエージェント一覧を開きます。
「+ 空のエージェント」または「エージェントを作成」をクリックして新規作成を開始します。
名前・言語・ソリューションなどの詳細設定ダイアログが開きます。言語は「日本語(日本)」を確認しておきましょう。
エージェント名を入力します。チームメンバーが使うことを意識した、わかりやすい名前をつけます。
作成後、エージェントの詳細設定画面が開きます。名前・説明・モデル・指示・ナレッジを設定できます。右側のペインでリアルタイムにテストも実行できます。
Step 7 FabricデータエージェントをCopilot Studioに接続する
エージェント設定画面の「エージェントを拡張する」(または「アクション」)から「エージェントを追加する」を選択します。
「エージェントの拡張方法を選択します」画面が開きます。「外部エージェントに接続する」を選択します。
外部エージェントの接続先として「Microsoft Fabric データエージェント」を選択します。
Fabricデータエージェントへの接続設定画面。初回は接続がないため「新しい接続を作成する」をクリックします。
接続が作成されると接続設定画面に一覧が表示されます。作成した接続を確認して「次へ」をクリックします。
接続するエージェントの選択画面。Step 5 で公開した「YJK-Security-Agent」を選択します。
外部エージェントの連携設定画面。エージェント名が自動入力されます。「トリガー説明」欄に、どんな質問のときにこのエージェントを呼び出すかを記載します。
以下のように、問い合わせの対象範囲を具体的に書くと回答精度が向上します。
「ユーザーからセキュリティ、アラート、インシデント、デバイス、MFA、脆弱性、パッチ、サインイン、リスクユーザー、Secure Score に関する質問や分析依頼が来た場合、このアクションを呼び出してデータを取得してください。」
エージェントの設定完了画面。接続されたFabricデータエージェントがアクションとして登録されていることを確認します。
Step 8 テストして公開する
右側のテストパネルで動作確認します。実際に質問を入力してFabricのデータが返ってくるか試してみましょう。
初回テスト時にデータ連携の許可確認が表示される場合があります。「許可」をクリックして続行します。
テストの確認が取れたら「公開」ボタンをクリックします。
公開ダイアログが表示されます。接続されたチャネル(Teams等)で利用可能にする設定を確認して公開します。
Step 9 Teams / M365 Copilotに展開する
公開後、エージェントの概要画面から全体の設定を確認できます。
「チャンネル」タブを開き、展開先を選択します。「Microsoft のチャネル」セクションから Teams や M365 Copilot を選べます。
M365 Copilot と Teams の両方に展開できます。今回は M365 Copilot で実際にテストしてみます。
Teamsへの展開設定画面。「Teamsに追加」をクリックするとチームメンバー全員が使えるようになります。
「なにができる?」と質問すると、エージェントはセキュリティ関連(アラート・MFA・脆弱性・Secure Score など)・情報検索・一般サポートの3カテゴリに整理された機能一覧を返します。
「Secure Score を確認して」と依頼すると、Fabric Lakehouse のデータを参照してカテゴリ別の達成状況と改善提案をレポート形式で返します。
#security-alerts
チャンネルに追加すると、インシデント確認のハブとして活用できます。
できる質問例
| カテゴリ | 質問例 |
|---|---|
| セキュリティ状況 | 今月のアラートは何件ありますか? / Critical のインシデントを教えて |
| Secure Score | 現在の Secure Score は何%? / 先月と比べて上がった? |
| デバイス | 非準拠デバイスを一覧で教えて / Windows パッチが古いデバイスは? |
| ユーザー・認証 | MFA 未登録のユーザーは誰? / リスクユーザーとして検知された人は? |
| 脆弱性 | Critical 脆弱性を CVSS スコア順に教えて / 今すぐ対応すべき推奨事項 Top 5 は? |
Fabric × Copilot Studio の活用例
今回はセキュリティデータを例に構築しましたが、Fabric Lakehouse に入れるデータを変えるだけで、さまざまな業務に応用できます。
| 活用分野 | Lakehouse に入れるデータ | チャットで聞ける質問の例 |
|---|---|---|
| セキュリティ運用(今回) | アラート / インシデント / 脆弱性 / MFA 登録状況 | 「今月の Critical アラートは何件?」「MFA 未登録のユーザーは?」 |
| 営業・売上分析 | CRM データ / 受注履歴 / 月次売上 | 「先月の受注金額トップ 5 は?」「〇〇商品の売上推移を教えて」 |
| 在庫・物流管理 | 在庫テーブル / 発注履歴 / 配送ログ | 「在庫が残り 10 個以下の商品は?」「今週の出荷件数は?」 |
| IT 資産管理 | デバイス台帳 / ライセンス管理 / ヘルプデスクログ | 「サポート期限切れのデバイスは何台?」「未割当ライセンスは?」 |
| HR・勤怠 | 勤怠データ / 組織マスタ / 研修受講履歴 | 「今月の残業時間が多い部署は?」「未受講の必須研修がある人は?」 |
テーブルに AI 向けの説明(Description)を丁寧に書くほど回答精度が上がります。どんなデータでも「自然言語で話しかけられるデータベース」として使えるのが Fabric データエージェントの面白いところです。
権限・セキュリティについて(運用前に確認)
社内データを扱うエージェントを構築する際は、以下の点を確認しておくことをお勧めします。
| 確認ポイント | 内容 |
|---|---|
| 権限の継承 | Fabric Lakehouse のアクセス権限は Copilot Studio 経由でも継承されます。Lakehouse への読み取り権限がないユーザーはデータを取得できません。エージェントを公開する前に、閲覧許可するユーザー・グループを Fabric 側で設定します。 |
| 公開範囲 | 個人情報・機密情報を含むデータを扱う場合は、Teams チャンネルの公開範囲を社内限定に絞ります。社外(外部ゲスト)向けに公開しないよう Teams チャンネルのゲストアクセス設定を確認してください。 |
| データの取り扱い | 氏名・メールアドレス・デバイス情報など個人を特定できるデータが含まれる場合は、社内のプライバシーポリシーに従って取り扱います。不要なテーブルはエージェントに追加しないことがポイントです。 |
| アクセスログ | Copilot Studio の利用ログは管理センターから確認できます。誰がエージェントを利用したかを定期的にチェックする運用フローを設けることをお勧めします。 |
まとめ
今回は Fabric × Copilot Studio の組み合わせで、社内データをチャットから自然言語で問い合わせできるエージェントを構築する手順を紹介しました。一例としてセキュリティデータを使いましたが、仕組み自体はどんな業務データにも応用できます。
- Fabric Lakehouse にデータを蓄積し、テーブルに AI 向けの説明を設定する
- Fabric データエージェントを作成・公開する
- Copilot Studio で外部エージェント接続を使って Fabric と連携する
- Teams / M365 Copilot に公開すれば、チームメンバー全員がチャットでデータに話しかけられる
- 売上・在庫・セキュリティ・HR など、Lakehouse のデータを変えるだけで様々な業務に横展開できる
ダッシュボードを毎回開かなくても、チャットで聞くだけでデータが返ってくる体験は思ったよりシンプルに実現できました。自社のデータで試してみると、意外と使い道が広がると思います。
また面白い活用例が見つかったら記事にします。ぜひ試してみてください。