---
title: "Microsoft Fabric IQ のオントロジー入門 ― 前提条件・テナントの設定・作り方・エージェントでの使い方（2026 年 11 月版）"
url: "https://www.geekfujiwara.com/data/7899/"
author: ギークフジワラ
published: "2026-01-22T03:07:54+00:00"
updated: "2026-11-12T04:09:17+00:00"
categories: [Data]
tags: [Copilot Studio, Fabric IQ, Fabric データエージェント, MCP, Microsoft Fabric, オントロジー]
description: "Microsoft Fabric IQ のオントロジー（プレビュー）は、顧客・注文・製品などの業務の概念と、その関係・指標・ルールを定義し、Fabric のデータにつないで、人と AI エージェントに同じ「業務の言葉」を渡す仕組みです。新しいエクスペリエンスに合わせて、前提条件・テナントの設定・作り方・エージェントでの使い方・旧エクスペリエンスからの移行をまとめます。"
---

# Microsoft Fabric IQ のオントロジー入門 ― 前提条件・テナントの設定・作り方・エージェントでの使い方（2026 年 11 月版）

> [!IMPORTANT] 2026 年 11 月 12 日に全面的に書き直しました
> オントロジーは、新しいエクスペリエンスが既定になりました。メトリック・ルール・名前空間・継承・バージョン・オントロジー エージェントなどが加わり、**旧エクスペリエンスは 2027 年 1 月 31 日に終了**します。この記事は、新しいエクスペリエンスに合わせて書き直しています。画面の画像の一部は、2026 年 1 月に旧エクスペリエンスで試したときのものです。

Microsoft Fabric の **Fabric IQ** は、データを「業務の言葉」に引き上げて、人と AI エージェントが同じ意味でデータを扱えるようにする仕組みです。その中心が **オントロジー（ontology、プレビュー）** です。

この記事では、オントロジーとは何かを押さえたうえで、前提条件、テナントの設定、作り方、エージェントでの使い方を順にまとめます。

> [!TIP] 先に結論
> - オントロジーは、**顧客・注文・製品**などの業務の概念（エンティティ型）と、その**関係・指標・ルール**を定義し、Fabric のデータに**バインド**する仕組みです。データはコピーせず、元の場所に置いたまま使います。
> - 使い始めるには、**F2 以上の Fabric 容量**（試すなら F8 が目安）と、テナントの設定 **「ユーザーは Fabric アイテムを作成できる」「ユーザーはオントロジー（プレビュー）アイテムを作成できる」** が要ります。
> - 作り方は 4 つあります。**空から作る**、**Power BI のセマンティック モデルから生成**する、**オントロジー エージェントに作らせる**、**RDF・OWL を取り込む**、です。
> - 作ったオントロジーは、**オントロジー エージェント**、**Fabric データ エージェント**、**Copilot Studio（MCP）**、**Foundry IQ** などから使えます。

## Fabric IQ とオントロジー

### Microsoft IQ の中の Fabric IQ

