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

Snowflake Cortex Searchについて

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Gaku TASHIRO Gaku TASHIRO
February 28, 2025

Snowflake Cortex Searchについて

Snowflakeが提供するフルマネージドなハイブリッド検索のCortex Searchについて
社内勉強会で発表をしたので、そちらを放流したいと思います。

https://zenn.dev/churadata/articles/da7eae290b6ae4
に、Cortex Search のチュートリアル3連発をやってみたりしたので、そちらと合わせてみていただけると、理解が進むんじゃないかなーーと

Avatar for Gaku TASHIRO

Gaku TASHIRO

February 28, 2025

More Decks by Gaku TASHIRO

Other Decks in Technology

Transcript

  1. • キーワード検索(=全文検索?) • ベクトル検索 • リランキング を実現 © 2025 Chura

    DATA inc. PROPRIETARY & CONFIDENTIAL. Cortex Searchとは① 〜フルマネージドなハイブリッド検索
  2. • 入力キーワードで完全一致 or 部分一致 • めっちゃ高速 • 同義語や文脈を理解しない • 見逃しが発生

    • 一応、あいまい検索などはあるか • tf-idf、n-gramとか © 2025 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. Cortex Searchとは① :キーワード検索の特徴
  3. • 文脈や意味など類似性を評価 • →同義語や関連概念を拾い上げる • 精度高い • →意図しないものが入り込む可能性も • 計算コスト高い

    • →高次元ベクトル計算 • 学習必要 © 2025 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. Cortex Searchとは① :ベクトル検索の特徴
  4. • データの取り込み • 埋め込み • インデックス作成 • 検索、 • リランキング

    などが全自動化 • ただし、画像内のテキスト抽出やPDFは前処理としてテ キスト抽出処理が必要 © 2025 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. Cortex Searchとは②色々自動化
  5. Cortex Searchのチュートリアルを3つやってみた https://zenn.dev/churadata/articles/da7eae290b6ae4 大まかな流れ 1. データをStageにPut 2. TableにLoad 3. CORTEX

    SEARCH SERVICEをCreate 4. Streamlit in Snowflakeで検索アプリを実装 5. 検索してみる © 2025 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. 検索アプリを作ってみる
  6. 1. (内部)Stageを作る 2. Stageに取り込みファイルを置く 1. json形式 2. csv形式 3. pdf形式

    など © 2025 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. 検索アプリを作ってみる:データをStageにPut
  7. 1. ファイルを解析するFunctionの作成 1. PDF→Text(PyPDF2など) 2. (OPTION)CHUNKに分割 © 2025 Chura DATA

    inc. PROPRIETARY & CONFIDENTIAL. 検索アプリを作ってみる:TableにLoad① chunkerの作成
  8. 3. テーブルへロード 1. FUNCTION:pdf_text_chunkerを使用 © 2025 Chura DATA inc. PROPRIETARY

    & CONFIDENTIAL. 検索アプリを作ってみる:TableにLoad② Tableへ
  9. 1. CREATE CORTEX SEARCH SERVICE © 2025 Chura DATA inc.

    PROPRIETARY & CONFIDENTIAL. 検索アプリを作ってみる:CORTEX SEARCH SERVICEをCreate
  10. © 2025 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. 検索アプリを作ってみる:CORTEX SEARCH

    SERVICEをCreate オプション 説明 ON chunk 検索対象のカラム ATTRIBUTES 検索結果のフィルタリングに使える WAREHOUSE 検索サービスを更新するのWAREHOUSE TARGET_LAG ソースクエリで指定されたベーステーブル の更新から遅れる最大時間 EMBEDDING_M ODEL multilingual-e5-large, nv-embed-qa-4, snowflake-arctic-embed- l-v2.0, voyage-multilingual-2, e5-base-v2, snowflake-arctic- embed-m, snowflake-arctic-embed-m-v1.5 AS サービスが作成されるベース・テーブルを 定義するクエリを指定
  11. voyage-multilingual-2 だけ 32,000 参考:Snowflake のベクトル化は何を使えばいいのか? (Cortex LLM Embedding) © 2025

    Chura DATA inc. PROPRIETARY & CONFIDENTIAL. 追加情報:トークン制限とテキスト分割
  12. Credit Consumption Table • AI Services - Serving costs •

    6.3 Credits per GB/mo of indexed data • AI Services - Embedding costs(100万トークン毎) • Cortex Embed Text 1024 – multilingual-e5-large 0.05 • Cortex Embed Text 1024 – nv-embed-qa-4 0.05 • Cortex Embed Text 1024 – snowflake-arctic-embed-l-v2.0 0.05 • Cortex Embed Text 1024 – voyage-multilingual-2 0.07 • Cortex Embed Text 768 – e5-base-v2 0.03 • Cortex Embed Text 768 – snowflake-arctic-embed-m 0.03 • Cortex Embed Text 768 – snowflake-arctic-embed-m-v1.5 0.03 © 2025 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. 追加情報:コスト①
  13. • Virtual warehouse • SERVICE作成時、更新時 • → TARGET_LAG しだい •

    Storage • テーブルの容量(TBあたり) • Cloud Service • ソースオブジェクトに対して変更があった際のト リガーの料金 © 2025 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. 追加情報:コスト②
  14. • Cortex Search ServiceにはMEDIUM 以下のサイズを推奨 • ウェアハウスを大きくしてもパフォーマンスが向上しない • Snowflake Cortex

    LLM 関数では、処理されるトークン の数に基づいて計算コストが発生 © 2025 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. 追加情報:利用ウェアハウス
  15. • 設定事項が少なくとてもシンプル • ニアゼロメンテナンスで楽 • 検索対象に検索したいカラムを文字列連結必要 • いにしえの全文検索の技法(?) • カラムごとの重み付けって難しそう

    • PDFやPPXからの抽出は、日本語で最適化されてない • ここは実装を待つか、外部関数を使う © 2025 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. まとめ