エージェントのユーザーアクセスおよび設定

このトピックでは、ユーザーが|sf-intelligence|のエージェントとやり取りするために必要な権限や、|sf-intelligence|インターフェースおよび高度なアクセス制御機能で使用できる設定に関する情報を提供します。

|sf-intelligence|で使用するエージェントがない場合は、:doc:`/user-guide/snowflake-cortex/snowflake-intelligence/build-agents`のガイドを使用して作成してください。

|sf-intelligence|インターフェースをカスタマイズする

ユーザーがCortex Agentとやり取りするために使用する|sf-intelligence|インターフェースをカスタマイズするには、次の手順に従います。

  1. Snowsight にサインインします。

  2. ナビゲーションメニューで AI & ML » Agents を選択します。

  3. Open settings を選択します。

  4. :ui:`Snowflake Intelligence`で、次の設定を変更します。

    • Display name:ユーザーに表示される|sf-intelligence|インターフェース名。

    • Welcome message:ユーザーが最初に Snowflake Intelligence インターフェースを開いたときに表示されるメッセージ。

    • Color theme:Snowflake Intelligence インターフェースの色テーマ。

      カスタムプライマリ色を16進数形式で指定できます。

    • Full-length logo および Compact logo:ナビゲーションペインを展開または折りたたむと、それぞれ表示されるロゴ。

    • Compact logo:ブラウザータブに表示されるアイコン。

  5. Save を選択します。

ユーザーの権限とアクセス制御

|sf-intelligence|でエージェントを表示するには、ユーザーは次の権限を持っている必要があります。

権限

オブジェクト

メモ

USAGE

データベース、スキーマ

エージェントを表示するために必要です。

USAGE

エージェント

Cortex Agentにクエリして応答を生成するために必要です。

エージェントにアタッチされたツールにアクセスするには、ユーザーは次の権限を持っている必要があります。

権限

オブジェクト

メモ

USAGE

データベース、スキーマ

エージェントにアタッチするツールに関連付けられたオブジェクトにアクセスするために必要です。

USAGE

Cortex Searchサービス

Cortex AgentsリクエストでCortex Searchサービスを実行するために必要です。

SELECT

テーブル

エージェントのセマンティックビュー/モデルで参照されるオブジェクトにアクセスするために必要です。

USAGE

ツール

エージェントが応答を生成するために使用できるすべてのカスタムツールにアクセスするために必要です。例えば、カスタムツールがストアドプロシージャの場合、ユーザーはプロシージャに対するUSAGEを持っている必要があります。

USAGE

セマンティックビュー/モデル

エージェントが参照するセマンティックビュー/モデルにアクセスするために必要です。

特定のロールへのアクセス制限

CORTEX_USERロールのあるユーザーは、エージェントを含むすべてのCortex機能にアクセスできます。デフォルトでは、このロールはPUBLICロールに付与されます(すべてのユーザーおよびロールに自動的に付与されます)。この権限をすべてのユーザーには与えたくない場合は、PUBLICロールから取り消し、特定のロールのみにアクセス権を付与できます。詳細については、 Cortex LLM 権限 をご参照ください。

PUBLICロールからCORTEX_USERロールが取り消された後、CORTEX_AGENT_USERロールを付与できます。このロールのあるユーザーはCortex AgentのAPIにのみアクセスできます。|sf-intelligence|を使用できますが、Cortexの他の機能は使用できません。

  • 一部のユーザーのみがCortex Agentの機能にアクセスできるように選択的なアクセスを提供するには、まずPUBLICロールへのアクセスを取り消してから、特定のユーザーにCORTEX_AGENT_USERロールを付与します。

    GRANT DATABASE ROLE SNOWFLAKE.CORTEX_AGENT_USER TO ROLE <role_name>;
    
    Copy

詳細については、 アクセス制御の要件 をご参照ください。

プライベート接続で Snowflake Intelligence を構成する

|sf-intelligence|はAWS PrivateLinkおよびAzure Private Linkとの統合をサポートしており、これを利用することで、仮想プライベートクラウド(VPC)または仮想ネットワーク(VNet)と|sf-intelligence|との間にプライベート接続を確立できます。プライベート接続を構成するには、このプライベート接続を介してトラフィックを |sf-intelligence| サービスに誘導するための適切な DNS 解決を設定する必要があります。

