Semantic View Autopilot

Snowsight では、 Cortex Analyst のデータに対して論理テーブルを定義するために、セマンティックビューを作成および管理できます。セマンティックビューは物理テーブルを抽象化し、データ上にビジネスフレンドリーなレイヤーを提供します。セマンティックビューを Cortex Analyst で使用してビジネス上の質問に回答したり、データ分析を実行したりできます。セマンティックビューを手動で作成するか、 AI 支援ジェネレーターであるSemantic View Autopilotを使用してセマンティックビューを作成できます。

注釈

このセクションの手順を使用してセマンティックモデルを作成することもできますが、代わりにセマンティックビューを使用することをお勧めします。セマンティックビューは以下の機能を提供します。

  • セマンティックビューは、派生メトリクスなどの高度な機能をサポートします。

  • セマンティックビューはアクセス変更をサポートします。デフォルトで公開されていますが、プライベートにすることができます。

  • セマンティックビューは、Snowflakeの権限システム、共有メカニズム、メタデータカタログと統合されたスキーマオブジェクトです。セマンティックモデルはステージに格納された YAML ファイルで、これらのネイティブデータベース統合がありません。

ジェネレーターは、次の入力を使用してビューを構築します。

  • クエリ履歴:SQL クエリ履歴を表示して、一般的な使用パターン、関係、検証済みのクエリ提案を特定します。

  • テーブルメタデータ:説明、主/一意キー、カーディナリティを抽出して関係を決定します。

  • コンテキスト(強く推奨):SQL クエリ例または提供するTableauファイルを使用して関係を検証し、関連するビジネスロジックを抽出します。

前提条件

セマンティックビューを作成するには、次の権限を持つロールを使用する必要があります。

  • ビューを作成するスキーマに対する CREATE SEMANTIC VIEW 。

  • データベースとスキーマに対する USAGE

  • セマンティックビューで使用されるテーブルとビューに対する SELECT

Tableauからモデルをエクスポートし、それを使用してセマンティックビューを自動生成できます。前述の前提条件に加えて、Tableauインジェスチョン機能には以下が必要です。

  • 書き込み権限があるステージ。

  • Tableauファイルにカスタム SQL が含まれている場合、 SQL は通常のSnowflakeビューに解析されるため、スキーマに対する CREATEVIEW 権限も必要となります。

コンテキストの提供のオプション

コンテキストの提供はオプションですが、高品質のセマンティックビューを作成するのに非常に役立ちます。それがないと、モデルはデータベーススキーマの情報のみを使用することになり、ビジネス上のニュアンスに欠けてしまう可能性があります。コンテキストを提供するために次のオプションをサポートしています。

オプション1:Tableauファイルをアップロード

Semantic View Autopilotは、Tableauからのファイルを使用したセマンティックモデルの自動生成をサポートしています。これにより、既存のビジネスロジックとメタデータをSnowflakeに直接移行できます。

Tableau DesktopまたはTableau Onlineのいずれかを使用して、ファイルをSemantic View Autopilotに提供できます。Semantic View Autopilotは、次のファイル形式をサポートしています。

  • TWB

  • TWBX

  • TDS

ファイルは以下の制約を満たしている必要があります。

  • ファイルサイズ:50 MB 未満である必要があります。

  • 公開されたデータソースは対象外:公開されたデータソースを含むファイルは現在サポートされていません。

  • 大きな抽出は対象外:.twbxファイルを使用する場合は、大きな抽出が含まれていないことを確認してください。.twbファイルを使用する場合は、大きなフィルターやパラメーターが含まれていないことを確認してください。

  • LOD 計算:詳細レベル(LOD)計算はサポートされていません。

Tableau Desktopから TWB または TWBX ファイルを取得できます。見つからない場合は File | Save As に移動して、 TWB として保存することを選択できます。

