SnowflakeでCortex Analystを試してみる(2025/8)
はじめに
最近自然言語でデータベースと直接会話できるサービスがいろいろ出てきているのですが、今回はSnowflakeで自然言語を用いて分析できる「Cortex Analyst」を試してみました。
Databricksなどでも簡単に作れる「Genie」などがありますが、そちらと比べた上でどうなんだろうというのが気になり、作ってみます。
今回は業務をイメージした上で、下記を考えながらポチポチ作っていこうと思います。
- 簡単に構築できるのか
- APIは使えるか(やってはいないが、機能だけ調査)
Cortex Analystを試してみる
ステップ1:Snowflake Trialでアカウントを作る
まずはSnowflakeでTrialアカウントを作ります。
最近どのクラウドサービスもですが、Trialで色々試せてありがたいです。
ステップ2:Cortex Analystを構築してみる
Snowflakeを立ち上げて、機能をみているとCortex Analystをすぐ見つけることができました。
ただ、これを使うには下記の検討・設定が必要だったので、Dataの方から使うデータを見ていき、設定を続けます。
- どのデータを使うか
- Semantic View/Modelを設定する

どのデータを使うか
サンプルデータの中に購買データのサンプルがあったので、こちらを使ってやっていこうと思います。

Semantic View/Modelを設定
Cortex Analystを開くとSemantic ViewもしくはModelを作成することができます。
これらの違いを調べると、
- Semantic ViewはViewに保存
- Viewは毎回処理して更新されるtableみたいなもの
- https://zenn.dev/kommy339/articles/88712f2a7270b0
- Semantic ModelはyamlとしてStageに保存
- Stageは様々なファイル形式を入れられる場所
- yaml, pickle, jsonなど
下記のような感じで保存場所がStageか、Semantic Modelかで変わります。

今回はSemantic Modelを試しますが、Semantic ModelをViewにするボタンがあり、すぐ変換できそうです。
Semantic Modelを作る
保存するStageを選びます。

読み込むテーブルを選びます。

読み込むカラムを選びます。

できました。

チャットもできました。

検証済みクエリとして登録することができ、次回以降の同じ質問や似た質問の信頼性向上に役立てる機能もありそうでした。もちろんyamlファイル周りをもっと詳細に作ることもよさそうです。

APIの話
こちらも試そうかと思ったのですが、疲れたので終了します。
しかし、機能としてありそうなので、何かしらダッシュードに組み込んで実施するみたいなことはできそうです。
Snowflake Intelligence
こちら最近Preview状態なのですが、Cortex AnalystやCortex Searchを一緒に分析できるツールとして使えるようです。
Agent機能もあるようなので、勝手にいい感じに分析するのとかも将来できる期待しています。
Discussion