なお、 AWS PrivateLink とAzure Private LinkはSnowflakeが提供するサービスではありません。これらはそれぞれ、SnowflakeがSnowflakeアカウントでの使用をサポートしている、 AWS のサービスとMicrosoftのサービスです。

前提条件

プライベート接続で Snowflake Intelligence に接続する前に、次の前提条件を完了します。

  • 次のいずれかを実行します。
    • AWS PrivateLinkを設定するには、:doc:`/user-guide/admin-security-privatelink`の指示に従います。

    • Azure Private Linkを設定するには、:doc:`/user-guide/privatelink-azure`の指示に従います。

  • regionless-snowsight-privatelink-url`が利用可能であることを確認するには、ACCOUNTADMINシステムロールを使用して、:doc:/sql-reference/functions/system_get_privatelink_config`関数を呼び出します。

重要

Snowflake Intelligence はプライベート接続アクセスに、リージョンレス URL 形式のみを使用します。Snowflakeに使用される他のプライベート接続URLsとは異なり、ホスト名に:code:`us-west-2,`などのリージョン識別子を含めないでください。リージョン固有のURLを使用して接続しようとすると、失敗します。

Snowflake Intelligence に接続する

Snowflake Intelligence に接続するには、Snowflake Intelligence が サブドメインを使用するように DNS を構成します。

  • プライベートDNSゾーン:code:`privatelink.snowflakecomputing.com`にCNAMEレコードを作成し、次のURLをVPCまたはVNETエンドポイントのDNS名にマッピングします。

    si-<org-acct>.privatelink.snowflakecomputing.com
    
    Copy

構成が完了すると、ネットワーク内のユーザーは URL から Snowflake Intelligence にアクセスできます:

https://si-<org-acct>.privatelink.snowflakecomputing.com
Copy

接続は、プライベート接続上で安全にルーティングされます。

プライベート接続によるユーザー認証

プライベート接続で|sf-intelligence|にアクセスするユーザーは、標準のSnowflake認証プロセスを使用します。このプロセスでは、サインインページでアカウント識別子、ユーザー名、パスワードを入力する必要があります。

ユーザーをIDプロバイダーにリダイレクトする

アカウント管理者は、認証されていないユーザーが Snowflake Intelligence にアクセスした場合に、IDプロバイダー(IdP)にリダイレクトするようにすべてのユーザー URLs を構成できます。このプロセスにより、ユーザーのサインインフローから1つのステップが不要になります。

  • 認証されていないユーザーをURLsからIdPにリダイレクトするには、次のSQLコマンドを実行し、:samp:`{your_security_integration}`をIdP用に構成されているセキュリティ統合の名前に置き換えます。

    ALTER ACCOUNT SET LOGIN_IDP_REDIRECT = (SNOWFLAKE_INTELLIGENCE = <your_security_integration>);
    
    Copy

注釈

  • プライベート接続で|sf-intelligence|にアクセスされた場合にIdPリダイレクトを使用するには、次のURL形式を使用してトラフィックを|sf-intelligence|サービスに転送するようにDNSを構成する必要があります。

    https://si-<org-acct>.privatelink.snowflakecomputing.com
    
    Copy

詳細については、 プライベート接続で Snowflake Intelligence を構成する をご参照ください。

IdP を使用するようにSnowflakeアカウントを構成する際の詳細情報については、次のトピックをご参照ください。

ユーザーのアクセスを Snowflake Intelligence のみに制限する

ユーザーが|sf-intelligence|のみにアクセスできるように制限し、Snowflakeの他の部分にアクセスできないようにするには、:doc:`/sql-reference/sql/alter-user`SQLコマンドまたは:code:`allowedInterfaces`SCIM属性を使用できます。 いずれかの方法で:code:`ALL`以外の値が指定されている場合、ユーザーは指定されたインターフェースにのみアクセスでき、指定されたインターフェースの外部にあるSnowflakeデータを操作することはできません。

  • ユーザーが|sf-intelligence|にのみアクセスできるように制限するには、:doc:`/sql-reference/sql/alter-user`SQLコマンドを使用します。

    ALTER USER <user_name> SET ALLOWED_INTERFACES = (SNOWFLAKE_INTELLIGENCE);
    
    Copy
  • SCIM APIsを使用してユーザーをプロビジョニングする場合、同じ制限を設定するには、カスタム属性:code:`allowedInterfaces`を使用します。

