AI/BI Genie 空間とは
この記事では、ビジネス チームが自然言語を使用してデータを操作できるようにする Azure Databricks 機能である AI/BI Genie について説明します。 組織の用語とデータに合わせて調整された生成 AI を使用し、ユーザーフィードバックを通じてパフォーマンスを監視および調整する機能を備えています。
概要
データ アナリストなどの分野の専門家は、Genie スペースをデータセット、サンプル クエリ、テキスト ガイドラインを使って構成し、Genie がビジネスの質問を分析クエリに変換することを支援できます。 設定後、ビジネス ユーザーは質問をしたり、視覚化を生成したりして、オペレーショナル データを理解できます。 データが変化したり、ユーザーが新しい質問をしたりするたびに、Genie のセマンティック知識を継続的に更新できます。 DatabricksIQ の詳細については、「DatabricksIQ を利用した機能」を参照してください。
AI/BI Genie は、注釈付きテーブルと列から関連する名前と説明を選択して、自然言語の質問を同等の SQL クエリに変換します。 その後、可能であれば、生成されたクエリと結果テーブルで応答します。 Genie が回答を生成できない場合は、フォローアップの質問をして、回答を提供する前に明確にすることができます。
ユース ケースの例
異なる Genie スペースを作成して、さまざまな非技術的な対象ユーザーにサービスを提供できます。 以下のシナリオで、考えられる 2 つのユース ケースについて説明します。
例 1: 営業案件の状態の視覚化
営業マネージャーは、営業パイプラインの段階別に、進行中の案件と終了した案件の現在の状態を取得したいと考えています。 自然言語を使用して Genie スペースと対話し、視覚化を自動的に生成できます。
次の gif は、この対話を示しています。
例 2: ロジスティクスの追跡
ある物流会社は、Genie スペースを使用して、さまざまな部門のビジネス ユーザーが運用と財務の詳細を追跡できるようにしたいと考えています。 出荷施設のマネージャーが出荷を追跡するための Genie スペースを 1 つ設定し、もう 1 つは財務役員が財務の正常性を把握できるように設定しました。
Genie が応答を生成する方法
Genie は、複合 AI システム を使用して、ビジネスの質問を解釈し、回答を生成します。 複合 AI システムは、単純な統計モデルである AI モデルを使用する代わりに、複数の対話コンポーネントを組み合わせて AI アプリケーションのタスクを処理します。 複合 AI システムは、AI アプリケーションのパフォーマンスと柔軟性により、ますます一般的な設計パターンになっています。 詳細については、「モデルから複合 AI システムへの移行」を参照してください。
ユーザーが質問を送信すると、Genie は要求を解析し、関連するデータ ソースを識別し、プロンプトに応答する方法を決定します。 提供する手順と Unity カタログ メタデータを組み合わせることで、Genie はビジネス ロジックと技術ロジックの両方を推論できます。 Genie は、SQL クエリの例、テーブルと列のメタデータ、チャット履歴をインテリジェントにフィルター処理して、要求に応答するための最も関連性の高い情報を選択します。
Genie は、次のコンポーネントを使用して応答を生成します。
- テーブル メタデータ: テーブル名、説明、および定義済みの主キー (PK) リレーションシップと外部キー (FK) リレーションシップが含まれます。 Genie はこのデータを使用して要求を解析し、自然言語プロンプトを SQL に変換します。
- 列名と説明: Genie は、含める関連する列名と説明をインテリジェントにフィルター処理します。
- SQL クエリの例: Genie は、命令から関連する SQL 例をインテリジェントに選択します。
- SQL 関数: スペースに追加されたすべての SQL 関数。
- 命令: 一般的な手順 として提供されるプレーンテキスト ノートがコンテキストとして含まれます。
- プロンプトと応答の履歴: 現在のチャットからのプロンプトと応答がコンテキストとして含まれます。 必要に応じて、トークンの制限設定されているため、チャット レコードの最も古い部分は除外されます。
Note
所有者やテーブル サイズなど、一部のテーブルの詳細は既定では含まれません。 この情報にアクセスするには、すべての Unity カタログ カタログで使用できる情報スキーマのビューを使用できます。 既定のビューには不要な詳細が含まれる場合があるため、その上にカスタム ビューを作成すると、必要な特定の情報に集中できます。 情報スキーマで使用できる内容の詳細については、「情報スキーマの
結果として Genie からクエリが返された場合は、指定された SQL ウェアハウスで実行されます。 再試行は自動的に処理され、SQL ウェアハウスはコンカレンシーとスケールを処理します。
どのようなデータを使用する必要がありますか?
Genie スペースには、マネージド テーブル、外部テーブル、外部テーブル、具体化されたビューなど、Unity カタログに登録されている 1 つ以上のテーブルを含めることができます。 AI/BI Genie は、Unity Catalog のオブジェクトに添付されたメタデータを使って応答を生成します。 適切に注釈が付けられたデータセットと、指定した特定の手順を組み合わせることは、エンド ユーザーにとって肯定的なエクスペリエンスを作成するための鍵となります。
Databricks では次を行うことを推奨しています。
- 分析での利用向けにデータをキュレーションする: 列の数を減らすようにビューを階層化し、ユース ケース固有の情報を追加して応答品質を向上させます。
- Genie スペース内のテーブルと列の数を最小限に抑える: 特定のドメインの質問に回答するために必要なテーブルと列のみを含めます。 不要なテーブルまたは列を使用すると、Genie が混乱や誤った回答を提供したり、エラー メッセージを表示したりする可能性があります。
- 主キー (PK)/外部キー (FK) リレーションシップを定義: Unity カタログを使用して PK/FK リレーションシップを定義し、Genie がデータの接続方法を理解できるようにします。
信頼されたアセット
信頼できる資産は、結果の精度に対する追加の保証レイヤーをスペース ユーザーに伝えます。 パラメーター化されたサンプルクエリまたは SQL 関数の正確なテキストを使用して応答を生成すると、Genie はその応答を 信頼されたアセットとしてマークします。。 「AI/BI Genie スペースで信頼されたアセットを使用する」を参照してください。
チャット スレッド
ほとんどの Genie スペースの対話はチャット ウィンドウで行われます。 チャット スレッドは、各ユーザーの対話のレコードを保存します。 各チャット スレッドでは、質問された前の質問に関するコンテキストが維持されます。 Genie は、スレッドチャット履歴のコンテキストを使用して、ユーザーがフォローアップの質問をしてさらに調査したり、結果セットを再フォーカスしたりするときに学習します。
スペースに少なくとも閲覧権限を持つユーザーは、自分のチャット履歴を表示できます。 少なくとも CAN EDIT 権限を持つユーザーは、スペースの [履歴] タブですべての質問と回答を確認できます。
回答を確認する
ほとんどの応答には、自然言語の説明と、関連する結果セットを示すテーブルが含まれます。 正確な応答構造は、質問によって異なります。 すべての応答には、質問に回答するために生成された SQL クエリが含まれます。
スペース ユーザーと作成者は、質問に対する回答を確認できます。 各応答をサムアップまたはサムダウンで評価したり、レビューする応答を求めたりすることができます。 空間編集者と作成者は、Genie 空間の [履歴] タブ
ベンチマークを使用して応答を評価する
ベンチマークを使用すると、Genie スペースでの個々の応答のテストと評価をスケールアップできます。 指示とは異なり、ベンチマークは情報提供のためではなく、Genie スペースを評価するためのものです。 Genie では、Genie のコンテキストを改善するためにベンチマークの質問や SQL の例を使用しません。
ベンチマークを使用すると、テスト質問のコレクションを実行し、応答を使用して Genie の精度を測定できます。 必要に応じて、期待される結果を返す SQL ステートメントを含めることができます。 ベンチマークの質問が実行されると、Genie の応答は SQL ステートメントによって提供された結果と比較され、精度のスコアが付けられます。 SQL の回答が提供されていない場合、質問はレビュー対象としてマークされます。
「Genie スペースでベンチマークを使用する」をご覧ください。
プライバシーとセキュリティ
Q: Genie はどのようなモデルを使用していますか?
Genie は Azure OpenAI モデルを使用します。
Q: モデルに送信されているデータは何ですか?
Genie スペースは、メタデータと命令を使用して自然言語の質問に対する応答を生成します。 Genie は行レベルのデータにアクセスできません。
Genie は応答を処理するために、次のコマンドを使用します。
- ユーザーによって送信された自然言語プロンプト
- テーブル名と説明
- 列のタイトルと説明
- 全般的な手順
- SQL クエリの例
- SQL 関数
Q: Azure OpenAI は自分のデータを収集しますか?
いいえ。 Databricks は、Azure OpenAI サービスに送信されたプロンプトと完了を Microsoft が保存しない、不正使用の監視とヒューマン レビュー プログラムの除外を選択しました。 詳細については、 Microsoft のドキュメントを参照してください。