Tableau Onlineからのビューまたはワークブックの取得に関する情報については、 ` ビューとワークブックのダウンロード <https://help.tableau.com/current/pro/desktop/en-us/export.htm>`__ をご参照ください。

TableauファイルをSemantic View Autopilotに提供すると、オートパイロットはそれを解析して次のメタデータを抽出します。

  • テーブルと列

  • テーブル間の関係

  • Tableau計算フィールド

  • パラメーターとフィルター

  • カスタム SQL (解析され、通常のSnowflakeビューに変換されます)

オプション2:SQL クエリの提供

自然言語の質問とそれに対応する SQL クエリの例を追加できます。これは、モデルが特定のビジネスロジックを学び、関係を作成するのに役立ちます。

Snowflakeはこれらのクエリを使用して、後続のステップでテーブルと列を事前に選択し、また、これらのクエリをセマンティックモデルの「検証済みクエリ」として自動追加します。さらに、有効な関係が推測できる場合、これらはセマンティックビューに追加されます。

セマンティックビューを作成する

セマンティックビューを作成するには、まずジェネレーターにナビゲートします。

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

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

  3. 上部で Create new を選択します。

  4. Create new Semantic View を選択します。

ジェネレーターに移動した後、セマンティックビューの基本情報を定義できます。

  1. ビューを格納するための Location (データベースとスキーマ)を選択します。

  2. セマンティックビュー用の Name を入力してください。

  3. Description を入力します。AI がビューの目的を理解できるよう支援するために、明確なビジネス用語を使用してください。

  4. Next を選択します。

コンテキストとデータをTableauファイルとして提供するには、次を実行します。

  1. Tableau .twb、.tds、または.twbxファイルをアップロードするには Tableau Files を選択します。

  2. アップロードするTableauファイルを選択します。

  3. Next を選択します。

これで、セマンティックビューのコンテキストとデータをTableauファイルとして正常に提供しました。

SQL クエリとしてコンテキストとデータを提供するには、次を実行します。

  1. SQL Queries を選択し、手動でGold標準の SQL クエリ例を追加します。

  2. SQL クエリを入力します。

  3. Next を選択します。

  4. テーブルから選択したテーブルと列を確認します。

  5. 含める特定の列を選択します。

  6. AI オプションの構成:

  • Sample Values:サンプル値を追加するかどうかを選択します。これにより、特定の地域名など特定のデータ値を認識できるようになり、 Cortex Analyst の精度が大幅に改善されます。

  • AI-Generated Descriptions:名前と内容に基づいて、テーブルと列の説明を自動生成するかどうかを選択します。これも精度を大幅に向上させる機能です。

セマンティックビューを作成するには、次を実行します。

  1. Create and save を選択します。

  2. Save and run を選択します。

セマンティックビューを生成するまでに数分かかる場合があります。画面で進捗状況を確認できます。

セマンティックビュー作成のベストプラクティス

セマンティックビューを作成するときは、以下のヒントに従って高精度を確保してください。

  • エンドユーザーの視点から考える。ビジネスユーザーが実際に使用する語彙に一致する名称や同義語を使用します(例: AMT_TOT の代わりに「収益」など)。

  • シンプルに開始する。小さく、的を絞った範囲から始めます。たとえば、3~5個のテーブルを使用した販売分析を徐々に拡大していきます。これにより、大規模な「すべてを実行する」モデルよりも高い精度が保証されます。

  • 生成されたコンテンツを精査する。AI生成の説明と関係を必ず精査します。実際のビジネスロジックと整合していることを確認してください。

  • 複雑なロジックをキャプチャする。メトリクスと検証済みクエリを使用して複雑な計算を処理し、ユーザーが生の列からそれらを推測する LLM に依存しないようにします。

  • テストして反復する。作成後、 Cortex Analyst で実際のビジネス上の質問を用いてビューをテストします。回答が間違っている場合は、検証済みクエリを追加するか、説明を更新して修正してください。