Databricks Assistantを使用する

Databricks Assistant は、ノートブック、SQL エディター、ファイル エディターで利用できるコンテキスト認識型 AI アシスタントです。 このドキュメントではノートブックに焦点を当てています。 Databricks の他の機能での使用法も同様です。

Databricks Assistantでできること

Databricks Assistant は次のタスクに役立ちます。

  • コードの生成、デバッグ、最適化、および説明を行います。

  • データからビジュアライゼーションを作成します。 「Databricks Assistant を使用してビジュアライゼーションを作成する」を参照してください。

  • ジョブのデバッグ (パブリック プレビュー機能)。

  • SQL クエリをコーディングおよび編集します。

  • Databricksドキュメントで関連するヘルプを見つけます。

アシスタントは Unity Catalog メタデータを使用して、社内のテーブル、列、説明、一般的なデータ資産を理解し、パーソナライズされた応答を提供します。

Databricks Assistantを有効にする

Databricks Assistant はデフォルトで有効になっています。 「アカウントの場合: Databricks Assistant 機能を有効または無効にする」を参照してください。

ノートブックのセルで Databricks Assistantを使用する

ノートブックでは、Databricks Assistantはアシスタントペインまたはコードセルのインラインで使用できます。

コード セル内で Databricks Assistant を直接使用するには、MacOS ではCmd + i 、Windows ではCtrl + i を押します。 セルにテキストボックスが表示されます。 質問やコメントを英語で入力し、 Enter キーを押すと(セルを実行するときのようにShift+Enter キーではなく)、アシスタントが応答を生成できます。

インライン アシスタントは、エンリッチメント データの検索と追加に役立ちます。

セル操作プロンプト

プロンプトのショートカットは、一般的なプロンプトの作成に役立ちます。

プロンプト テキスト

アシスタントの機能

/

一般的なコマンドを表示します

/doc

差分ビューでコードにコメントを付ける

/explain

セル内のコードの説明を提供します

/fix

差分ビューのコードエラーの修正を提案します

/fix または /docを使用する場合は、差分ウィンドウで [同意する] を選択して提案された変更を受け入れるか、[拒否] を選択して元のコードを保持します。提案されたコードを承認した場合、コードは自動的に実行されません。 コードを実行する前に、コードを確認できます。 生成されたコードが期待どおりでない場合は、コメントに詳細や情報を追加してもう一度試してください。 Databricks Assistant の使用に関するヒントを参照してください。

コードのオートコンプリートの場合、ノートブックのセルよりもアシスタント ペインを使用した方がパフォーマンスが向上する可能性があります。

アシスタントは、生成されたコードを 承認 または 拒否 すると自動的に閉じます。

[アシスタント] ウィンドウを使用する

このセクションでは、アシスタント ペインのデフォルトのエクスペリエンスについて説明します。

[アシスタント] ペインを開くには、左側のサイドバーの製品内ヘルプアシスタントアイコン - グレー をクリックします。

使用中のアシスタントペインのスクリーンショット。

[アシスタント] ウィンドウの下部にあるテキスト ボックスに質問を入力し、 Enter キーを押すか、テキスト ボックスの右側にあるアシスタントのテキストを入力します。 をクリックします。 すると、アシスタントに回答が表示されます。 次のスクリーンショットは、アシスタントが [アシスタント] ウィンドウでコードを生成した後に実行できるアクションを示しています。

アシスタントペインのコードボックスの上部にあるアイコン。

同じクエリを再度実行して、別の回答を生成できます。 これを行うには、回答の上にカーソルを置き、クエリーアイコンを再生します。をクリックします。

ウィンドウを閉じるには、アイコンをもう一度クリックするか、セルの右上隅にあるアシスタントアイコンを閉じます。 をクリックします。 全角を開くアイコン。 をクリックすると、ペインを全幅に拡大できます。ペインをデフォルトの幅に戻すには、全幅アイコンを閉じるをクリックします。

アシスタントペインの上部にあるアイコン。

[アシスタント] ウィンドウでは、ウィンドウやノートブックを閉じた場合でも会話が追跡されます。 以前の会話を消去するには、[アシスタント] ペインの右上にあるアシスタントアイコンをクリアします。 をクリックします。

スレッドとプロンプト履歴

会話スレッドは、Databricks Assistant が利用可能なさまざまなコンテキストにわたって保持されます。 [アシスタント] ウィンドウから、新しい会話スレッドを作成したり、質問とプロンプトの履歴を表示したり、 Databricks Assistantエクスペリエンスを管理したりできます。

アシスタントペインの上部にあるアイコン。

Databricks Assistant はプロンプトのコンテキストに基づいてスレッドにタイトルを付けるため、アシスタントの会話の履歴をナビゲートできます。 次の例は、ノートブックに関する質問からのものです。

Databricks Assistant スレッドのタイトルの例。

AIベースのオートコンプリート

プレビュー

この機能はパブリックプレビュー段階です。

AI ベースのオートコンプリートにより、Databricks ノートブック、SQL エディター、ファイル エディターに入力するときにインライン コードの候補が表示されます。 インライン コードの提案は、Python と SQL で利用できます。

インラインコード提案を取得: Python と SQL の例

入力すると、候補が自動的に表示されます。 提案を受け入れるには、 Tabを押します。 手動で提案をトリガーするには、 Option + Shift + Space (macOS の場合) またはControl + Shift + Space (Windows の場合) を押します。