Fabric IQ は、Microsoft の「企業の知性の層」である **Microsoft IQ** の 1 つです（[What is Fabric IQ?](https://learn.microsoft.com/fabric/iq/overview)）。

| IQ | AI に渡す文脈 |
| --- | --- |
| **Work IQ** | 社員の働き方（メール・会議・ファイル・人のつながり） |
| **Foundry IQ** | 組織の方針や、正式な文書 |
| **Web IQ** | Web の情報 |
| **Fabric IQ** | **業務の実体とデータ**（顧客・注文・設備などと、その状態） |

Fabric IQ は、**OneLake**（データの統合）、**Power BI のセマンティック モデル**（分析の指標）、**オントロジー**（業務の概念と関係）の 3 つの層でできています。

### オントロジーとは

データは、テーブルや列という「機械のための形」で保存されています。一方で、業務は「顧客」「出荷」「設備」といった概念で動いています。この間を、毎回だれかが読み替えているのが今の状態です。

オントロジーは、業務の概念と、その関係・指標・ルールを一度だけ定義して、データにつなぎます。人も、アプリも、AI エージェントも、同じ定義を使えるようになります（[What is ontology (preview)?](https://learn.microsoft.com/fabric/iq/ontology/overview)）。

:::raw
<figure class="wp-block-image" style="margin:1.5rem 0">
<div style="overflow-x:auto;-webkit-overflow-scrolling:touch">
<svg viewBox="0 0 1000 360" width="100%" role="img" aria-label="オントロジーは、データと、それを使う人やエージェントの間の、業務の文脈の層。下の層はデータで、Lakehouse、Eventhouse、Warehouse、SQL データベース、ミラーリングしたデータベース、セマンティック モデル。データはコピーせず元の場所に置いたまま。真ん中の層はオントロジーで、エンティティ型、関係、メトリック、ルール、名前空間を定義し、データにバインドする。上の層は使う側で、オントロジー エージェント、Fabric データ エージェント、オペレーション エージェント、Copilot Studio、Foundry IQ、Real-Time ダッシュボード。関係をたどる質問には、必要に応じてグラフを使う。" style="font-family:inherit;min-width:760px;height:auto;display:block">
<defs><marker id="g7899b" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto"><path d="M0 0L10 5L0 10z" fill="#64748b"/></marker></defs>
<text x="20" y="30" font-size="17" font-weight="700" style="fill:var(--g-heading,#1f2636)">オントロジーは、データと AI の間の「業務の文脈の層」</text>
<text x="20" y="62" font-size="12" font-weight="700" fill="#0284c7">使う側</text>
<g font-size="12" style="fill:var(--g-heading,#1f2636)">
<rect x="20" y="70" width="148" height="44" rx="10" fill="#0284c7" fill-opacity=".08" stroke="#0284c7"/><text x="94" y="96" text-anchor="middle" font-size="11">オントロジー エージェント</text>
<rect x="182" y="70" width="148" height="44" rx="10" fill="#0284c7" fill-opacity=".08" stroke="#0284c7"/><text x="256" y="96" text-anchor="middle">データ エージェント</text>
<rect x="344" y="70" width="148" height="44" rx="10" fill="#0284c7" fill-opacity=".08" stroke="#0284c7"/><text x="418" y="96" text-anchor="middle">運用（オペレーション）</text>
<rect x="506" y="70" width="148" height="44" rx="10" fill="#0284c7" fill-opacity=".08" stroke="#0284c7"/><text x="580" y="96" text-anchor="middle">Copilot Studio（MCP）</text>
<rect x="668" y="70" width="148" height="44" rx="10" fill="#0284c7" fill-opacity=".08" stroke="#0284c7"/><text x="742" y="96" text-anchor="middle">Foundry IQ</text>
<rect x="830" y="70" width="150" height="44" rx="10" fill="#0284c7" fill-opacity=".08" stroke="#0284c7"/><text x="905" y="96" text-anchor="middle" font-size="11">Real-Time ダッシュボード</text>
</g>
<g stroke="#64748b" stroke-width="2"><line x1="500" y1="144" x2="500" y2="118" marker-end="url(#g7899b)"/></g>
<rect x="20" y="148" width="960" height="92" rx="12" fill="#7c3aed" fill-opacity=".08" stroke="#7c3aed" stroke-width="2"/>
<text x="36" y="174" font-size="15" font-weight="700" fill="#7c3aed">オントロジー（業務の言葉）</text>
<g font-size="12" style="fill:var(--g-heading,#1f2636)">
<rect x="36" y="186" width="150" height="38" rx="8" style="fill:var(--g-surface,#fff)" stroke="#7c3aed"/><text x="111" y="210" text-anchor="middle">エンティティ型</text>
<rect x="200" y="186" width="120" height="38" rx="8" style="fill:var(--g-surface,#fff)" stroke="#7c3aed"/><text x="260" y="210" text-anchor="middle">関係</text>
<rect x="334" y="186" width="120" height="38" rx="8" style="fill:var(--g-surface,#fff)" stroke="#7c3aed"/><text x="394" y="210" text-anchor="middle">メトリック</text>
<rect x="468" y="186" width="120" height="38" rx="8" style="fill:var(--g-surface,#fff)" stroke="#7c3aed"/><text x="528" y="210" text-anchor="middle">ルール</text>
<rect x="602" y="186" width="150" height="38" rx="8" style="fill:var(--g-surface,#fff)" stroke="#7c3aed"/><text x="677" y="210" text-anchor="middle">名前空間・継承</text>
<rect x="766" y="186" width="198" height="38" rx="8" style="fill:var(--g-surface,#fff)" stroke="#7c3aed" stroke-dasharray="5 4"/><text x="865" y="210" text-anchor="middle">グラフ（必要なときだけ）</text>
</g>
<g stroke="#64748b" stroke-width="2"><line x1="500" y1="270" x2="500" y2="244" marker-end="url(#g7899b)"/></g>
<text x="20" y="266" font-size="12" font-weight="700" fill="#0d9488">データ（コピーせず、元の場所に置いたまま）</text>
<g font-size="12" style="fill:var(--g-heading,#1f2636)">
<rect x="20" y="276" width="148" height="44" rx="10" fill="#0d9488" fill-opacity=".08" stroke="#0d9488"/><text x="94" y="302" text-anchor="middle">Lakehouse</text>
<rect x="182" y="276" width="148" height="44" rx="10" fill="#0d9488" fill-opacity=".08" stroke="#0d9488"/><text x="256" y="302" text-anchor="middle">Eventhouse</text>
<rect x="344" y="276" width="148" height="44" rx="10" fill="#0d9488" fill-opacity=".08" stroke="#0d9488"/><text x="418" y="302" text-anchor="middle">Warehouse</text>
<rect x="506" y="276" width="148" height="44" rx="10" fill="#0d9488" fill-opacity=".08" stroke="#0d9488"/><text x="580" y="302" text-anchor="middle">SQL データベース</text>
<rect x="668" y="276" width="148" height="44" rx="10" fill="#0d9488" fill-opacity=".08" stroke="#0d9488"/><text x="742" y="302" text-anchor="middle">ミラーリングした DB</text>
<rect x="830" y="276" width="150" height="44" rx="10" fill="#0d9488" fill-opacity=".08" stroke="#0d9488"/><text x="905" y="302" text-anchor="middle">セマンティック モデル</text>
</g>
<text x="500" y="346" text-anchor="middle" font-size="12" style="fill:var(--g-muted,#5d6679)">データのバインドで、業務の言葉とテーブル・列の対応を持つ。問い合わせは、つないだ元のデータに対して行う</text>
</svg>
</div>
<figcaption>オントロジーは、データそのものではなく、データに意味を与える層（出典：What is ontology (preview)?）</figcaption>
</figure>
:::

### 用語

オントロジーで使う言葉を、例と一緒に整理します。

:::raw
<figure class="wp-block-image" style="margin:1.5rem 0">
<div style="overflow-x:auto;-webkit-overflow-scrolling:touch">
<svg viewBox="0 0 1000 300" width="100%" role="img" aria-label="オントロジーの用語の例。エンティティ型 Customer（顧客）、Order（注文）、Product（製品）がある。Customer は Order を places（する）、Order は Product を contains（含む）という関係でつながる。Customer のプロパティは顧客 ID と名前と地域。Order のメトリックは売上（セマンティック モデルの DAX のメジャー）。ルールは、注文額が 100 万円を超えたら承認が要る、という自然言語の業務の決まり。エンティティ インスタンスは、顧客 A や注文 123 のような、データにある 1 件 1 件。" style="font-family:inherit;min-width:760px;height:auto;display:block">
<defs><marker id="g7899c" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto"><path d="M0 0L10 5L0 10z" fill="#4f46e5"/></marker></defs>
<text x="20" y="30" font-size="17" font-weight="700" style="fill:var(--g-heading,#1f2636)">例：顧客・注文・製品のオントロジー</text>
<g>
<rect x="40" y="60" width="220" height="130" rx="12" style="fill:var(--g-surface,#fff)" stroke="#4f46e5" stroke-width="2"/>
<text x="56" y="86" font-size="14" font-weight="700" style="fill:var(--g-heading,#1f2636)">Customer（顧客）</text>
<text x="56" y="108" font-size="11" fill="#4f46e5">エンティティ型</text>
<text x="56" y="134" font-size="12" style="fill:var(--g-muted,#5d6679)">プロパティ：顧客 ID（キー）</text>
<text x="56" y="154" font-size="12" style="fill:var(--g-muted,#5d6679)">名前・地域</text>
<text x="56" y="176" font-size="12" style="fill:var(--g-muted,#5d6679)">インスタンス：顧客 A、顧客 B…</text>
</g>
<g>
<rect x="390" y="60" width="220" height="130" rx="12" style="fill:var(--g-surface,#fff)" stroke="#4f46e5" stroke-width="2"/>
<text x="406" y="86" font-size="14" font-weight="700" style="fill:var(--g-heading,#1f2636)">Order（注文）</text>
<text x="406" y="108" font-size="11" fill="#4f46e5">エンティティ型</text>
<text x="406" y="134" font-size="12" style="fill:var(--g-muted,#5d6679)">プロパティ：注文 ID・注文日</text>
<text x="406" y="154" font-size="12" fill="#d97706">メトリック：売上（DAX）</text>
<text x="406" y="176" font-size="12" style="fill:var(--g-muted,#5d6679)">インスタンス：注文 123…</text>
</g>
<g>
<rect x="740" y="60" width="220" height="130" rx="12" style="fill:var(--g-surface,#fff)" stroke="#4f46e5" stroke-width="2"/>
<text x="756" y="86" font-size="14" font-weight="700" style="fill:var(--g-heading,#1f2636)">Product（製品）</text>
<text x="756" y="108" font-size="11" fill="#4f46e5">エンティティ型</text>
<text x="756" y="134" font-size="12" style="fill:var(--g-muted,#5d6679)">プロパティ：製品 ID・分類</text>
<text x="756" y="154" font-size="12" style="fill:var(--g-muted,#5d6679)">価格</text>
</g>
<g stroke="#4f46e5" stroke-width="2"><line x1="262" y1="110" x2="386" y2="110" marker-end="url(#g7899c)"/><line x1="612" y1="110" x2="736" y2="110" marker-end="url(#g7899c)"/></g>
<text x="324" y="100" text-anchor="middle" font-size="12" font-weight="700" fill="#4f46e5">places</text>
<text x="324" y="128" text-anchor="middle" font-size="11" style="fill:var(--g-muted,#5d6679)">関係</text>
<text x="674" y="100" text-anchor="middle" font-size="12" font-weight="700" fill="#4f46e5">contains</text>
<text x="674" y="128" text-anchor="middle" font-size="11" style="fill:var(--g-muted,#5d6679)">関係</text>
<rect x="40" y="214" width="920" height="66" rx="12" fill="#0d9488" fill-opacity=".07" stroke="#0d9488" stroke-width="2"/>
<text x="56" y="240" font-size="13" font-weight="700" fill="#0d9488">ルール（自然言語の業務の決まり）</text>
<text x="56" y="264" font-size="12" style="fill:var(--g-heading,#1f2636)">「注文額が 100 万円を超える注文は、上長の承認が要る」― エンティティ型やプロパティに結びつけ、どのエージェントからも同じ決まりを使う</text>
</svg>
</div>
<figcaption>エンティティ型・関係・プロパティ・メトリック・ルールの関係</figcaption>
</figure>
:::

| 用語 | 意味 | 例 |
| --- | --- | --- |
| **エンティティ型** | 業務の概念の定義。特定のテーブルに縛られない | Customer、Order、Machine |
| **エンティティ インスタンス** | データにある 1 件 1 件 | 顧客 A、注文 123 |
| **プロパティ** | エンティティ型の項目。型を持ち、データの列にバインドする | 顧客の地域、設備の稼働状態 |
| **関係** | 2 つのエンティティ型のつながり | Customer **places** Order |
| **メトリック** | 決まった計算。セマンティック モデルの DAX のメジャーを、元のモデルが持ったまま使う | 売上、在庫金額 |
| **ルール** | 自然言語で書く業務の決まり | 100 万円を超える注文は承認が要る |
| **名前空間** | 定義を部門や領域ごとにまとめる範囲 | 営業・製造 |
| **データのバインド** | 定義と、実際のデータの対応 | Customer ← Lakehouse の customers テーブル |

> [!NOTE] グラフは「必要なときだけ」
> 関係を何段もたどる質問（影響の連鎖、最短の経路など）には、**Fabric のグラフ**を使えます。新しいエクスペリエンスでは、グラフにデータを入れるのは**必要なときに選ぶ**形になりました。ふだんの集計や検索は、元のデータに対して行います。

:::details 一般的な「オントロジー」との違い
情報科学でいうオントロジーは、ある領域の概念・属性・関係を、はっきりと形式的に定義した知識のモデルです。よく引用されるのは、Tom Gruber の「概念化の明示的な仕様」という定義です。

Fabric のオントロジーは、この考え方を**業務のデータと AI のため**に実用にしたものです。

| 観点 | 一般的なオントロジー | Fabric のオントロジー |
| --- | --- | --- |
| 目的 | 知識を形式的に表す | 業務の意味を、人と AI で共有する |
| データとのつながり | 抽象的なことが多い | OneLake などの実際のデータにバインドする |
| 作り方 | 専門家が記述する | 画面で作る、セマンティック モデルから生成、エージェントに作らせる |
| 標準との関係 | RDF・OWL など | RDF・Turtle・OWL の取り込み、RDF・Turtle の書き出しができる |
:::

## 前提条件

{.check}
- **Fabric 容量**：F2 以上の有料の Fabric 容量か、Fabric を有効にした Power BI Premium（P1 以上）。試すなら **F8**、軽く試すだけなら F4 が目安です（[Billing and capacity usage](https://learn.microsoft.com/fabric/iq/ontology/resources-capacity-usage)）。
- **容量が動いていること**：Azure で Fabric の容量を一時停止していると、オントロジーを作れません。
- **テナントの設定**：次の節の 2 つをオンにします。
- **ワークスペースの権限**：作る・直すには **共同作成者** 以上が要ります。閲覧者は、質問はできても変更はできません。
- **データ**：Lakehouse・Eventhouse・Warehouse・SQL データベース・ミラーリングしたデータベース・セマンティック モデルのどれか。バインドするデータを読む権限が要ります。

> [!NOTE] 容量の消費
> オントロジー エージェントや MCP サーバーの AI の処理は、**Ontology AI Reasoning** として Fabric の容量（CU）を使います。Learn の目安では、同義語を足す程度の小さな改善で **0.5〜1 CU 時間**、ワークスペースからオントロジーを丸ごと作らせると **約 20 CU 時間**です。Fabric Capacity Metrics アプリで使用量を見ながら、容量を調整します。

## テナントの設定

Fabric の管理者が設定します。管理ポータルは、**OneLake カタログ → 管理 → 構成 → テナントの設定** からも開けます（[Required tenant settings for ontology](https://learn.microsoft.com/fabric/iq/ontology/overview-tenant-settings)）。

[管理ポータル](https://app.powerbi.com/admin-portal/tenantSettings?experience=power-bi)を開きます。

![Fabric の管理ポータル](https://www.geekfujiwara.com/wp-content/uploads/2026/01/image-37-1024x588.png)

| 設定 | 必要なとき |
| --- | --- |
| **ユーザーは Fabric アイテムを作成できる**（Users can create Fabric items） | **必須**。新しいエクスペリエンスのオントロジーを作るとき、旧エクスペリエンスから移行するとき |
| **ユーザーはオントロジー（プレビュー）アイテムを作成できる**（Users can create ontology (preview) items） | **必須** |
| データ エージェントのテナントの設定 | オントロジーを Fabric データ エージェントで使うとき |
| オペレーション エージェントのテナントの設定 | オントロジーをオペレーション エージェントで使うとき |

![オントロジーと Fabric アイテムのテナントの設定](https://www.geekfujiwara.com/wp-content/uploads/2026/01/image-39-1024x963.png)

設定したら、ブラウザーを再読み込みします。反映には時間がかかることがあります。

![設定のあとの再読み込み](https://www.geekfujiwara.com/wp-content/uploads/2026/01/image-42.png)

## オントロジーを作る

ワークスペースで **新しい項目** を選び、**オントロジー** を探して作ります。

![ワークスペースでオントロジーを作る](https://www.geekfujiwara.com/wp-content/uploads/2026/01/image-40-1024x566.png)

作り方は 4 つあります。

| 作り方 | 向いているとき |
| --- | --- |
| **空から作る** | 業務の概念から考えたい。データの型はあとで決めてよい（型を決めないプロパティも作れる） |
| **セマンティック モデルから生成** | Power BI で使っている定義と KPI を、そのまま生かしたい。テーブル・列・リレーションシップ・計算列・DAX のメジャーが引き継がれる |
| **オントロジー エージェントに作らせる** | ワークスペースのデータから、定義とバインドの下書きを作らせたい |
| **RDF・Turtle・OWL を取り込む** | ほかのツールで作った定義がある。空のオントロジーに取り込む |

:::raw
<figure class="wp-block-image" style="margin:1.5rem 0">
<div style="overflow-x:auto;-webkit-overflow-scrolling:touch">
<svg viewBox="0 0 1000 256" width="100%" role="img" aria-label="Fabric IQ のオントロジーを使い始める 4 つの手順。1 前提をそろえる：F2 以上の容量を動かし、テナントの設定で Fabric アイテムとオントロジーの作成をオンにする。2 オントロジーを作る：空から、セマンティック モデルから、オントロジー エージェントで、または RDF・OWL を取り込む。3 定義してつなぐ：エンティティ型、関係、メトリック、ルールを定義し、Lakehouse などのデータにバインドする。4 エージェントで使う：オントロジー エージェント、データ エージェント、Copilot Studio、Foundry IQ から自然言語で使う。" style="font-family:inherit;min-width:760px;height:auto;display:block">
<defs><marker id="g7899a" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto"><path d="M0 0L10 5L0 10z" fill="#64748b"/></marker></defs>
<text x="20" y="30" font-size="17" font-weight="700" style="fill:var(--g-heading,#1f2636)">Fabric IQ のオントロジーを使い始めるまで</text>
<g>
<rect x="20" y="56" width="221" height="130" rx="12" style="fill:var(--g-surface,#fff)" stroke="#4f46e5" stroke-width="2"/>
<circle cx="42" cy="80" r="12" fill="#4f46e5"/><text x="42" y="85" text-anchor="middle" font-size="13" font-weight="700" fill="#fff">1</text>
<text x="60" y="85" font-size="14" font-weight="700" style="fill:var(--g-heading,#1f2636)">前提をそろえる</text>
<text x="34" y="118" font-size="12" style="fill:var(--g-muted,#5d6679)">F2 以上の容量を動かす</text>
<text x="34" y="142" font-size="12" style="fill:var(--g-muted,#5d6679)">Fabric アイテムの作成をオン</text>
<text x="34" y="166" font-size="12" style="fill:var(--g-muted,#5d6679)">オントロジーの作成をオン</text>
</g>
<g>
<rect x="260" y="56" width="221" height="130" rx="12" style="fill:var(--g-surface,#fff)" stroke="#7c3aed" stroke-width="2"/>
<circle cx="282" cy="80" r="12" fill="#7c3aed"/><text x="282" y="85" text-anchor="middle" font-size="13" font-weight="700" fill="#fff">2</text>
<text x="300" y="85" font-size="14" font-weight="700" style="fill:var(--g-heading,#1f2636)">オントロジーを作る</text>
<text x="274" y="118" font-size="12" style="fill:var(--g-muted,#5d6679)">空から・セマンティック モデル</text>
<text x="274" y="142" font-size="12" style="fill:var(--g-muted,#5d6679)">オントロジー エージェント</text>
<text x="274" y="166" font-size="12" style="fill:var(--g-muted,#5d6679)">RDF・OWL を取り込む</text>
</g>
<g>
<rect x="500" y="56" width="221" height="130" rx="12" style="fill:var(--g-surface,#fff)" stroke="#0d9488" stroke-width="2"/>
<circle cx="522" cy="80" r="12" fill="#0d9488"/><text x="522" y="85" text-anchor="middle" font-size="13" font-weight="700" fill="#fff">3</text>
<text x="540" y="85" font-size="14" font-weight="700" style="fill:var(--g-heading,#1f2636)">定義してつなぐ</text>
<text x="514" y="118" font-size="12" style="fill:var(--g-muted,#5d6679)">エンティティ型・関係</text>
<text x="514" y="142" font-size="12" style="fill:var(--g-muted,#5d6679)">メトリック・ルール</text>
<text x="514" y="166" font-size="12" style="fill:var(--g-muted,#5d6679)">データにバインドする</text>
</g>
<g>
<rect x="740" y="56" width="221" height="130" rx="12" style="fill:var(--g-surface,#fff)" stroke="#0284c7" stroke-width="2"/>
<circle cx="762" cy="80" r="12" fill="#0284c7"/><text x="762" y="85" text-anchor="middle" font-size="13" font-weight="700" fill="#fff">4</text>
<text x="780" y="85" font-size="14" font-weight="700" style="fill:var(--g-heading,#1f2636)">エージェントで使う</text>
<text x="754" y="118" font-size="12" style="fill:var(--g-muted,#5d6679)">オントロジー エージェント</text>
<text x="754" y="142" font-size="12" style="fill:var(--g-muted,#5d6679)">データ エージェント</text>
<text x="754" y="166" font-size="12" style="fill:var(--g-muted,#5d6679)">Copilot Studio・Foundry IQ</text>
</g>
<g stroke="#64748b" stroke-width="2"><line x1="243" y1="121" x2="257" y2="121" marker-end="url(#g7899a)"/><line x1="483" y1="121" x2="497" y2="121" marker-end="url(#g7899a)"/><line x1="723" y1="121" x2="737" y2="121" marker-end="url(#g7899a)"/></g>
<rect x="20" y="204" width="960" height="40" rx="20" style="fill:var(--g-surface-2,#eef0f6);stroke:var(--g-line,#e5e7eb)"/>
<text x="500" y="229" text-anchor="middle" font-size="13" style="fill:var(--g-heading,#1f2636)">オントロジーは、データに<tspan font-weight="700">業務の意味</tspan>を与えて、AI が正しく探せるようにする</text>
</svg>
</div>
<figcaption>前提 → 作る → 定義してつなぐ → エージェントで使う</figcaption>
</figure>
:::

### 1. エンティティ型とプロパティを定義する

{.steps}
1. キャンバスで **エンティティ型の追加** を選び、名前を入れます（例：Customer、Order、Product）。
2. エンティティ型の詳細を開き、**プロパティの追加** で、名前と型を決めます。型をまだ決めないときは **Unknown** にできます。
3. エンティティ型の**キー**を決めます。キーに使える型は **文字列** と **整数** です。

![エンティティ型を定義する画面（2026 年 1 月の旧エクスペリエンス）](https://www.geekfujiwara.com/wp-content/uploads/2026/01/image-41-1024x504.png)

> [!TIP] 名前は英語にしておくと無難
> 2026 年 1 月に試したときは、エンティティ型の名前を英語にする必要がありました。いまの決まりは Learn にはっきり書かれていませんが、英語の名前にして、**説明**に日本語の意味を書いておくと、エージェントにも伝わりやすくなります。

### 2. 関係を定義する

エンティティ型どうしのつながりを定義します。関係の名前は、オントロジーの中で**重ならないように**します（データ エージェントで、同じ名前の関係があると自然言語の質問が失敗する既知の問題があります）。

{.point}
- Customer — **places** → Order
- Order — **contains** → Product

### 3. データをバインドする

定義を、実際のデータにつなぎます。データは**コピーされず**、元の場所に置いたまま使われます（[Data binding](https://learn.microsoft.com/fabric/iq/ontology/how-to-bind-data)）。

使えるデータは、セマンティック モデル、Lakehouse、Eventhouse、Warehouse、SQL データベース、ミラーリングしたデータベース、ショートカットやビューなどです。時系列のデータは、タイムスタンプの列を選んでバインドします。

> [!NOTE]
> 元のデータに新しい行が入っても、オントロジーの画面にはすぐには出ません。手動で更新するか、グラフの更新のスケジュールを設定します。スケジュールを細かくしすぎると、容量を使いすぎることがあります。

### 4. メトリックとルールを足す

{.check}
- **メトリック**：セマンティック モデルから生成すると、DAX のメジャーがメトリックとして入ります。計算式は元のモデルが持ったままなので、エージェントが計算を作り直さず、決まった計算を使います。
- **ルール**：業務の決まりを自然言語で書き、エンティティ型やプロパティに結びつけます。プロンプトごとに同じ指示を書かなくてよくなります。

### 5. 育てる・管理する

{.check}
- **名前空間と継承**：部門ごとに定義を分け、共通の定義（たとえば「設備」）を継承して、細かい定義（「冷蔵庫」）を作れます。
- **バージョン**：名前を付けて保存し、前の状態に戻せます。
- **オントロジー エージェント**：自然言語で「同義語を足して」「この関係を見直して」と頼めます。変更は**提案**として出るので、確かめてから適用します（**Plan モード**では変更されず、**Act モード**で適用されます）。

## セマンティック モデルから作るときの注意

Power BI のセマンティック モデルから生成するときは、次を確かめます（[Troubleshoot ontology](https://learn.microsoft.com/fabric/iq/ontology/resources-troubleshooting)）。

{.point}
- セマンティック モデルは、**マイ ワークスペース以外**に置く
- モデルを発行し、テーブルを非表示にせず、リレーションシップを定義しておく
- **インポート モード**のモデルでは、データのバインドができない（Direct Lake で、元の Lakehouse のワークスペースが受信のパブリック アクセスを止めている場合も同じ）
- バインドするには、セマンティック モデルの**読み取り**と**ビルド**の権限が要る
- `Decimal` 型の列は、クエリで null になる。オントロジーで `Double` 型のプロパティを作り直してバインドする

## オントロジーを使う

作ったオントロジーは、いくつかの方法で使えます（[Agent integration for ontology](https://learn.microsoft.com/fabric/iq/ontology/concepts-agent-integration)）。

| 使い方 | 向いている人・場面 |
| --- | --- |
| **オントロジー エージェント** | オントロジーの画面で、質問したり、定義を育てたりする |
| **Fabric データ エージェント** | Fabric の中で、業務の人が自然言語で質問する。Microsoft Copilot や Copilot Studio にも公開できる |
| **オペレーション エージェント** | リアルタイムのデータを見張り、異常を見つけて、通知や決まった操作をする |
| **Copilot Studio** | **Fabric IQ の MCP** でつなぎ、ローコードで業務のエージェントを作る（[Fabric IQ Ontology MCP](https://learn.microsoft.com/microsoft-copilot-studio/mcp-fabric-iq-ontology)） |
| **Foundry IQ** | 開発者が、オントロジーを知識のソースにして、自由に作り込む |
| **自作のエージェント（MCP）** | オントロジーを MCP サーバーとして、ほかの MCP クライアントからつなぐ |

MCP サーバーの URL は、オントロジーを開いたときの URL のワークスペース ID と項目 ID から作れます（[Consume ontology as an MCP server](https://learn.microsoft.com/fabric/iq/ontology/how-to-use-ontology-mcp-server)）。

```text
https://api.fabric.microsoft.com/v1/mcp/dataPlane/workspaces/<ワークスペース ID>/items/<オントロジーの項目 ID>/ontologyEndpoint
```

質問の例です。

```text
冷蔵庫の温度が基準を超えた店舗で、先週の売上はどう変わった？
売上の上位 10 の製品を、地域ごとに出して。
```

> [!WARNING] データ エージェントで使うときの既知の問題
> - セマンティック モデルでバインドしたオントロジーは、いまはデータ エージェントで使えません。データ エージェントで使うときは、Lakehouse や Eventhouse などにバインドします。
> - 集計がうまくいかないときは、エージェントの指示に `Support group by in GQL` を足します。
> - 作った直後は、最初の何回かの質問が失敗することがあります。数分待ってから試します。
> - オントロジーの MCP は、いまはサービス プリンシパルでは使えません。

## 旧エクスペリエンスからの移行

2026 年の前半に作ったオントロジーは、旧エクスペリエンスのものです。旧エクスペリエンスは **2027 年 1 月 31 日に終了**します（[Migrate from old experience](https://learn.microsoft.com/fabric/iq/ontology/overview#migrate-from-old-experience)）。

{.steps}
1. 旧エクスペリエンスのオントロジーを開き、上に出る案内から**新しいエクスペリエンスでコピーを作成**します。元のオントロジーは残ります。
2. エンティティ型・プロパティ・バインド・関係は引き継がれます。
3. エージェント・ダッシュボードなど、オントロジーを使っているものを、新しい項目につなぎ直します。
4. ルールと Activator の通知は、作り直します。

> [!CAUTION]
> **バインドで定義する（Defined at Binding）プロパティ**や、**複合キー**を使っているオントロジーは、移行に失敗します。そのプロパティやキーを外してから、移行し直します。

## セキュリティ

{.check}
- オントロジーへのアクセスは、Fabric の**ワークスペースと項目の権限**で決まります。
- 作るときも質問するときも、バインドしたデータの権限に従います。**OneLake のセキュリティ**や、元のデータの**行・列・オブジェクトのレベルのセキュリティ**（RLS・CLS・OLS）がそのまま効きます。
- オントロジー エージェントは、使う人の ID でデータを読みます。見えないデータは使われません。

## うまくいかないとき

| 起きること | 確かめること |
| --- | --- |
| オントロジーを作れない（`OneLakeCreateNotificationFailedError` など） | テナントの設定の 2 つ。容量が一時停止していないか |
| エンティティ型が出ない・一部が足りない | モデルを発行しているか、テーブルを非表示にしていないか、リレーションシップがあるか。同じ名前のプロパティの型がそろっているか |
| バインドがない | インポート モードのモデルではないか。読み取りとビルドの権限があるか |
| データが表示されない・403 になる | バインドしたデータの権限。Lakehouse の外部テーブルではなく、マネージド テーブルか |
| 「容量の上限を超えた」と出る | グラフの更新のスケジュールを減らすか、止める |
| 変更が適用されない | オントロジー エージェントが Plan モードではないか。共同作成者の権限があるか |

## まとめ

{.check}
- オントロジーは、業務の概念・関係・指標・ルールを一度だけ定義して、データにつなぐ「業務の言葉」の層
- 前提は、F2 以上の容量（試すなら F8）と、テナントの設定 2 つ（Fabric アイテムとオントロジーの作成）
- 作り方は 4 つ。Power BI のセマンティック モデルがあるなら、そこから生成するのが近道
- オントロジー エージェント・データ エージェント・Copilot Studio・Foundry IQ から使える
- 旧エクスペリエンスは 2027 年 1 月 31 日に終了。早めに新しいエクスペリエンスへコピーする

AI に正しく答えさせるには、データだけでなく「そのデータが業務で何を意味するか」を渡す必要があります。オントロジーは、その意味を一度だけ定義して、すべてのエージェントで使い回すための仕組みです。まずは顧客・注文・製品のような小さな範囲で作り、エージェントの答えが変わるのを確かめてみてください。

## あわせて読みたい

データを MCP で Copilot Studio のエージェントにつなぐ話と、エージェントの使い分けです。

https://www.geekfujiwara.com/tech/powerplatform/7437/

https://www.geekfujiwara.com/tech/powerplatform/7776/

https://www.geekfujiwara.com/copilot/9491/
