Databricks アシスタントを使用する
Databricks アシスタントは、Databricks ノートブック、SQL エディター、ジョブ、AI/BI ダッシュボード、ファイル エディターに役立つコンテキスト対応 AI アシスタントです。 Databricks アシスタントは、会話型インターフェイスを使用してサポートを依頼すると、データやコードを支援します。
アカウントについて: Databricks アシスタント機能を無効または有効にする
Azure AI 搭載の Databricks アシスタント機能はデフォルトで有効になっています。 ただし、アカウント管理者はアカウント内のすべてのワークスペースに対し、Azure AI 搭載のアシスタント機能を無効にすることができます。 アカウント管理者は、アカウント全体に対して Databricks アシスタントの有効化を適用することもできます。
ヒント
アカウントに Azure AI 搭載の Databricks アシスタント機能を有効または無効にする操作は、監査ログのアカウント イベントとして取り込まれます。「アカウントのイベント」を参照してください。
アカウント管理者として、アカウント コンソールにログインします。
重要
Microsoft Entra ID テナントのユーザーがまだアカウント コンソールにログインしていない場合、あなたかテナント内の別のユーザーが最初のアカウント管理者としてログインする必要があります。これを行うには、Microsoft Entra ID グローバル管理者になる必要がありますが、Azure Databricks Account Console に初めてログインしたときだけです。 最初のログイン時に、ユーザーは Azure Databricks アカウント管理者になり、Azure Databricks アカウントにアクセスするためには、Microsoft Entra ID 全体管理者の役割は不要になります。 最初のアカウント管理者は、Microsoft Entra ID テナント内のユーザーを (アカウント管理者をさらに割り当てることができる) 追加のアカウント管理者として割り当てることができます。 追加のアカウント管理者は、Microsoft Entra ID で特定のロールを必要としません。 「ユーザー、サービス プリンシパル、グループを構成する」を参照してください。
[設定]をクリックします。
[機能の有効化] タブをクリックします。
[Azure AI 搭載の機能の有効化] オプションには、[オフ] または [オン] を選択します。
[適用] 設定を使用してワークスペースのオーバーライドを防止する:
Azure AI を利用した Databricks Assistant 機能に使用されるサービスについては、Partner を利用した AI 支援機能設定によって管理される機能を参照してください。
ワークスペースについて: アシスタント機能を無効または有効にする
アカウント管理者がアシスタントを有効にすると、ワークスペースの既定で有効になります。 アカウント管理者がこの設定を適用しない限り、ワークスペース管理者は自分のワークスペースでこの設定を無効にできます。
ワークスペースの Databricks アシスタントを無効にするには、次の操作を行います。
- Databricks ワークスペースの上部バーにあるユーザー名 >[設定] をクリックします。
- 左側ペインの [ワークスペース管理] で、[詳細設定] タブをクリックします。
- アシスタントを無効にするには、[Azure AI 搭載の AI 支援機能] のトグルの [オフ] をクリックします。
アシスタント ペインのツアー
このセクションでは、アシスタント ウィンドウの既定の環境について説明します。
[Assistant]\ (アシスタント\) ウィンドウを開くには、左側のサイドバーの をクリックします。
[Assistant]\(アシスタント\) ウィンドウの下部にあるテキスト ボックスに質問を入力して、Enter キーを押すか、テキスト ボックスの右側にある をクリックします。 アシスタントによって回答が表示されます。 次のスクリーンショットは、アシスタントがコードを生成した後に [Assistant]\(アシスタント\) ウィンドウで実行できるアクションを示しています。
同じクエリをもう一度実行して、別の回答を生成できます。 これを行うには、回答の上にカーソルを置き、 をクリックします。
ウィンドウを閉じるには、もう一度アイコンをクリックするか、セルの右上隅にある をクリックします。 ウィンドウを全幅に展開するには、 をクリックします。ウィンドウを既定の幅に戻すには をクリックします。
[Assistant]\(アシスタント\) ウィンドウでは、ウィンドウまたはノートブックを閉じた場合でも会話が追跡されます。 以前の会話をクリアするには、[Assistant]\(アシスタント\) ウィンドウの右上にある をクリックします。
スレッドとプロンプト履歴
会話スレッドは Databricks アシスタントを利用可能な異なるコンテキスト間で保持されます。 [アシスタント] ペインでは、新しい会話スレッドの作成、質問とプロンプトの履歴の表示、Databricks アシスタント エクスペリエンスの管理を行うことができます。
Databricks アシスタントでは、プロンプトのコンテキストに基づいてスレッドのタイトルが付けられるため、アシスタントの会話の履歴を移動できます。 次の例は、ノートブックに関する質問からのものです。
ノートブック セルで Databricks アシスタントを使用する
ノートブックでは、Databricks アシスタントは [Assistant]\(アシスタント\) ウィンドウまたはコード セル内のインラインで使用できます。
コード セルで Databricks アシスタントを直接使用するには、MacOS では Cmd + I キーを押し、Windows では Ctrl + I キーを押します。 セルにテキスト ボックスが表示されます。 英語で質問またはコメントを入力してから、Enter キー (セルを実行する場合の Shift+Enter キーではありません) を押すと、アシスタントに応答を生成させることができます。
プロンプトにスラッシュ コマンドを使用する
スラッシュ コマンドは、一般的なプロンプトを作成するためのショートカットです。
プロンプト テキスト | アシスタントで実行できる操作 |
---|---|
/ |
一般的なコマンドを表示する |
/doc |
差分ビューでコードにコメントを付ける |
/explain |
セルにコードの説明を入力する |
/fix |
差分ビューでコード エラーの修正を提案する |
/findTables |
Unity Catalog のメタデータに基づいて関連するテーブルを検索します。 |
/findQueries |
Unity Catalog のメタデータに基づいて関連するクエリを検索します。 |
/optimize |
非効率的な SQL クエリを改善します。 |
/prettify |
読みやすさを考えてコードを書式設定します。 |
/rename |
コンテキストに応じて、ノートブックのセルやその他の要素に更新された名前を提案します。 |
/settings |
アシスタントからノートブックの設定を直接調整します。 |
/fix
または /doc
を使用する場合に、提案された変更を受け入れるには [Accept]\(承認\)、元のコードを保持するには [Reject]\(却下\) を選択します。 提案されたコードを受け入れても、コードは自動的に実行されません。 コードを確認してから実行できます。 生成されたコードが求めていたものではない場合、コメントに詳細または情報を追加して、もう一度やり直してください。 「Databricks アシスタントを使用するためのヒント」を参照してください。
コード スニペットの詳細な説明を取得します。 /explain
プロンプトを使用して「be concise」(簡潔にしてください) や「explain code line-by-line」(1 行ずつ説明してください) のような語を含めることで、必要な詳細レベルを要求できます。 コードにコメントを追加するように Databricks アシスタントに依頼することもできます。
コード オートコンプリートの場合、ノートブックのセルよりも [Assistant]\(アシスタント\) ウィンドウを使用した方がパフォーマンスが良くなることがあります。
アシスタントが自動的に閉じるのは、生成されたコードを承諾または却下した場合です。
を使用してプロンプトのテーブルを参照する @
アシスタント プロンプトでテーブルをすばやく参照するには、@
(at) 記号を使用します。
コードに関するヘルプを表示する
Databricks アシスタントは、SQL と Python の両方のコードに役立ちます。
- Databricks ノートブック、SQL エディター、およびファイル エディターにおける AI ベースのオートコンプリート。
- 自然言語プロンプトでデータをフィルター処理する
- Diagnose エラー (パブリック プレビュー) を使用したコード デバッグ。
Note
FedRAMP 準拠の Azure Government リージョンまたはワークスペースでは、インライン コードの候補を使用できません。
自然言語プロンプトを使用してデータをフィルター処理する
Databricks アシスタントを使用して、自然言語プロンプトでデータ出力をフィルター処理します。
自然言語で出力をフィルター処理するには、出力テーブルの [フィルター] アイコンをクリックし、プロンプトを入力します。 たとえば、次のアニメーションの例のように、"70 歳以上の男性のみを表示する" という指示を出すことができます。
インライン コードの提案を取得する: Python と SQL の例
入力すると、候補が自動的に表示されます。 候補を受け入れるには、TAB キーを押します。 提案を手動でトリガーするには、Option + Shift + Space キー (macOS の場合) または Ctrl + Shift + Space キー (Windows の場合) を押します。
AI ベースのオートコンプリートでは、コメントからコードを生成することもできます:
デバッグコード: Python と SQL の例
重要
この機能はパブリック プレビュー段階にあります。
Databricks アシスタントを使用してコードを修正するには、次のいずれかを使用します。
- [アシスタント] ウィンドウで質問します。
- エラーが発生した場合は、セル結果に表示される [エラーの診断] ボタンをクリックします。
- [デバッグ] をクリックすると、コードを一行ずつ対話的に読み進めたり、ブレークポイントを設定したり、変数を検査したり、プログラムの実行を分析したりすることができます。
次のタブは、Python と SQL コードの例を示しています。
Python
SQL
[Diagnose エラー] をクリックすると、Assistant が自動的に /fix
を実行します。
クイック修復
コードにエラーが発生すると、クイック修正は 1 行の変更で修正できる基本的なエラーに対して自動的に修正案を提示してくれます。
[同意して実行] をクリックして推奨される修正を行い、コードの実行を続行します。
ジョブ内のエラーの診断 (パブリック プレビュー)
重要
この機能はパブリック プレビュー段階にあります。
Databricks アシスタントはジョブのエラー診断に役立ちます。
アシスタントを使用してジョブを診断するには、次の操作を行います。
- ジョブ UI から失敗したジョブを開きます。
- [診断エラー] を選択します。
Azure Databricks のドキュメントから回答を取得する
ノートブック エディターでは、Databricks アシスタントは Databricks ドキュメントに基づいて質問に回答できます。 プロンプト ボックスに質問またはプロンプトを入力します。
Databricks アシスタントを使用するためのヒント
このセクションには、Databricks アシスタントを使用するときの一般的なヒントとベスト プラクティスがいくつか含まれています。
Databricks アシスタントはコンテキストを使用してさらに適切な回答を提供
Databricks アシスタントは、テーブルと列のスキーマおよびメタデータにアクセスできます。 このため、自然言語を使用できるようになり、より正確なクエリを生成できるようになります。 たとえば、テーブルに State という列がある場合、Databricks アシスタントにミシガン州に住むユーザーのリストを生成するように依頼できます。
Databricks アシスタントは、次のコンテキストを使用します。
- 現在のノートブック セルまたは Databricks SQL エディター タブ内のコード/クエリ。
- テーブルと列の名前と説明。
- 以前のプロンプトの質問。
- お気に入りおよびアクティブなテーブル。
- エラー出力のスタック トレース (エラー診断機能の場合)。
DataFrame から列を選択するときは、開始クエリを指定することで、より正確な結果を得ることができます。 たとえば、SELECT * FROM <table_name>
のようなステートメントを指定します。 こうすると Databricks アシスタントが列名を取得でき、推測する必要がありません。
Databricks アシスタントは会話履歴を使用して、より適切で正確な回答を提供するため、以前の応答の出力を変更するように Databricks アシスタントに依頼できます。以下に示すように、プロンプト全体を書き換える必要はありません。 アシスタントのチャット履歴を使用して、[アシスタント] ペインで DataFrames のクリーン、探索、フィルター処理、スライスを繰り返し行います。
具体的にする
Databricks Assistant が提供する構造と詳細は、同じプロンプトであっても、随時異なります。 必要な形式、詳細レベルなどの情報を返すのに役立つできるだけ多くのガイダンスをアシスタントに提供してみてください。 次に例を示します。
- “このコードを 2 つの文で説明していただく” または “このコードを 1 行ずつ説明してください”。
- “MatPlotLib を使用して視覚化を作成する” または “Seaborn を使用して視覚化を作成します”。
行レベルのデータ値の例を示します
Databricks アシスタントは行レベルのデータを使用しないため、プロンプトにさらに詳しく指定すると、最も正確な回答を得ることができます。 カタログ エクスプローラーでテーブルまたは列のコメントを使用して、サンプル データの行を追加します。 たとえば、高さの列が feet
-inches
形式であるとします。 アシスタントがデータを解釈できるように、"高さ" 列は文字列形式で、ハイフンで区切られたコメントを追加します。 例: ‘6-2’。” テーブルと列のコメントの詳細については、「データと AI 資産にコメントを追加する」を参照してください。
操作を実行するために列データ型の変換が必要な場合は、詳細を指定する必要がある場合があります。 例: 「このコードを Pandas から PySpark に変換してください。Pandas DataFrame を PySpark DataFrame に変換するために必要なコードを組み込み、列のデータ型を chum から integer に変更します。」
Shift + Enter キーを使用してチャット テキスト ボックスに新しい行を追加する
Shift+Enter キーを使用してアシスタントのチャット テキスト ボックスに新しい行を追加します。 これにより、Databricks アシスタントに対するメッセージの書式設定と整理が簡単になります。
Databricks アシスタントのチャット ウィンドウでコードを編集して実行する
[アシスタント] ペインでコードを実行して検証したり、スクラッチパッドとして使用したりします。 コードを実行するには、[Assistant]\(アシスタント\) ウィンドウのコード ボックスの左上隅にある をクリックします。
次のタブは、Python と SQL コードの例を示しています。
Python
SQL
[Assistant]\(アシスタント\) ウィンドウでコードを実行すると、出力が表示され、変数がノートブックで使用できるようになります。
また、Databricks アシスタントによって生成されたコードを、アシスタントのチャット ボックスで直接編集してから、そのコードをノートブックに移動することもできます。
追加情報
次の記事には、Databricks アシスタントの使用に関するその他の情報が含まれています。