SCIM カスタム属性の詳細については、カスタム属性 をご参照ください。

制限事項

|sf-intelligence|には現在、|sf-intelligence|のみのユーザーに対して次の制限があります。

  • カスタムブランド化のロゴとアイコンは Snowflake Intelligence のみのユーザーに対しては機能せず、デフォルトはSnowflakeのロゴとアイコンです。

  • Snowflake Intelligence のみのユーザーはファイルをアップロードできません。

|sf-intelligence|オブジェクト

|sf-intelligence|オブジェクトは、アカウントレベルのオブジェクトであり、|sf-intelligence|内のすべてのエージェント、およびアカウントにおけるそれらの設定を管理するために使用されます。|sf-intelligence|オブジェクトには、次の利点があります。

  • **柔軟性:**アカウントのどこでもエージェントを作成および管理できます。エージェントは単一のスキーマに一元化する必要がありません。

  • **エージェントの可視性管理:**単一のオブジェクトを使用して、すべてのユーザーに表示されるエージェントを制御します。

  • **権限管理の改善:**エージェントを作成する機能と、|sf-intelligence|で表示されるエージェントを制御する機能を分離します。

注釈

|sf-intelligence|オブジェクトの使用は高度な構成オプションであり、|sf-intelligence|でエージェントを管理するために必須ではありません。アカウントに|sf-intelligence|オブジェクトがある場合、エージェントを表示させるにはそのオブジェクトに追加する必要があります。追加されていない場合、エージェントには:ref:`直接リンク<label_snowflake_intelligence_use_agent>`またはSnowsight UIを使用してのみアクセスできます。

|sf-intelligence|オブジェクトを設定する

注釈

|sf-intelligence|オブジェクトを作成するには、ロールにCREATE SNOWFLAKE INTELLIGENCE ON ACCOUNT権限が必要です。

ユーザーに|sf-intelligence|オブジェクトを設定するには、このプロセスに従います。詳細については次のセクションで説明します。

  • Snowflake Intelligence オブジェクトを作成する|sf-intelligence| オブジェクトは、アカウント内の Snowflake Intelligence で使用されるすべてのエージェントを管理するための単一のオブジェクトです。アカウント内で持つことができる Snowflake Intelligence オブジェクトは1つだけです。

  • Snowflake Intelligence オブジェクトにエージェントを追加します。

  • |sf-intelligence|オブジェクトに対するUSAGE権限をGRANTします。

Snowflake Intelligence オブジェクトを作成する

|sf-intelligence|オブジェクトを作成するには、|sf-web-interface|またはSQLを使用できます。

Snowflakeは Snowflake Intelligence を初めて変更した際に自動的に Snowflake Intelligence オブジェクトを作成します。UI を使用して作成された場合、Snowflake Intelligence オブジェクトは SNOWFLAKE_INTELLIGENCE_OBJECT_DEFAULT という名前になります。別の名前は指定できません。

  1. Snowsight にサインインします。

  2. ナビゲーションメニューで AI & ML » Agents を選択します。

  3. Snowflake Intelligence タブで、 Open settings を選択します。その Snowflake Intelligence オブジェクトがまだ存在しない場合は自動的に作成されます。その後、オブジェクトにエージェントを追加できます。

エージェントの追加

Snowflake Intelligence オブジェクトは、エージェントのリストを含むアカウントレベルのオブジェクトです。このオブジェクトからエージェントを追加または削除すると、ユーザー用のエージェントの厳選されたリストを作成できます。エージェントの追加または削除の詳細については、Snowflake Intelligence でエージェントの可視性を構成する をご参照ください。

Snowflake Intelligence 権限を付与する

