Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
SnowflakeとDatabricks両方でRAGを構築してみた
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
camay
April 23, 2025
Technology
1.9k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SnowflakeとDatabricks両方でRAGを構築してみた
Cross Data Platforms Meetup #1(
https://cdpm.connpass.com/event/348713/
) の登壇資料です
camay
April 23, 2025
More Decks by camay
See All by camay
OpenSharing について熱く語る〜AI アセットの共有について〜
kameitomohiro
0
240
Genieを崇めよ
kameitomohiro
0
210
Databricks Tableauユーザー向けチュートリアル資料
kameitomohiro
0
36
Unity AI Gateway 経由で Cortex Agents を呼び出してみよう
kameitomohiro
0
71
Databricks (と気合い)で頑張るAI Agent 運用
kameitomohiro
0
660
Databricks Lakebaseで見る、ML/LLMシステムでのPostgreSQLの使いどころ
kameitomohiro
0
670
Databricks AI/BI Genie の「値ディクショナリー」をAmazonの奥地(S3)まで見に行く
kameitomohiro
1
650
Lakebaseを使ったAIエージェントを実装してみる
kameitomohiro
0
590
新卒3年目の後悔〜機械学習モデルジョブの運用を頑張った話〜
kameitomohiro
0
630
Other Decks in Technology
See All in Technology
おそらく日本で唯一のDevRelインターン生として
husengs7
0
170
ハードウェアコンペでもAI駆動開発が進んでいる話
iotengineer22
0
350
SREでアラート疲れを 解決しよう!
kairim0
1
210
IoTデバイスを繋げるプロトコルMatterをAndroidで使用する方法
harutiro
0
120
AIに攻撃される前に、AIに攻撃させる
tsuchikazu
0
160
Kernel testing frameworks
ennael
PRO
0
110
分析AIエージェントを育てる、動く環境を育てる
codatum
0
150
MCPゲートウェイを作って運用してわかったこと — Agent時代の権限管理の現在地
mtpooh
10
3.2k
生成AIで高い生産性を求められて、 悩み、乗り越えた話
mot_techtalk
2
130
DWH の限界突破! AI エージェント向け爆速リアルタイムデータ基盤 ClickHouse
jozono
1
220
使いこなすために知っておきたい Azure SRE Agent アンチパターン
torumakabe
2
410
ミイダス株式会社 テックチームのご紹介 / MIIDAS Tech Team
miidas
0
160
Featured
See All Featured
Believing is Seeing
oripsolob
1
240
Color Theory Basics | Prateek | Gurzu
gurzu
1
480
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
450
Navigating Weather and Climate Data
rabernat
0
550
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Into the Great Unknown - MozCon
thekraken
41
2.8k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
260
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.7k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
700
Transcript
SnowflakeとDatabricks両方でRAGを構築 してみた DATUM STUDIO株式会社 亀井友裕 Cross Data Platforms Meetup #1
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 1
自己紹介 #大阪 #RADWIMPS #ライブ #カラオケ #服 #ビール #スノボ #YouTube #オモコロ #vtuber 亀井 友裕 会社 DATUM STUDIO 株式会社 主な 業務経験 データパイプラインの構築(Databricks) 需要予測モデルの運用(Databricks) RAGの精度改善(AWS) 資格 SnowPro Advanced: Data Scientist Databricks Certified Data Engineer Associate
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 2
アジェンダ 1. RAGって何? 2. 実際に作ってみよう! 1. Snowflake編 2. Databricks編 3. 比較してみる 1. 開発体験 2. デフォルトで使用できるモデル 3. コスト *事例ベースの話はないです!
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. RAGって何?
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 4
RAG(Retrieval Augmented Generation)とは RAGとは、LLMへの問い合わせの際、外部のドキュメントやデータベースから関連情報を検索し、LLMの回答 に反映させる技術です。 稟議申請の やり方を教えて ①関連情報の検索 ②LLMへのプロンプト生成 稟議申請の手順書.pdf 稟議申請の手順書.pdfによると、、、 ③回答
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 5
ベーシックなRAGのパイプライン(1/2):ベクトルインデックスの作成 1. 保存:ソースとなるドキュメントを保存します。 2. 分割:大きなドキュメントたちを小さなチャンクに分割します。 3. ベクトル化(埋め込み):チャンクをそれぞれベクトルに変換します。 4. 保存:後で検索できるように、ベクトルをストレージに保存しておきます。 https://python.langchain.com/docs/tutorials/rag/#indexing
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 6
ベーシックなRAGのパイプライン(2/2):取得と生成 5. 質問: ユーザーが質問を入力します。 6. 取得: ユーザー入力の質問に対して、関連するチャンクをベクトルインデックスから取得します。 7. プロンプト作成: 取得したチャンクと質問の両方を含むプロンプトを作成します。 8. 回答生成: プロンプトからを回答を生成します。 https://python.langchain.com/docs/tutorials/rag/#retrieval-and-generation
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 7
RAG構築に必要なコンポーネント RAGパイプラインの構築のためには、さまざまなコンポーネント(部品)が必要です。 コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB クライアント/アプリ UI PDFなどのドキュメントを格納するストレージ ドキュメントをチャンクに分割するpythonの関数など チャンクをベクトルに変換する機械学習モデル ベクトルデータを格納するストレージ ユーザーからの質問を受け取り、 RAGパイプラインをからの返答を返すアプリUI ベクトル検索機能 質問をベクトルデータに変換し、 ベクトルDBから類似ドキュメントを検索する機能 LLM API 生成されたプロンプトを受けとって、回答を生成するLLMのAPI コンポーネント 概要
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 8
それぞれの製品で使用する機能 Snowflake, Databricksはそれぞれ、RAGパイプラインの構築に必要な機能を揃えています。 コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB クライアント/アプリ UI ベクトル検索機能 LLM API コンポーネント Stage cortex.SPLIT_TEXT_RECURSIVE_CHARACTER Snowflake Cortex Search Streamlit in Snowflake Snowflake Cortex LLM(complete関数) Snowflakeの機能 Volumes Langchain の Text Splitters関数など Mosaic AI Vector Search Databricks Apps(PuPr) Databricks Model Serving Endpoint Databricksの機能 Databricks Model Serving Endpoint
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 実際に作ってみよう!
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 10
実際に作ってみよう! どちらでもRAGアプリを作ってみて、開発体験や各種機能の使用感を比べてみようと思います。 Snowflakeで作るRAGアプリ Databricksので作るRAGアプリ
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 11
実際に作ってみよう!Snowflake編(1/7) ステージの作成 & pdfファイルのアップロード Snowflake コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB クライアント/アプリ UI ベクトル検索機能 LLM API コンポーネント
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 12
実際に作ってみよう!Snowflake編(2/7) pdfファイルをパースし、チャンクに分割する Snowflake チャンク分割関数 埋め込みモデル ベクトルDB クライアント/アプリ UI ベクトル検索機能 LLM API コンポーネント コンテキスト・リポジトリ
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 13
実際に作ってみよう!Snowflake編(3/7) Cortex Searchオブジェクトを作成 Snowflake クライアント/アプリ UI LLM API コンポーネント コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB ベクトル検索機能
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 14
実際に作ってみよう!Snowflake編(4/7) 新規Streamlit Appを作成 Snowflake コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB ベクトル検索機能 LLM API コンポーネント クライアント/アプリ UI
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 15
実際に作ってみよう!Snowflake編(5/7) ベクトル検索の処理を記述 Snowflake クライアント/アプリ UI LLM API コンポーネント コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB ベクトル検索機能
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 16
実際に作ってみよう!Snowflake編(6/7) LLM推論の処理を記述 Snowflake コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB クライアント/アプリ UI ベクトル検索機能 コンポーネント LLM API
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 17
実際に作ってみよう!Snowflake編(7/7) 残りのUI部分を記述 Snowflake コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB ベクトル検索機能 LLM API コンポーネント クライアント/アプリ UI
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 18
実際に作ってみよう!Snowflake編 完成!ちゃんとDatabricksの質問にも答えてくれます! Snowflake
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 19
実際に作ってみよう!Databricks編(1/7) ボリュームの作成 & pdfファイルのアップロード コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB クライアント/アプリ UI ベクトル検索機能 LLM API コンポーネント Databricks
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 20
実際に作ってみよう!Databricks編(2/7) pdfファイルをパースし、チャンクに分割する snowflake チャンク分割関数 埋め込みモデル ベクトルDB クライアント/アプリ UI ベクトル検索機能 LLM API コンポーネント コンテキスト・リポジトリ Databricks
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 21
実際に作ってみよう!Databricks編(3/7) Mosaic AI Vecoter Search Index オブジェクトを作成(埋め込みモデルは、デフォルトでホストされてい るモデル(GTE (En))を使用) snowflake クライアント/アプリ UI LLM API コンポーネント コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB ベクトル検索機能 databricks Databricks
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 22
実際に作ってみよう!Databricks編(4/7) Databricks App(Streamlit)を作成 snowflake コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB ベクトル検索機能 LLM API コンポーネント クライアント/アプリ UI Databricks
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 23
実際に作ってみよう!Databricks編(5/7) ベクトル検索の処理を記述 snowflake クライアント/アプリ UI LLM API コンポーネント コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB ベクトル検索機能 Databricks
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 24
実際に作ってみよう!Databricks編(6/7) LLM推論の処理を記述 snowflake コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB クライアント/アプリ UI ベクトル検索機能 コンポーネント LLM API Databricks
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 25
実際に作ってみよう!Databricks編(7/7) 残りのUI部分を記述し、デプロイ snowflake コンテキスト・リポジトリ チャンク分割関数 埋め込みモデル ベクトルDB ベクトル検索機能 LLM API コンポーネント クライアント/アプリ UI Databricks
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 26
実際に作ってみよう!Databricks編 完成!Snowflakeの質問にもちゃんと答えてくれます! snowflake Databricks
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 比較してみる
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 28
比較観点1:開発体験 総括 Snowflakeの 便利ポイント Databricksの 便利ポイント ベーシックなRAGの構築するなら、総コード量はそんなに変わらない パース、チャンク分割をSQLで完結させられるので楽 Stageに配置しているドキュメントのリンク作成がサクッとできるのも嬉しい Streamlitアプリの作成がめっちゃスムーズ Pythonライブラリのインストールに対するハードルが低いのが嬉しい Mlflowによるロギング周りの機能が充実している
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 29
比較観点2: デフォルトで使用できるLLMモデル デフォルトで使用できるモデル群は以下です。Snowflakeでは、日本語に対応した埋め込みモデルが使えるの が強みと言えそうです。 埋め込みモデル 埋め込みモデル snowflake-arctic-embed-m-v1.5 snowflake-arctic-embed-m e5-base-v2 snowflake-arctic-embed-l-v2.0 nv-embed-qa-4 multilingual-e5-large voyage-multilingual-2 GTE Large (En) BGE Large (En) GTE v1.5(En) BGE v1.5(En) Llama-3.1-8b Llama-3.1-70b Llama-3.1-405b Llama-3.2-1b Llama-3.2-3b Llama-3-8b Llama-3-70b Llama-4-Maverick Mistral-7b Mixtral-8x7b Deep Seek-R1 Claude-3.5-Sonnet mistral-large mistral-large2 reka-flash reka-core jamba-instruct jamba-1.5-mini jamba-1.5-large Claude-3.7-Sonnet DBRX MPT Databricks Snowflake ※太字は日本語対応 (と、公式で謳われている)モデル
© 2025 DATUM STUDIO Co. Ltd. PROPRIETARY & CONFIDENTIAL. 30
比較観点3: コスト ベクトル検索のサービングはSnowflakeが安く、アプリのホストはDatabricksが安そうでした。 LLM API (Llama-3.3-70B) ベクトル検索の サービング クライアント/アプリ UI 機能 $1.25 / M tokens $220.59/unit, Month $4.3/hour Snowflake (東京リージョン & Enterprise Edition) $0.64 / M input tokens $1.93 / M output tokens $259.2/unit, Month $0.415/hour Databricks (東京リージョン & Premium plan) *1unit = 2M vectors with 768 dim *XSクラスタのアタッチを想定 *1unit = 2M vectors with 768 dim *アタッチできるクラスタは 2vCPU, 6 GB RAMのみ