Databricks Assistant の応答をカスタマイズして改善する
このページでは、Databricks Assistant がより良い応答を提供するのに役立つヒントとベスト プラクティスを提供します。
手順を追加してアシスタントの応答をカスタマイズする
カスタム命令を追加することで、Databricks Assistant の応答方法をカスタマイズできます。アシスタントは、新しい応答を生成するときにこれらの指示を考慮します。
たとえば、手順には次のものを含めることができます。
- コードを記述するときに使用するライブラリなど、設定に関する情報。
- 名前や役割など、あなたが誰であるかに関するコンテキスト。
- 従うべきコーディング規則。
- 従うべきガイドライン。
- アシスタントが何気ない口調を使用するなど、どのように応答するかについての指示。
クイック修正とオートコンプリートを除き、Databricks Assistant は、インライン アシスタント、一般チャット、修正の提案、編集モードなど、生成するすべての応答に指示を適用します。
Databricks Assistant では、ユーザー命令とワークスペース命令の 2 種類の命令がサポートされています。特に指示がない限り、アシスタントは通常、ユーザーの指示よりもワークスペースの指示を優先します。
ユーザー手順を追加する
ユーザー指示を使用すると、システムレベルの指示をアシスタントに提供できます。これらは、コンテキスト、設定、または好みのオーサリング方法を共有するための永続的な方法です。これらの手順はユーザーに固有のものであり、アシスタントとのやり取りにのみ適用されます。
ユーザー手順を追加するには:
-
ワークスペースの右上隅にある [
] をクリックして、[アシスタント] ウィンドウを開きます。
-
[アシスタント] ウィンドウで、[
] をクリックしてアシスタント設定を開きます。
-
[ ユーザーの指示] で、[ 指示ファイルの追加 ] をクリックします。これにより、デフォルトのユーザーワークスペースディレクトリ (/Users/<your-username-or-email>) に
.assistant_instructions.md
ファイルが作成され、新しいファイルタブで開きます。手順ファイルをすでに作成している場合は、[ 手順ファイルを開く ] をクリックしてファイルを開きます。
-
.assistant_instructions.md
ファイルを編集して、カスタム手順を追加します。Databricks では、説明をプレーンな英語のテキストで追加し、各指示を新しい箇条書きまたは段落として区切ることをお勧めします。詳しくは 、アシスタントの手順に関するおすすめの方法をご覧ください。
アシスタントは、次回操作したときに自動的に指示を取得します。
アシスタントを使用して手順を追加することもできます。アシスタントパネルまたはインラインアシスタント入力ボックスから、 /addInstructions
コマンドを使用します。
ワークスペースの指示を追加して表示する
ワークスペース管理者のみが、ワークスペースの手順を追加または編集できます。
ワークスペースの指示はワークスペースの管理者が構成するもので、アシスタントは詳細なコンテキストを与えられることで、ワークスペースでガイドラインに従ってより効率的に作業しやすくなります。
ワークスペースにワークスペースの指示がまだない場合、ワークスペース管理者は、次の手順に従って手順ファイルを作成できます。
- ワークスペースの
Workspace/
ディレクトリに、.assistant_workspace_instructions.md
という名前の新しいファイルを作成します。 - ファイルを編集して、ワークスペース全体に適用するアシスタントの指示を追加します。Databricks では、説明をプレーンな英語のテキストで追加し、各指示を新しい箇条書きまたは段落として区切ることをお勧めします。詳しくは 、アシスタントの手順に関するおすすめの方法をご覧ください。
アシスタントは、ユーザーが次に操作したときに、新しいワークスペースの指示を自動的に取得します。
ワークスペースの指示を表示または編集するには:
-
ワークスペースの右上隅にある [
] をクリックして、[アシスタント] ウィンドウを開きます。
-
[アシスタント] ウィンドウで、[
] をクリックしてアシスタント設定を開きます。
-
[ワークスペースの指示] で、[ ファイルの表示 ] をクリックします。これにより、
.assistant_workspace_instructions.md
ファイルが新しいタブで開きます。 -
ワークスペース管理者は、ファイルを編集し、ワークスペース全体のアシスタントの動作に適用される手順を追加できます。詳しくは、 アシスタントの手順に関するベスト プラクティス をご覧ください。
管理者でなくても、ファイルを表示して、ユーザーが提供したユーザーの指示に加えて、アシスタントがどのような指示に従っているかを把握できます。
アシスタントの手順に関するおすすめの方法
指示を提供する際には、アシスタントの潜在的な制限を考慮することが重要です。ここでは、エクスペリエンスを最適化し、この機能を最大限に活用するための手順を作成するための一般的なガイドラインとヒントをいくつか紹介します。
- 明確で具体的な指示を書きます。 指示を書くときは、明確かつ明確にしてください。
- 指示は 4000 文字以内にしてください。 命令ファイルは 4000 文字に制限されています。この制限を超える命令は、アシスタントによって使用されません。簡潔にし、重要な指示に優先順位を付けます。
- 構造に見出しと区切り文字を使用します。 手順は Markdown ファイルにあります。手順で Markdown 書式を使用して構造を提供します。箇条書きを区切り文字として使用して、個別の命令を区切ります。見出しを使用して、一連の指示をグループ化します。たとえば、アシスタントが Python コードを操作する際に従う必要がある Python 固有のガイドラインの箇条書きリストを含む "Python コード規則" の見出しがあるとします。
- スコープ: アシスタントは、インラインアシスタント、一般チャット、修正の提案、編集モードなどを使用して操作したときに生成されるすべての応答に指示を適用します。ただし、アシスタントはクイックフィックスとオートコンプリートの指示を考慮しません。意図しない動作を避けるために、指示をさまざまなアシスタント機能に広く関連させてください。
- コンテキストと参照を提供します。 アシスタントは、ノートブック コードやテーブル メタデータなどの周囲のコンテキストを使用しますが、指示に基づいて追加情報をプロアクティブにフェッチすることはありません。役立つ応答を確実に行うには、特定のテーブルまたは関数をいつ使用するかなど、重要な詳細を指示に直接含めます。
アシスタントの応答を改善するためのヒント
指示を入力すると、アシスタントはユーザーの好みに合わせてカスタマイズされた応答を生成できます。これに加えて、アシスタントと対話するときに、より良い応答を返すために実行できる一般的な操作が他にもあります。
Databricks Assistantは会話の履歴を考慮するため、会話を進めながら質問を改善していくことができます。
具体的に
Databricks Assistant が提供する構造と詳細は、同じプロンプトでも随時異なります。アシスタントに必要な情報を目的の形式や詳細レベルなどで返せるように、できる限り多くのガイダンスを提供するようにしてください。次のことを行うことを検討してください。
- 探している詳細レベルを指定します。たとえば、「このコードを数文で説明してください」や「このコードを行ごとに説明してください」などです。
- アシスタントで使用するライブラリを指定します。たとえば、「Matplotlibを使用してビジュアライゼーションを作成する」や「Seabornを使用してビジュアライゼーションを作成する」などです。
- 必要な応答の構造を指定します。たとえば、「番号付きのステップで指示を提供する」や「手順を箇条書きで簡単な説明で指示を提供する」などです。
- プロンプトは具体的にしてください。Databricks Assistant は、テーブルと列のスキーマとメタデータを認識しているため、自然言語を使用して質問できます。たとえば、「シーズン中に 500 回以上のトライをした人について、現役および引退した NFL クォーターバックのパス完了率をリストします。」Databricks Assistant は、
s.player_id
やs.attempts
などの列のデータを使用して回答します。
Databricks Assistant はコンテキストを使用して、より適切な回答を提供します
Databricks Assistant は、テーブルと列のスキーマとメタデータにアクセスできます。これにより、自然言語を使用して、より正確なクエリを生成できます。たとえば、テーブルに State という列がある場合、ミシガン州に住むユーザーの一覧を生成するように Databricks Assistant に依頼できます。
Databricks Assistant は次のコンテキストを使用します。
- 現在のノートブック セルまたは Databricks SQL エディター タブのコードまたはクエリ。
- テーブルと列の名前と説明。
- 以前のプロンプトの質問。
- お気に入りのテーブルとアクティブなテーブル。
- エラーの診断 機能の場合、エラー出力からのスタックトレース。
Databricks Assistant は会話履歴を使用して、より適切で正確な回答を提供するため、プロンプト全体を書き換えることなく、以前の応答の出力を変更するように Databricks Assistant に依頼できます。アシスタントのチャット履歴を使用して、アシスタント ウィンドウで DataFrames を繰り返しクリーニング、探索、フィルター処理、スライスします。
アシスタントがデータセットを操作できるようにする
アシスタントは、作業中のテーブルに関するコンテキストにアクセスできます。データセットを操作するときに応答を改善するためにできることをいくつか示します。
-
テーブルを検索するときは、「テーブルを検索」プロンプトまたはコマンド
/findTables
を使用して、より良い応答を得ることができます。たとえば、「NFL の試合に関連するテーブルを検索する」などです。 -
プロンプトで特定のテーブルを参照するには、
@<table-name>
を使用します。アシスタントは、そのテーブルを使用するように応答を調整します。 -
データフレーム から列を選択する場合、開始クエリを指定することで、より正確な結果を得ることができます。 たとえば、
SELECT * FROM <table_name>
のようなステートメントを指定します。 これにより、Databricks Assistant は列名を取得でき、推測する必要がなくなります。 -
列データ型変換を使用して操作を実行する必要がある場合は、詳細を指定する必要がある場合があります。たとえば、「このコードを Pandas から PySparkに変換します。 Pandas DataFrame を PySpark DataFrame に変換するために必要なコードを含め、列チャーンのデータ型をブール値から整数に変更します。」
-
Unity Catalog のテーブルと列を文書化します。「 AI が生成したコメントを Unity Catalog オブジェクトに追加する」を参照してください。これにより、アシスタントはデータに関するより多くのコンテキストを得ることができます。カタログ エクスプローラーでテーブルまたは列のコメントを使用して、サンプル データの行を追加します。たとえば、高さ列の形式が
feet
-inches
であるとします。アシスタントがデータを解釈しやすくするには、「高さ列は文字列形式で、ハイフンで区切られています。例: '6-2'。詳細については、 表と列のコメントについては、「 データおよび AI アセットにコメントを追加する」を参照してください。
Databricks Assistant チャット ウィンドウでコードを編集して実行する
[アシスタント] ウィンドウでコードを実行して検証するか、スクラッチパッドとして使用します。コードを実行するには、[アシスタント] ウィンドウのコード ボックスの左上隅にある をクリックします。
以下のタブは、Python と SQL コードの例を示しています。
- Python
- SQL
[アシスタント] ウィンドウでコードを実行すると、出力が表示され、変数がノートブックで使用可能になります。
コードをノートブックに移動する前に、Databricks Assistant が生成したコードをアシスタントチャットボックスで直接編集することもできます。
Shift + Enter
を使用して、チャット テキスト ボックスに新しい行を追加する
Shift + Enter
を使用して、アシスタント チャット テキスト ボックスに新しい行を追加します。これにより、Databricks Assistant へのメッセージを簡単に書式設定して整理できます。
ノートブックでのセル アクションの使用
セル アクションには、コードの文書化 (コメント)、修正、説明などの一般的なタスクへのショートカットが含まれます。
追加のリソース
その他のヒントについては、以下を参照してください。