次の権限は Snowflake Intelligence オブジェクトへのアクセスを制御します。

  • **アカウントのCREATE SNOWFLAKE INTELLIGENCE:**|sf-intelligence|オブジェクトの作成を許可する権限。この権限はデフォルトでは ACCOUNTADMIN に付与されます。

    この権限を別のロールに付与するには、次のコマンドを実行します。

    GRANT CREATE SNOWFLAKE INTELLIGENCE ON ACCOUNT TO ROLE <role_name>;
    
    Copy
  • **Snowflake IntelligenceオブジェクトのUSAGE:**ユーザーが|sf-intelligence|オブジェクトに追加されたエージェントのリストを表示し、構成値を確認できるようにする権限。

    この権限を付与するには、次のコマンドを実行します。

    GRANT USAGE ON SNOWFLAKE INTELLIGENCE SNOWFLAKE_INTELLIGENCE_OBJECT_DEFAULT TO ROLE <role_name>;
    
    Copy
  • **Snowflake IntelligenceオブジェクトのMODIFY:**ユーザーが|sf-intelligence|オブジェクトに対してエージェントを追加または削除し、構成値を変更できるようにする権限。アカウント管理者にはデフォルトでこの権限があります。

    この権限を付与するには、次のコマンドを実行します。

    GRANT MODIFY ON SNOWFLAKE INTELLIGENCE SNOWFLAKE_INTELLIGENCE_OBJECT_DEFAULT TO ROLE <role_name>;
    
    Copy
  • |sf-intelligence|オブジェクトをすべてのユーザーに表示するには、PUBLICロールに対してオブジェクトのUSAGE権限を付与します。

    GRANT USAGE ON SNOWFLAKE INTELLIGENCE SNOWFLAKE_INTELLIGENCE_OBJECT_DEFAULT TO ROLE PUBLIC;
    
    Copy

ACCOUNTADMINロールを使用している場合は、|sf-intelligence|オブジェクトに対するMODIFY権限も持っています。これにより、オブジェクトにエージェントを追加または削除して、ユーザー用のエージェントの厳選されたリストを作成できます。

ユーザーのために Snowflake Intelligence を設定するには、エージェント権限を構成する必要があります。エージェントに必要な権限については、アクセス制御の要件 をご参照ください。

重要

デフォルトでは、 Snowflake Intelligence は、ユーザーのデフォルトのロールとデフォルトのウェアハウスを使用します。|sf-intelligence|を使用するよう他のユーザーを招待する場合は、そのユーザーが既定のロールとウェアハウスを持っていることを確認してください。

注釈

Snowflake Intelligence からのすべてのクエリはユーザーの認証情報を使用します。ユーザーに関連付けられたすべてのロールベースのアクセス制御およびデータマスキングポリシーは、エージェントとのすべての相互作用と会話に自動的に適用されます。

Snowflake Intelligence でエージェントの可視性を構成する

場合によっては、|sf-intelligence|でユーザーに表示されるエージェントを制限したいことがあります。例えば、特定のユーザーまたはユーザーグループに関連するエージェントのみを表示したい場合があります。

|sf-intelligence|オブジェクトを作成しておらず、それにエージェントを追加していない場合、ユーザーにはアカウント内でアクセスできるすべてのエージェントが自動的に表示されます。

  • すべてのユーザーの|sf-intelligence|インターフェースに表示されるエージェントを制御するには、対象のエージェントを|sf-intelligence|オブジェクトに追加し、エージェントの厳選されたリストを作成します。

|sf-intelligence|オブジェクトを確認する

  • アカウントに Snowflake Intelligence オブジェクトが作成されているかどうかを確認するには、次のコマンドを使用します。

    SHOW SNOWFLAKE INTELLIGENCES;
    
    Copy

注釈

アカウントに存在できる Snowflake Intelligence オブジェクトは1つのみです。

|sf-intelligence|オブジェクトでエージェントを管理する

  • Snowflake Intelligence オブジェクトにエージェントを追加するには、次のコマンドを使用します。

    ALTER SNOWFLAKE INTELLIGENCE SNOWFLAKE_INTELLIGENCE_OBJECT_DEFAULT ADD AGENT <db.schema.agent_name>;
    
    Copy
  • Snowflake Intelligence オブジェクトからエージェントを削除するには、次のコマンドを使用します。

    ALTER SNOWFLAKE INTELLIGENCE SNOWFLAKE_INTELLIGENCE_OBJECT_DEFAULT DROP AGENT <db.schema.agent_name>;
    
    Copy

