前回、Obsidianのデータを独立したRAGとしてMCP化し、あらゆるAIから横断検索できる「最強のマルチAI手帳」について解説しました。
今回は、そのアーキテクチャの次なる進化である「OKF(Open Knowledge Format)への対応」と「Graph RAG化」について深掘りします。
なぜ従来のRAGは「平面的」なのか?
一般的なRAGシステムでは、Markdownなどのテキストファイルを適当な長さ(チャンク)に分割してベクトル化し、AIに渡します。
しかし、これには大きな欠陥があります。AIは「検索にヒットしたテキストの断片」を受け取るだけで、「そのノートがどのプロジェクトに属しているのか」「どんな他のタスクと関連しているのか」といった『文脈の繋がり』を理解できないのです。
Google提唱の「OKF」を取り入れた解決策
そこで今回、Googleが提唱する「OKF(Open Knowledge Format)」の概念をObsidianの運用ルールに導入しました。
これは、情報を単なるテキストの羅列ではなく、「YAMLの構造化データ(メタデータ)」+「Markdown本文」として扱うアプローチです。
具体的には、Obsidianのノートの先頭にプロパティ(YAML)を持たせ、明示的にエッジ(関係性)を記述します。
---
parent: "[[AIエージェント開発プロジェクト]]"
type: "task"
---
Graph RAGがAIに伝える「立体的な知識」
裏側で動いている自作のインポーター(Watcher)を改修し、このYAMLフロントマターから parent や related といったプロパティを抽出し、意味付きのエッジ(関係性の型) としてSQLite(Graph DB)に記録するようにしました。
そして、MCPサーバー経由でAIが検索を行った際、単にヒットしたテキストを返すだけでなく、以下のような「ナレッジグラフ構造(トポロジー)」を文字列の先頭にマッピングしてAIに渡します。
【ナレッジグラフ構造 (Knowledge Graph Topology)】
[現在のタスク] --(parent)--> [AIエージェント開発プロジェクト]
[現在のタスク] --(link)--> [関連技術メモ]
【コンテンツ詳細 (Content)】
...(ノート本文)...
AIが文脈を「理解」し始めた
この改修を行った結果、MCPを利用するAIエージェント(GonrasやAntigravity等)の推論能力が劇的に向上しました。
キーワードのマッチングだけでなく、「このタスクはあのプロジェクトの子タスクだから、全体のスケジュールに関わるな」といった、手帳内の立体的なつながり(Graph Topology)を認識した上で回答してくれるようになったのです。
単なる「AI×Obsidian」の連携から一歩進み、自分自身の脳内のリンク構造をそのままAIにインストールする。これこそが、次世代のパーソナルAIの最適解だと確信しています。