Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AI-Readyなデータ基盤を構築するメダリオンアーキテクチャ

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

 AI-Readyなデータ基盤を構築するメダリオンアーキテクチャ

2026年5月20日に開催された「Data Engineering Study #35」の登壇資料です。

Avatar for R-Miura

R-Miura

May 20, 2026

More Decks by R-Miura

Other Decks in Technology

Transcript

  1. 2026/5/21 AI-Readyなデータ基盤を構築する メダリオンアーキテクチャ Copyright © V POINT MARKETING Co., Ltd.

    All Rights Reserved. AI開発部 三浦 諒一 Data Engineering Study #35 非構造化データの活用事例
  2. Copyright © V POINT MARKETING Co., Ltd. All Rights Reserved.

    自己紹介 三浦 諒一 Vポイントマーケティング株式会社 AI開発 チーフAIエンジニア タスク ・AIエンジニアリング全般を担当 ・AIを活用したサービスの企画・実装 趣味 ・ゲーム (ジャンルはRPG) ・ブログを書くこと
  3. 3 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. 今日お話しすること 社員だれもがAIを活用できるようにする取り組みの一環として ローコード・ノーコードのエージェント開発ツール「Dify」を社内に展開しています。 活用が進むにつれてエージェントに与える 「データ」の品質が良くないとエージェントの回答精度が悪くなる という課題が出てきました。 今日は私たちが取り組んでいる提案書やマニュアルなどの「非構造データ」を加工し、 エージェントに提供できる仕組みをご紹介します。
  4. 4 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. Difyとは Difyはノーコード・ローコードで生成AIを組み込んだアプリケーションやAI Agentを構築できる プラットフォーム。「Knowledge Base」というドキュメント検索エンジンも搭載されていて、 LLMに外部データを参照させるRetrieval Augmented Generation(RAG)も実装できる。
  5. 5 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. メダリオンアーキテクチャとは メダリオンアーキテクチャはデータレイクハウスにおいてデータを Bronze(生データ) Silver(クレンジング済み) Gold(ビジネス活用) の3層に分けて段階的に品質を高めていく設計パターンです。 それぞれのステップで異なる専門性が必要なケースで有効です。 【出典】メダリオンアーキテクチャ(medallion architecture)|Databricks https://www.databricks.com/jp/blog/what-is-medallion-architecture
  6. 6 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. 非構造データをエージェントが扱えるようにするには? 「非構造データを格納し、効率的に処理をし、エージェントが扱える状態にする」 これを実現するために、大きく3つの要素が必要です。 非構造データを格納する場所を用意する 非構造データをAIを使って効率的に処理する データを管理しエージェントが参照可能にする ITチーム AIエンジニアリングチーム データエンジニアリングチーム 当社で該当するチーム
  7. 7 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. メダリオンアーキテクチャに当てはめる これをメダリオンアーキテクチャに当てはめると以下のように各レイヤが対応します。 非構造データを格納する場所を用意する 非構造データをAIを使って効率的に処理する データを管理しエージェントが参照可能にする ITチーム AIエンジニアリングチーム データエンジニアリングチーム 当社で該当するチーム メダリオン アーキテクチャ レイヤ Bronze Silver Gold
  8. 8 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. 前提:当社の状況 ⚫ ファイル格納・共有 SharePoint ⚫ コミュニケーションツール Microsoft Teams (チームでファイル共有するとSharePointに格納される。) 業務基盤:Microsoft365 ⚫ AIエンジニアチームはDatabricksを使っているが、 データアナリストはSnowflakeがメイン データ分析基盤:Snowflake
  9. 9 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. 非構造データ処理システム全体 現状の状況を踏まえた上で構築した非構造データを処理するシステムの全体図 Snowflake Cortex Search Refresh Microsoft Fabric Files メタ+コンテンツ データ Copy Tool Agent Managed MCP Server ・・・ SharePoint site site site Shortcut による接続 Page Image メタデータ コンテンツデータ
  10. 10 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. Fabricでの非構造データ処理の詳細:SharePointへの接続 非構造データの処理はSharePointへの接続が比較的容易なFabricで実行しています。 FabricのShortcutを利用すると、SharePoint Site上のドキュメントを 読み取り専用で読むことが可能です。 Microsoft Fabric 読み取り専用で アクセス SharePoint
  11. 11 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. Fabricでの非構造データ処理の詳細:非構造データの加工(PDF) 非構造データのうち、PDFは各ページを画像ファイル化し、画像ファイルを マルチモーダルLLMにプロンプトと合わせて渡してMarkdown形式のテキストに変換します。 PyMuPDFで 各ページを 画像化 PDF PNG LLM テキスト データ
  12. 12 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. Fabricでの非構造データ処理の詳細:非構造データの加工(PPTX etc) PPTXなどのOffice系のファイルは当初MarkItDownというPythonのライブラリを使って Markdown形式のテキストに変換していました。 しかしPDFに比べると変換精度がなかなか出ない、という課題がありました。 カスタムModule Query for Wikipedia WikipediaSearch Summarizer Search Planner User Request Summarizer Answer Query for Wikipedia WikipediaSearch Query for Wikipedia WikipediaSearch Summarizer たとえば「プログラミング言語の歴史についてまとめて」 といったリクエスト の場合、「プログラミング言語の歴史」「コンピュータ言語」「プログラミン グ言語の進化」といった多角的な観点でWikipediaから情報を収集し、 レポート に出来るフローを実現できる。 # カスタムModule フロー図解 - User Request - ユーザーがリクエストを入力する - Search Planner - 入力リクエストを受け、一つまたは複数のWikipedia検索クエリに分解 - 各クエリの流れ - Query for Wikipedia(例えば3つに分割) - 各クエリごとにWikipedia Searchを実施 - 検索結果をSummarizerで要約 - 統合 - 各Summarizerの出力を統合してAnswerとして最終出力 --- たとえば「プログラミング言語の歴史についてまとめて」というリクエストの場合: - 「プログラミング言語の歴史」 - 「コンピュータ言語」 - 「プログラミング言語の進化」 など複数の視点でWikipediaから情報を収集・要約し、統合してレポートとして出力する流れ。 --- フロー User Request → Search Planner → (複数の) Query for Wikipedia → Wikipedia Search → Summarizer → (統合) → Answer PDFにしたのち、 画像をLLMに入力してテキスト化 MarkItDownでテキスト化
  13. 13 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. Fabricでの非構造データ処理の詳細:非構造データの加工(PPTX etc) そのため、Office系のファイルも一度PDFに変換して処理する方法を検討。 当初はPythonの変換ライブラリを想定。しかし、それらがバックエンドで使用する LibreOfficeをSparkクラスタにFabricの仕様上インストールできないことが判明・・・ Fabricのコミュニティでのやり取りを見ると、Linuxのパッケージがインストールできない。 また、コメントを見る限り今後の対応もなさそうです・・・。 【出典】Enable apt install command in Fabric Notebook https://community.fabric.microsoft.com/t5/Fabric-Ideas/Enable-apt-install-command-in-Fabric-Notebook/idi-p/4512864
  14. 14 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. Fabricのコミュニティでのやり取りを見ると、Linuxのパッケージがインストールできない。 また、コメントを見る限り今後の対応もなさそうです・・・。 【出典】Enable apt install command in Fabric Notebook https://community.fabric.microsoft.com/t5/Fabric-Ideas/Enable-apt-install-command-in-Fabric-Notebook/idi-p/4512864 Fabricでの非構造データ処理の詳細:非構造データの加工(PPTX etc) そのため、Office系のファイルも一度PDFに変換して処理する方法を検討。 当初はPythonの変換ライブラリを想定。しかし、それらがバックエンドで使用する LibreOfficeをSparkクラスタにFabricの仕様上インストールできないことが判明・・・ 詰んだ・・・
  15. 15 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. Fabricでの非構造データ処理の詳細:非構造データの加工(PPTX etc) MicrosoftのGraphAPIを使うとM365のサービス上のファイルにアクセス可能。 SharePoint上のファイルもGraphAPIで取得可能で、さらに”?format=pdf”を付けて GETでリクエストを送るとPDFに変換された状態で取得可能です。 PDF PDF以外 GraphAPIで PDF変換 PDF ▼ ページ単位の 画像生成 ページ画像を LLMでテキスト化 対応しているファイル種もdoc, docx, dotx, dotm, dwg, eml, epub, htm, html, md, msg, odp, ods, odt, pps, ppsx, ppt, pptx, rtf, tif, tiff, xls, xlsm, xlsxなど、幅広く対応しています。 PPTX,DOCX etc
  16. 16 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. 抽出されたコンテンツテーブルサンプル コンテンツの内容とそのページの分類(“表紙”や”結論”など)もLLMで生成。 コンテンツ抽出時に生成した画像はSharePointに格納。 Difyでは画像URLがあると回答に画像を表示できるので、回答内容の根拠が提示しやすい。
  17. 17 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. エージェントにデータを提供する仕組み Fabricで生成されたデータをSnowflakeにコピーし、Snowflakeのテキスト検索エンジン Cortex Searchで自然言語で検索可能にします。 Snowflake Cortex Search Refresh Microsoft Fabric Files メタ+コンテンツ データ Copy Tool Agent Managed MCP Server ・・・ SharePoint site site site Shortcut による接続 Page Image メタデータ コンテンツデータ
  18. 18 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. Snowflake Cortex Search SnowflakeのCortex Searchはテーブルのテキストカラムを対象に、 埋め込みモデルによるベクトル検索とキーワード検索を組み合わせたハイブリット検索で 関連性の強いデータを検索できるサービスです。RAGのナレッジベースとして利用することが出来ます。
  19. 19 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. Snowflake Managed MCP Server Cortex SearchはAPIが提供されていますが、エージェントごとにAPIを呼び出し 解析する処理を書く負荷がDifyユーザーに発生してしまいます。 SnowflakeではManaged MCP Serverというサービスによって、 Cortex SearchをMCP Toolで提供するMCP Serverを立てることが可能です。 Cortex Search Snowflake Managed MCP Server MCP (Model Context Protocol) Agent Difyをはじめ、MCPに対応しているクライアントであればすぐにデータにアクセスが できるようになります。
  20. 20 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. まとめと今後に向けて 非構造データはどこで取り扱うか、どうやって処理をするか、どうやって提供するかを 考える必要があり、またそれらの専門性も高くなり、権限も分散しがちです。 (GraphAPI使うための設定の権限はIT基盤チーム、SnowflakeのMCPサーバーの認証周りの 設定の権限はデータエンジニアリングしか持っていない、etc) そのため、 1チームでは全体の処理フローを完結することが出来ず、関連チームとの協力が必須です。 その時の作業領域を明確化するためにもメダリオンアーキテクチャに沿って考えることは 有効だと思います。 今回はSharePointを想定してFabricを選択しましたが、 データソースが今後増えることを考えるとたとえばDatabricksでの実装も検討してきたいです。
  21. 21 Copyright © V POINT MARKETING Co., Ltd. All Rights

    Reserved. 最後に テックブログを書いています! ご興味あればぜひご覧ください!