こんにちは、SCSK松岡です⛄
Snowflake Intelligenceは、生成AIを利用して自然言語によるデータ検索や要約を可能にしてくれる機能です。
本記事では、その利用を開始するために必要な設定を、アカウント管理者の視点から紹介します。
Snowflake Intelligence
Snowflake Intelligenceは先日のSnowflake Summit25で紹介された新機能で、2025年8月からプレビュー機能で利用できるようになりました。
この機能を活用することで、ユーザーはAIとの自然言語でのやり取りを通してSnowflake上のデータにアクセスし、データ活用を行うことができます。
データの検索や要約、可視化、さらにはアナリストのような分析も自動で行ってくれるため、高度なスキルを持たなくても、直感的にデータとの対話が可能になる機能として注目されています。
組織におけるデータ活用の推進において、様々なスキルレベルのユーザーにどう広く使ってもらうか、は課題になりがちな部分かと思います。Snowflake Intelligenceはその一つの解決策になり得る存在として期待しています。
Snowflake Intelligence利用に必要なアカウント設定
Snowflake Intelligenceを利用するためには、大きく4つのSTEPで設定が必要です。
- 専用のDB・スキーマを作成
- 生成AIモデルの利用許可
- エージェントを作成
- エージェントをカスタム
1. 専用のDB・スキーマを作成
--snowflake_intelligence用のDB・スキーマを作成してPUBLICに権限付与 CREATE DATABASE IF NOT EXISTS snowflake_intelligence; GRANT USAGE ON DATABASE snowflake_intelligence TO ROLE PUBLIC; CREATE SCHEMA IF NOT EXISTS snowflake_intelligence.agents; GRANT USAGE ON SCHEMA snowflake_intelligence.agents TO ROLE PUBLIC;
まず、エージェントの作成場所となるデータベース、スキーマを作成する必要があります。
--エージェントの作成権限を付与 GRANT CREATE AGENT ON SCHEMA snowflake_intelligence.agents TO ROLE [エージェント作成者のロール];
2. 生成AIモデルの利用許可
エージェントは、裏側で生成AIモデルを呼び出しながら動作します。そのため、事前にSnowflakeアカウント上で生成AIモデルを利用できるように設定する必要があります。
/* ①Cortex LLM を許可リストに追加 */ ALTER ACCOUNT SET CORTEX_MODELS_ALLOWLIST = 'All'; /* ②AWS_USリージョンにクロスリージョン推論を許可 */ ALTER ACCOUNT SET CORTEX_ENABLED_CROSS_REGION = 'AWS_US'; /* ③モデルの追加設定を反映 */ CALL SNOWFLAKE.MODELS.CORTEX_BASE_MODELS_REFRESH();
Snowflakeアカウントに対し、生成AIモデルへのアクセスを許可します。(①)
例では、すべて(ALL)のモデルへのアクセスを許可しています。
Snowflake Intelligenceに対応しているモデルは日本のAPJリージョンでは直接対応していないため、異なるリージョンを経由して推論を行うようにする必要があります。
モデルの追加設定を行った後は、反映するためにリフレッシュが必要です。(③)
3. エージェントを作成
エージェントの作成はSnowsightから行うことができます。
Snowsightで、1.でCREATE権限を付与したロールを指定し、[AIとML>エージェント]メニューに移動してエージェントの作成を行います。
エージェントを作成すると、[AIとML>Snowflakeインテリジェンス]メニューのチャット画面で作成したエージェントを選択できるようになります。これで、生成AIモデルとの会話が行えるようになります!
作成時以外のロールにエージェントの利用を許可する場合は、作成したエージェントの編集画面から、[アクセス]メニューを選択してロールの追加を行います。
Snowflake Intelligenceのエージェントによる操作は、実行したユーザーの権限が適用されて動作します。
4. エージェントをカスタム
エージェントをただ作成しただけでは、Snowflake上に保管したデータへのアクセスは行ってくれません。
(一般的な回答のみを行います)
エージェントにSnowflakeのDB上のデータを検索させたり分析させたりしたい場合、「ツール」を紐づけてカスタマイズする必要があります。
エージェントの編集画面の[ツール]では、従来のSnowflakeのAI機能を紐づけることで、エージェントがどのようにデータへアクセスするかを指定できます。
ツールの代表的なものがCortex Analyst と Cortex Searchです。
Cortex Analystは構造化データの検索に、Cortex Searchは画像やPDFのような非構造化データの検索に対応しています。
ツールを紐づけると、エージェントは単なる回答生成にとどまらずオーケストレーションの役割を担います。ユーザーの問いかけに応じて、必要なツールを柔軟に組み合わせて使いこなすことが可能になります。
たとえば、自然言語での問い合わせに対してまず関連するドキュメントを検索し、そこから得た情報をもとにSQLを自動生成して値を算出するといった、一連の操作を自動化してくれるようになります。
最後に
本記事では、アカウント設定を行ってSnowflake Intelligenceを動作できるようにするところまでをご紹介しました。
ここまではまだAI活用のための入口で、エージェントによるデータ分析や検索を実際の業務に生かせるほどの精度にするためには、セマンティックモデルの作成がカギを握ります。
セマンティックモデルとは、業務上の用語や指標をメタデータとして整理し、AI が解釈できる形に定義する仕組みです。
AI は人と同じように、複雑で整理されていない情報からは力を発揮しづらい一方で、メタデータやセマンティックモデルが整備されているほど、その能力を最大限に発揮します。
Snowflake Intelligenceの力を最大限引き出すために、いろいろと試行錯誤してみたいと思います!