より信頼性の高いGenie spacesのためのナレッジストアを構築する
Genie ナレッジ ストアを使用すると、ローカライズされたメタデータ、プロンプト マッチング、構造化された SQL 命令を通じて、スペースをキュレートおよび強化できます。これらの機能は、Genie がデータを理解し、より正確で関連性の高い応答を生成するのに役立ちます。
ナレッジストアとは
ナレッジストアは、Genie によるデータの理解を深め、応答の精度を向上させる、厳選されたセマンティック定義のコレクションです。
ナレッジストアは、次のもので構成されます。
- スペース レベルのメタデータのカスタマイズ : テーブル、列、ビジネス用語および同義語のスペース固有の説明。
- スペースレベルのデータのカスタマイズ : 基盤となるUnity Catalogテーブルを変更せずに、簡素化され焦点を絞ったデータセット。
- プロンプトのマッチング : Genie がユーザーの質問に最も関連性の高い値をマッチングし、ユーザー プロンプトのスペルの問題を修正するのに役立つ例。これには、形式の支援とエンティティのマッチングが含まれます。
- 結合関係 : 正確な
JOINステートメントのためにテーブル関係を定義しました。 - SQL 式 : ビジネス ロジックをキャプチャするメジャー、フィルター、ディメンションの構造化された定義。
すべてのナレッジ ストア構成は、 Genieスペースにスコープが設定され、 Unity Catalog メタデータやその他の Databricks 資産には影響しません。
ナレッジ ストアのメタデータを管理する
ローカル テーブルと列の説明を提供し、一般的なビジネス用語に沿った列の同義語を追加することで、スペース内のデータについて Genie に教えます。不要な列や重複する列を非表示にしてデータセットを簡素化し、Genie の焦点を絞り込みます。
これらのプラクティスにより、基になるテーブルに対する直接のアクセス許可を持たないユーザーの使いやすさが向上し、命令バージョンを更新する際のより迅速なイテレーションもサポートされます。
スペースレベルのメタデータにアクセスするには、Genieスペースで [>データの構成 ] をクリックします。次に、テーブル名をクリックして、そのメタデータと列を表示します。
列の表示
テーブル名をクリックすると、列名と詳細の概要が表示されます。次の例は、 accountsという名前のテーブルのサンプルを示しています。

