SNOWFLAKE_INTELLIGENCE.AGENTSスキーマに登録していたエージェントをアカウントレベルのSnowflake Intelligenceオブジェクトに移行してみた
さがらです。
2025年11月にSnowflake Intelligenceが一般提供となりましたが、併せてSNOWFLAKE_INTELLIGENCE.AGENTSスキーマが非推奨となり、アカウントレベルのSnowflake Intelligenceオブジェクトに移行するよう公式Docも更新されていました。
The SNOWFLAKE_INTELLIGENCE.AGENTS schema is deprecated as a mechanism for managing agent visibility. If you’re currently using this schema, we recommend migrating to the Snowflake Intelligence object.
私もSNOWFLAKE_INTELLIGENCE.AGENTSスキーマでエージェントを作成して管理していたため、この移行作業を行ってみました。その内容について本記事でまとめてみます。
移行するメリット
SNOWFLAKE_INTELLIGENCE.AGENTSスキーマからアカウントレベルのSnowflake Intelligenceオブジェクトに移行するメリットですが、以下のような点が挙げられます。
- エージェントの管理を単一のスキーマにしなくて済む
- 「エージェントを作成する場所」と「Snowflake Intelligenceで公開するエージェントの登録先」を分離できる
- 「エージェントを作成する場所」は任意のデータベースとスキーマ、「Snowflake Intelligenceで公開するエージェントの登録先」はアカウントレベルのSnowflake Intelligenceオブジェクトとなります
1. アカウントレベルのSnowflake Intelligenceオブジェクトの作成
まず、アカウントレベルのSnowflake Intelligenceオブジェクトを作成します。(1つのアカウントに存在するSnowflake Intelligenceオブジェクトは1つだけとなるため、ご注意ください。)
以下のクエリをACCOUNTADMINロールで実行して、Snowflake Intelligenceオブジェクトを作成します。このsnowflake_intelligence_object_defaultというオブジェクト名は、GUIで作成する場合のデフォルトの名称がこちらのため、アカウントに1つしか作れないことを考えると名称を合わせておいた方が無難かと思います。
use role accountadmin; create snowflake intelligence snowflake_intelligence_object_default; 
作成後、以下のクエリを実行するとSnowflake Intelligenceオブジェクトが出来ていることがわかります。
show snowflake intelligences; 
2. Snowflake Intelligenceオブジェクトにエージェントを登録
続いて、Snowflake IntelligenceオブジェクトにSNOWFLAKE_INTELLIGENCE.AGENTSスキーマで作成していたエージェントを登録します。
今回は私が作った以下2つのエージェントがあるため、この2つのエージェントをSnowflake Intelligenceオブジェクトに登録していきます。

実際の登録作業としては、SQLでSnowflake Intelligenceオブジェクトにエージェントを登録できます。今回は以下のクエリを実行しました。
alter snowflake intelligence snowflake_intelligence_object_default add agent snowflake_intelligence.agents.sagara_test; alter snowflake intelligence snowflake_intelligence_object_default add agent snowflake_intelligence.agents.sagara_snowflake_documentation_agents; この後、Agentsの画面から確認すると、2つのエージェントがSnowflake Intelligenceに登録されていることがわかります。

3. エージェントを管理していたSNOWFLAKE_INTELLIGENCE.AGENTSスキーマを名称変更
SNOWFLAKE_INTELLIGENCE.AGENTSスキーマにまだエージェントは残っているのですが、このSNOWFLAKE_INTELLIGENCE.AGENTSスキーマは非推奨となるため、データベースとスキーマの名称を変更します。
以下は実際に私が実行した一例です。
-- データベースをリネーム alter database snowflake_intelligence rename to sagara_agents_db; -- スキーマをリネーム(データベースリネーム後の名前で実行) use database sagara_agents_db; alter schema agents rename to my_agents; この後対象のエージェントをSnowsightで確認すると、データベース名とスキーマ名が変更されているのが確認できました。これで移行は完了です!

最後に
SNOWFLAKE_INTELLIGENCE.AGENTSスキーマに登録していたエージェントをアカウントレベルのSnowflake Intelligenceオブジェクトに移行する手順についてまとめてみました。
Snowflake IntelligenceのチュートリアルなどはまだSNOWFLAKE_INTELLIGENCE.AGENTSスキーマを使用する構成になっていることも多いため、もしSNOWFLAKE_INTELLIGENCE.AGENTSスキーマを利用していましたら移行をご検討ください!