SQL のコード補完のアニメーション GIF。
Python のコード補完のアニメーション GIF。

AI ベースのオートコンプリートでは、コメントからコードを生成することもできます。

コメントからのコード補完のアニメーション GIF。

デバッグコード: Python と SQL の例

Databricks Assistant を使用してコードを修正するには、次のいずれかを実行します。

  • [アシスタント] ウィンドウで質問します。

  • エラーが発生したときにセルの結果に表示される [ エラーの診断 ] ボタンをクリックします。

  • [デバッグ]をクリックすると、対話的にコードを 1 行ずつステップ実行し、ブレークポイントを設定し、変数を検査し、プログラムの実行を分析できます。

以下のタブには、Python および SQL コードの例が表示されます。

Python でのアシスタントのデバッグ例。
SQL でのアシスタントのデバッグ例。

コードの説明

Databricks Assistant は、コード スニペットの詳細な説明を提供できます。 /explain プロンプトを使用し、"簡潔にする" や "コードを 1 行ずつ説明する" などの用語を含めて、必要な詳細レベルを要求します。Databricks Assistant にコードにコメントを追加するよう依頼することもできます。

Databricksドキュメントから情報を取得する

データベース エディターでは、 Databricks Assistant Databricksドキュメントに基づいて質問に答えることができます。 質問またはプロンプトをプロンプトボックスに入力します。

Databricksドキュメントに基づいて質問に回答します。

Databricks Assistantを使用するためのヒント

このセクションには、Databricks Assistantを使用する際の一般的なヒントとベストプラクティスが含まれています。

Databricks Assistantによるコンテキストを使用した適切な回答の提供

Databricks Assistant は、テーブルと列のスキーマおよびメタデータにアクセスできます。 これにより、自然言語を使用して、より正確なクエリを生成できます。 たとえば、テーブルにStateという列がある場合、Databricks Assistant にミシガン州に住んでいるユーザーのリストを生成するように依頼できます。

Databricks Assistant は次のコンテキストを使用します。

  • 現在のノートブック セルまたは Databricks SQL エディター タブ内のコードまたはクエリ。

  • テーブルと列の名前と説明。

  • 以前のプロンプトの質問。

  • お気に入りのテーブルとアクティブなテーブル。

  • エラーの診断 機能の場合、エラー出力からのスタックトレース。

DataFrame から列を選択する場合、開始クエリを指定すると、より正確な結果を得ることができます。 たとえば、 SELECT * FROM <table_name>のようなステートメントを指定します。 これにより、Databricks Assistant は列名を取得できるようになり、推測する必要がなくなります。

Databricks Assistant は会話履歴を使用してより適切で正確な回答を提供するため、プロンプト全体を書き直さなくても、以前の応答の出力を変更するように Databricks Assistant に依頼できます。 アシスタントのチャット履歴を使用して、アシスタント ペインでDataFrames繰り返しクリーンアップ、探索、フィルタリング、スライスします。

具体的な指示

Databricks Assistant が提供する構造と詳細は、同じプロンプトであっても時々変化します。 アシスタントが希望する形式、詳細レベルなどで必要な情報を返すことができるように、できる限り多くのガイダンスを提供するようにしてください。 例えば:

  • 「このコードを数文で説明してください」または「このコードを行ごとに説明してください」。

  • 「MatPlotLib を使用してビジュアライゼーションを作成」または「Seaborn を使用してビジュアライゼーションを作成」。

行レベルのデータ値の例を挙げる

Databricks Assistant は行レベルのデータを使用しないため、最も正確な回答を得るには、プロンプトにさらに詳細な情報を提供する必要がある場合があります。 「カタログエクスプローラ」(Catalog Explorer) でテーブルまたは列のコメントを使用して、サンプルデータの行を追加します。 たとえば、高さの列が feet-inchesという形式であるとします。 アシスタントがデータを解釈できるように、「高さの列は文字列形式であり、ハイフンで区切られています。」などのコメントを追加します。 例: '6-2'。 テーブルと列のコメントの詳細については、 「データとAIアセットにコメントを追加する」を参照してください。

操作を実行するために列のデータ型変換を使用する必要がある場合は、詳細を指定する必要がある場合があります。 たとえば、「このコードをPandasからPySparkに変換します。これには、 Pandas DataFrameをPySpark DataFrameに変換し、列 churn のデータ型をBooleanから整数に変更するために必要なコードが含まれます」。

Shift+Enterを使用して、チャットテキストボックスに新しい行を追加する

Shift+Enter キーを使用して、[アシスタント チャット] テキスト ボックスに新しい行を追加します。これにより、Databricks Assistant へのメッセージのフォーマットと整理が容易になります。

Databricks Assistantのチャットウィンドウでコードを編集して実行する

アシスタント ペインでコードを実行して検証するか、スクラッチパッドとして使用します。 コードを実行するには、コードを実行するアイコンアシスタント ペインのコード ボックスの左上隅にあります。

以下のタブには、Python および SQL コードの例が表示されます。

アシスタントペインでコードを実行する
アシスタントペインでコードを実行する

[アシスタント] ペインでコードを実行すると、出力が表示され、変数がノートブックで使用できるようになります。

コードをノートブックに移動する前に、Databricks Assistant が生成したコードをアシスタントチャットボックスで直接編集することもできます。

追加情報

次の記事には、Databricks Assistant の使用に関する追加情報が含まれています。