-
説明: Genie はメタデータを使用してデータを理解し、正確な応答を生成します。安心テーブルの説明には、データ資産に関連付けられたUnity Catalogメタデータが表示されます。 この説明を編集して、Genie がスペースの SQL を作成するのに役立つ具体的な指示を追加します。Unity Catalog説明を復元するには、 「リセット」 をクリックします。
-
列: 列名と説明が列リストに含まれます。各列には、 フォーマット支援 または エンティティ マッチング が含まれているかどうかを示すタグが付けられます。プロンプト一致の概要を参照してください。
関連する列を非表示または表示する
列は、個別に管理することも、一括で管理することもできます。列を非表示または表示するには、次の手順を使用します。
-
1つの列を非表示にする : 列名の横にある
をクリックします。
-
複数の列を非表示 にする:
- 非表示にする列のチェックボックスを選択します。
- [ アクション] メニューから [選択した列を非表示] を選択します。
-
変更を元に戻 す: 同じ手順を繰り返して、非表示にした列を表示します。
列メタデータの編集
列ごとに以下をカスタマイズできます。
- 説明 : Genie の理解を深めるスペース固有の列の説明。
- 同義語 : ユーザーの言語と列名を一致させるのに役立つビジネス用語とキーワード。
- 詳細設定 : プロンプト一致コントロール。
- フォーマットのサポート : 代表値のサンプリングをオンまたはオフにします。
- エンティティ マッチング : カテゴリ列のエンティティ マッチングを有効または無効にします。
列のメタデータを編集するには:
- クリック
列名の横にある鉛筆アイコン。
- 列の説明とシノニムを編集します。
- 必要に応じて、 [詳細設定] をクリックしてプロンプト一致コントロールを開きます。
- [ 保存] をクリックして変更を保持し、ダイアログを閉じます。
プロンプトマッチングの概要
プロンプト マッチングにより、Genie はユーザーの質問に最も関連性の高い列と値を一致させ、ユーザー プロンプトのスペルの問題を修正できます。これにより、Genie の精度が向上し、より信頼性の高い SQL クエリを生成できるようになります。
ユーザーが Genie で質問する場合、その言い回しは会話形式であることが多く、スペルミスなどの誤りが含まれることがあります。このような場合、プロンプトの値はデータの構造または値と一致しない可能性があります。これにより、Genie が質問を誤って解釈し、誤った SQL を生成する可能性があります。
例
次の例を確認してください。
「第 1 四半期のフロリダ州の自動車販売台数を表示してください。」
データに州の略語 ( FLなど) が使用されていて、Genie がその列の値にアクセスできない場合、Genie は結果を返さないILIKE '%Florida%'を含む SQL を生成することがあります。
state列でエンティティ マッチングを有効にすると、Genie は代表的な値にアクセスできるようになります。このコンテキストにより、Genie はFL 「フロリダ」に対応することを認識し、より正確な SQL を生成できます。
エンティティマッチングなし | エンティティマッチング |
|---|---|
|
|
一致するコンポーネントをプロンプトする
- フォーマット アシスタンス : フォーマット アシスタンスは、対象となるすべての列の代表的な値を提供し、Genie がデータ型とフォーマット パターンを理解するのに役立ちます。プロンプト マッチングの代表的な値は、作成者のデータ権限を使用して生成されます。これらの値はスペースの共有コンテキストの一部となり、Genie がスペースのすべての参加者に対してユーザープロンプトをより正確に解釈するのに役立ちます。
- エンティティ マッチング : エンティティ マッチングでは、州や製品カテゴリなど、ユーザーが特定のエントリを参照する可能性のある最大 120 列の個別の値の厳選されたリストが提供されます。これにより、Genie はユーザーの用語を実際のデータ値に一致させることができます。各列には最大 1,024 個の異なる値を含めることができ、各値の長さは最大 127 文字です。エンティティ マッチング データは、ワークスペースのストレージ バケットに保存されます。
Genie は、スペースにテーブルを追加すると、対象となる列のフォーマット支援とエンティティ マッチングを自動的に提供します。行フィルターまたは列マスクを含むテーブルは、プロンプト一致から除外されます。
プロンプトマッチングの管理
Genie によるデータの理解を最適化するために、フォーマット支援とエンティティ マッチングを提供する列を制御します。プロンプト マッチングは、すべてのGenie spacesに対して有効になります。
フォーマット支援の管理
Genieスペースにテーブルを追加すると、フォーマットアシスタントが自動的に適用されます。
列の書式設定アシスタンスをオフにするには:
- Genieスペースで 設定 > データ をクリックします。
- テーブル名をクリックすると、その列が表示されます。
- クリック
列名の横にある鉛筆アイコン。
- [ 詳細設定] をクリックします。
- フォーマットアシスタンス をオフにします。
このアクションにより、その列のエンティティ マッチングも自動的に無効になります。必要に応じて、この設定を使用して フォーマット アシスタンスを 再度オンにします。
エンティティマッチングを構成する
Genie は、プロンプト、関連するテーブル メタデータ、プロンプト一致機能、エラー信号、および入力コードまたはクエリを使用して応答を生成します。列でエンティティ マッチングが有効になっている場合、Genie は保存された値を活用して、ユーザー プロンプトを実際のデータとより正確に一致させます。これにより、より信頼性の高い SQL クエリが生成されます。エンティティ マッチングは、特に明確なサンプル クエリとよく練られた指示と組み合わせると、Genie の精度を大幅に向上させます。詳細については、 「効果的なGenieスペースをキュレートする」を参照してください。
Genie では、行フィルターまたは列マスクを含むテーブルでエンティティ マッチングを有効にできません。ただし、スペース作成者は、行フィルターまたは列マスクを持つテーブルを参照するビュー、または動的ビューに対してエンティティ マッチングを無効にする必要があります。
次のリストには、エンティティ マッチングに適したデータの種類の例が含まれています。
- 州または国コード
- 製品カテゴリ
- ステータス コード
- 学科名
エンティティ マッチングを有効にするには、 フォーマット アシスタンスを オンにする必要があります。次に、次のステップを使用します。
- Genieスペースで 設定 > データ をクリックします。
- テーブル名をクリックすると、その列が表示されます。
- クリック
列名の横にある鉛筆アイコン。
- [ 詳細設定] をクリックします。
- エンティティマッチング をオンにします。
- 列のエンティティ マッチングを無効にするには、 エンティティ マッチング をオフにします。

