この記事では、Databricks Assistant を使用してノートブックをコーディングおよびデバッグする方法について説明し、アシスタントを最大限に活用する方法に関するヒントを提供します。
Databricks Assistant は何に役立ちますか?
Databricks Assistant はコンテキスト対応の AI アシスタントであり、会話インターフェイスを使用して対話できるため、Databricks 内での生産性が向上します。 タスクを英語で記述し、アシスタントが Python コードまたは SQL クエリを生成したり、複雑なコードを説明したり、エラーを自動的に修正したりできます。 アシスタントは、Unity Catalog メタデータを使用して、会社全体のテーブル、列、説明、人気のあるデータ資産を理解し、パーソナライズされた応答を提供します。
Databricks Assistant は、次のタスクに役立ちます。
- コードを生成します。
- エラーの修正プログラムの識別と提案など、コードをデバッグします。
- コードの変換、最適化、リファクタリング。
- コードについて説明します。
- Azure Databricks のドキュメントで関連情報を見つけるのに役立ちます。
Databricks Assistant を強化するモデルの詳細については、 パートナーによる AI 機能に関する説明を参照してください。 Databricks Assistant の一般的な情報については、「 Databricks Assistant とは」を参照してください。
ノートブックの Assistant コマンド ショートカット
ノートブックでは、Databricks Assistant は [アシスタント] ウィンドウまたはコード セル内のインラインで使用できます。
コード セルで Databricks Assistant を直接使用するには、MacOS で Cmd+I キーを押すか、Windows で Ctrl+I を押します。 セルにテキスト ボックスが表示されます。 英語で質問やコメントを入力し、(セルを実行する場合のように Enterではなく) Shift+Enter を押して、アシスタントに応答を生成させることができます。
プロンプトにスラッシュ コマンドを使用する
スラッシュ コマンドは、一般的なプロンプトを作成するためのショートカットです。
| テキストの入力を求める | アシスタントの機能 |
|---|---|
/ |
一般的なコマンドを表示します |
/doc |
差分ビューでコードにコメントを付け加える |
/explain |
セル内のコードの説明を提供します |
/fix |
差分ビューでコード エラーの修正を提案します |
/findTables |
Unity カタログメタデータに基づいて関連するテーブルを検索します。 フィーチャまたはフィーチャ テーブルを検索するには、クエリで "features" または "feature tables" をメンションします。 機能およびフィーチャ テーブルの検索には、Databricks Assistantを参照してください。 |
/findQueries |
Unity カタログメタデータに基づいて関連するクエリを検索します。 |
/optimize |
SQL と Python のコードを改善します。 |
/prettify |
読みやすくするためにコードを書式設定します。 |
/rename |
コンテキストに応じて、ノートブックのセルやその他の要素に更新された名前を提案します。 |
/settings |
アシスタントからノートブックの設定を直接調整します。 |
/fix または /docを使用する場合は、差分ウィンドウで 「受け入れる」 を選択して提案された変更を受け入れるか、「拒否」 を選択して元のコードを保持します。 提案されたコードを受け入れると、コードは自動的に実行されません。 コードを実行する前に確認できます。 生成されたコードが必要でない場合は、コメントに詳細または情報を追加して、もう一度やり直してください。
アシスタントの応答を改善するためのヒントを参照してください。
コード スニペットの詳細な説明を取得します。
/explain プロンプトを使用し、"簡潔にする" や "コードを 1 行ずつ説明する" などの用語を含め、必要な詳細レベルを要求します。 Databricks Assistant にコードにコメントを追加するように依頼することもできます。
コード オートコンプリートの場合、ノートブック のセルよりもアシスタント ウィンドウを使用した方がパフォーマンスが良い場合があります。
Assistant は、生成されたコードが承認または却下されると自動的に終了します。
プロンプトでテーブルを参照する場合は @ を使用します。
アシスタント プロンプトでテーブルをすばやく参照するには、@ (at) 記号を使用します。
@ 記号
Table reference in an Assistant prompt using the @ symbolを使用してアシスタント プロンプトでテーブル参照をする
コードに関するヘルプを表示する
Databricks Assistant は、SQL と Python の両方のコードに役立ちます。
- 編集モード。ノートブック全体で機能し、複数のセルに対して修正と更新を行います。
- Databricks ノートブック、SQL エディター、ファイル エディターの AI ベースのオートコンプリート。
- 自然言語プロンプトを使用したデータ フィルター処理。
- 診断エラーを使用したコード デバッグ。
複数のノートブック セルにまたがる候補の編集モード
編集モードでは、1 つのプロンプトからノートブック内の複数のセルに対して AI によって生成された提案が適用されます。
編集モードを使用するには:
ノートブックを開いた状態で、アシスタント アイコンの
をクリックします。画面の右上にあります。
アシスタント ウィンドウで、プロンプト ボックスの下部にある [編集 ] をクリックします。
編集モードでは、チャット モードの場合と同様にプロンプトを入力します。
アシスタントはノートブックを分析し、変更が必要なセルに候補をインラインで表示します。
提案を生成したら、ノートブックまたはアシスタント パネルで直接確認できます。 [アシスタント] パネル内の任意のセルをクリックして、ノートブックのその部分に移動します。
ノートブックのインラインまたはアシスタント パネルから、編集を個別に承諾または拒否します。 すべての提案を一度に適用するには、[ すべて承諾 ] または [すべて拒否] をクリックします。
インライン コードの候補を取得する: Python と SQL の例
入力すると、候補が自動的に表示されます。
Tab を押して提案を受け入れます。 提案を手動でトリガーするには、Option+Shift+Space (macOS の場合) または Control+Shift+Space (Windows の場合) を押します。
AI ベースのオートコンプリートでは、コメントからコードを生成することもできます。
自然言語プロンプトを使用してデータをフィルター処理する
Databricks Assistant を使用して、自然言語プロンプトでデータ出力をフィルター処理します。
自然言語で出力をフィルター処理するには、出力テーブルの [フィルター] アイコンをクリックし、プロンプトを入力します。 たとえば、次のアニメーションの例のように、"Show me only males over 70" (70 歳以上の男性のみを表示する) というメッセージを表示できます。
迅速な修正
コードからエラーが返されると、クイック修正では、1 行の変更で修正できる基本的なエラーの修正が自動的に推奨されます。
次のスクリーンショットに示すように、[ 同意して実行 ] をクリックして推奨される修正を行い、コードの実行を続行します。
デバッグ コード: Python と SQL の例
Databricks Assistant を使用してコードを修正するには、次のいずれかの操作を行います。
- アシスタント ウィンドウで質問します。
- エラーが発生したときにセルの結果に表示される エラーの診断 ボタンをクリックします。
- [ デバッグ ] をクリックして、コードを 1 行ずつ対話形式でステップ実行し、ブレークポイントを設定し、変数を検査し、プログラムの実行を分析します。
次のタブは、Python および SQL コードでの エラー の診断の例を示しています。
Python
Python の 
SQL
[エラーの 診断] をクリックすると、アシスタントによって "/fix" プロンプトが自動的に実行されます。
sql の 
[エラー診断] をクリックすると、Assistant が自動的に /fix を実行します。
環境エラーのデバッグ
アシスタントは、ライブラリのインストール エラーなど、環境エラーの修正プログラムを診断して提案するのに役立ちます。
環境のサイド パネルでインストールエラーが発生すると、アシスタント アイコン が右下に表示されます。 [
をクリックしてアシスタント ウィンドウを開き、アシスタントが
/repairEnvironment 実行され、問題の診断と修正に役立ちます。
pip ログを開き、[ エラーの診断 ] をクリックして、[アシスタント] ウィンドウで /repairEnvironment コマンドを実行することもできます。
Python、PySpark、SQL コードを最適化する
スラッシュ プロンプト /optimize使用して、Python、PySpark、および SQL コードを評価して最適化します。
- ノートブックセルまたはSQLエディターで、
アシスタントアイコンをクリックします。 - プロンプト ボックスに「
/optimize」と入力し、[ 生成 ] ボタンをクリックします。 - アシスタントから最適化候補を使用するには、[ 承諾] をクリックします。
コードにおいて/optimizeがどのように役立つかを以下に示します。
- 実行前の警告: 黄色の下線では、パーティション列でフィルター処理していない場合など、実行前にクエリを最適化する機会が強調表示されます。 下線付きテキストにカーソルを合わせると、最適化候補が表示されます。
- 実行後の分析: コードを実行したら、[ 最適化 ] ボタンをクリックします。
-
テーブル レベルの提案: たとえば、ユーザーがテーブルを作成すると、
CREATE TABLE CLUSTER BY AUTOを推奨するヒントが表示されます。
追加情報
次の記事には、Databricks Assistant の使用に関する追加情報が含まれています。