注釈

適切なデータベースおよびスキーマ権限を持つユーザーまたは管理者は、エージェントを作成できます。ただし、エージェントは|sf-intelligence|オブジェクトに自動追加されません。エージェントを|sf-intelligence|オブジェクトに追加するには、ユーザーは|sf-intelligence|オブジェクトに対するALTER権限と、エージェントに対するUSAGE権限を持っている必要があります。

エージェントを Snowflake Intelligence オブジェクトに追加するには、管理者はエージェントに対する USAGE 権限を持っている必要があります。

SNOWFLAKE_INTELLIGENCE.AGENTSスキーマによるエージェントの可視性の管理から|sf-intelligence|オブジェクトへの移行

重要

SNOWFLAKE_INTELLIGENCE.AGENTS スキーマは、エージェントの可視性を管理するためのメカニズムとしては非推奨になりました。このスキーマを現在使用している場合は、Snowflake Intelligence オブジェクトに移行することをお勧めします。

SNOWFLAKE_INTELLIGENCE.AGENTS スキーマを使用している場合、エージェントは引き続き機能します。詳細については、Snowflake Intelligence でエージェントの可視性を構成する をご参照ください。ただし、Snowflake Intelligence オブジェクトに移行することで、次の利点があります。

  • **柔軟性:**アカウントのどこでもエージェントを作成および管理できます。エージェントは単一のスキーマに一元化する必要がありません。

  • **権限管理の改善:**エージェントを作成する機能と、|sf-intelligence|で表示できるようにする機能を分離します。

  • 命名の競合の減少::code:`SNOWFLAKE_INTELLIGENCE.AGENTS`スキーマ名との潜在的な競合を排除します。

  • **エージェントの可視性管理が容易に:**単一のオブジェクトを使用して、すべてのユーザーに表示されるエージェントを制御します。

エージェントを移行する前に|sf-intelligence|オブジェクトを作成する必要があります。Snowflake Intelligence オブジェクトの作成の詳細については、|sf-intelligence|オブジェクト をご参照ください。

  • |sf-intelligence|オブジェクトにエージェントを追加するには、次のコードを使用します。

    ALTER SNOWFLAKE INTELLIGENCE SNOWFLAKE_INTELLIGENCE_OBJECT_DEFAULT ADD AGENT SNOWFLAKE_INTELLIGENCE.AGENTS.<agent_name>;
    
    Copy

エージェントにアクセスする

エージェントを作成したら、ユーザーはデータからインサイトを得るために質問できます。エージェントは、次のような質問に答えることができます。

  • 最終四半期の平均販売額は?

  • 先月最も多くのユニットを販売した製品は何ですか?

  • 前年の売上傾向を表示できますか?

また、次の視覚化も提供できます。

  • 棒グラフ

  • 折れ線グラフ

  • 円グラフ

  • 散布プロット

エージェントを使用するには、次のステップに従います。

プライベート接続なしで|sf-intelligence|にアクセスするには、次のURLに移動します。

https://ai.snowflake.com
Copy

注釈

同じ会話スレッド内でエージェントを切り替えて、エージェントとのやり取り全体でコンテキストを保持できます。

エージェントの使用状況のモニタリングとフィードバック

エージェントのログを表示すると、ユーザーとエージェントのやり取りの詳細を確認できます。ログには、ユーザーがエージェントに送信したプロンプト、エージェントが提供した応答、発生したエラーなどの情報が含まれます。エージェントのログの表示の詳細については、Cortex Agentのリクエストのモニター をご参照ください。

組織内のユーザーがエージェントと対話すると、ユーザーはエージェントが提供する応答に関するフィードバックを提供できます。このフィードバックは、ユーザーの満足度に関する大まかなインサイトを提供します。エージェントのユーザーフィードバックを表示するには、:doc:`/user-guide/snowflake-cortex/cortex-agents-monitor`を参照してください。