プロンプト一致データを更新または削除する
プロンプト一致データを更新すると、列の保存された値が更新されます。次の場合に値を更新します:
- 列に新しい値が追加されました。
- 既存の値の形式が変更されました。
プロンプト一致データを更新するには、をクリックします。列ビューでケバブ メニューを開き、 プロンプトの一致を更新します 。

結合関係を定義する
Genie がテーブル関係を定義することで、正確な JOIN ステートメントを作成できるようにします。
-
[ 結合] をクリックします。
-
[ 追加 ] をクリックします。
-
ドロップダウンメニューから左右のテーブルを選択します。
-
結合条件 を入力します(例:
accounts.id = opportunity.accountid)- より複雑な結合条件の場合は、 「SQL 式の使用」 をクリックし、結合条件を SQL 式として記録します。
-
関係タイプ を選択します。
- 多対 1 : 複数の左行が 1 つの右行にマップされます
- 1 対多 : 左の 1 行が右の複数の行にマップされます
- 1 対 1 : 左の 1 行が最大で右の 1 行にマップされます

同じテーブル間に複数の結合が存在する場合、または自己結合が使用されている場合、Genie はあいまいさを避けるために右側のテーブルのエイリアスを自動的に生成します。
フィードバックから提案を得る
ユーザーがテーブルを結合したり SQL 式を使用したりしているメッセージに対していいねをクリックすると、Genie は応答を分析し、スペース作成者が確認してナレッジ ストアに追加するための新しい SQL スニペット (メジャー、結合、フィルターなど) を提案できます。Genie はフィードバックに基づいて自動的に学習したり動作を変更したりすることはありません。
SQL式を定義する

SQL 式は、KPI、属性、条件などの一般的なビジネス用語を Genie に教えるための構造化されたガイド付きの方法を提供します。Genie は、ユーザーがこれらのビジネス用語について質問したときに、これらの定義を使用します。
SQL 式は、手順で指定されているサンプル SQL クエリを補完します。SQL 式は再利用可能なビジネス コンセプトを定義しますが、SQL クエリの例は、一般的なユーザー プロンプト形式へのアプローチ方法を Genie に教えるのに役立ちます。たとえば、ユーザーが一般的に「業績の内訳」を求める場合、サンプル SQL クエリでは、これが地域、営業担当者、およびマネージャー別の成約済み売上を意味することが示されます。
SQL 式は、次のような場合に最適です。
- 利益率やコンバージョン率など、KPI とメトリクスの構造化された定義を提供します。
- 重要な値を計算する方法について Genie に明確なコンテキストを与える
- 月や顧客セグメントなど、データセットの追加ディメンションを定義する
- 大量注文や特定の時間前の注文などのビジネス条件に合わせて Genie フィルターを学習します
SQL式の種類
次のタイプの SQL 式を定義できます。
- 尺度 : 重要業績評価指標 (KPI) とメトリクス。 名前、SQL 計算、同義語を定義します。
- フィルター : 一般的なフィルタリング条件。名前、SQL フィルター ロジック、および同義語を定義します。
- ディメンション : データをグループ化および分析するための属性。名前、SQL 式、および同義語を定義します。
SQL 式を定義するには、次の手順に従います。
- 設定 > 手順 > SQL式 をクリックします
- [追加]を クリックします。 フィルター 、 メジャー 、または ディメンション を選択します。
- 「名前」 フィールドに式の名前を入力します。
- コード フィールドに SQL 式を入力します。
- フィルタ式はブール条件として評価される必要があります。
- メジャー式では、テーブル内の複数の行にわたって集計を計算する必要があります。
- ディメンション式は、既存のデータから各行の値を変更する必要があります。
- 「同義語」 フィールドに、ユーザーが口語的に表現を指す一般的な方法を入力します。
- 「指示」 フィールドに、式の目的とその操作方法を Genie に伝える具体的な指示を入力します。
次のステップ
次のリンクを使用して、 Genieスペースの構築を継続してください。
- Genieスペースにコンテキストを追加して、正確な応答を生成するのに役立ちます。「SQL の例と手順を追加する」を参照してください。
- Genieスペースを最適化するためのベストプラクティスをご覧ください。「効果的なGenieスペースをキュレーションする」を参照してください。
- スペースのパフォーマンスを評価し、改善します。Genieスペースでベンチマークを使用するを参照してください