DatabricksアシスタントのFAQ

[Databricks Assistant FAQ \| Databricks on Google Cloud](https://docs.databricks.com/notebooks/notebook-assistant-faq.html) [2023/7/18時点]の翻訳です。

:::note warn
本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
:::

:::note info
**プレビュー**
本機能は[パブリックプレビュー](https://docs.databricks.com/release-notes/release-types.html)です。プレビュー期間中、この機能の使用料は無料です。正式提供(GA)前に最終的な価格が決定し、ご連絡するようにします。
:::

# Databricksアシスタントとは？

Databricksアシスタントは、あなたがノートブック、クエリー、ファイルを作成する際に、より効率的に行えるようにAIベースのペアプログラマーとして動作します。コードやクエリーの生成、最適化、コンプリート、説明、修正することで、あなたの疑問に答える助けとなります。

本書では、FAQ形式でアシスタントに関する一般的な情報を提供します。プライバシーとセキュリティの質問に関しては[プライバシーとセキュリティ](#プライバシーとセキュリティ)をご覧ください。

## Q: どのようにDatabricksアシスタントを有効化しますか？

アカウント管理者は以下のようにしてDatabricksアシスタントを有効化する必要があります:

1. アカウント管理者として、[アカウントコンソール](https://accounts.cloud.databricks.com/login)にログインします。
1. **Settings**![](https://docs.databricks.com/_images/settings-icon.png)をクリックします。
1. **Feature enablement**タブをクリックします。
1. **Enable third party services for AI assistive features**を**Enable for all**に切り替えます。

## Q: どのようにDatabricksアシスタントを活用しますか？

Databricksアシスタントにアクセスするには、ノートブック、ファイルエディタ、SQLエディタの左のサイドバーのアイコン![](https://docs.databricks.com/_images/assistant-icon.png)をクリックします。
![](https://docs.databricks.com/_images/assistant-icon-in-sidebar.png)

画面の左側にアシスタントパネルが開きます。
![](https://docs.databricks.com/_images/assistant-panel.png)

Databricksアシスタントの機能のいくつかには以下のようなものがあります:

- コンプリート: Databricksアシスタントにコードのオートコンプリートを行わせるために、ノートブックセルやクエリーエディターで[キーボードショートカット](https://docs.databricks.com/notebooks/notebook-assistant-examples.html#assistant-code-complete)を利用することができます。
- 生成: SQLクエリーを生成するために自然言語を使用します。
- 説明: コードやクエリーのブロックをハイライトし、Databricksアシスタントに明確で完結な英語で説明させます。
- 修正: シングルクリックで構文や実行時エラーを説明、修正させます。
- 変換と最適化: 処理を高速にするために、PandasコードをPySparkコードに変換します。

トライできるいくつかのサンプルタスクについては、[Databricksアシスタントのサンプルタスク](https://qiita.com/taka_yayoi/items/edf92ee3b738751b819b)をご覧ください。

## Q: Databricksではどのサービスを使用していますか？

Databricksアシスタントは、レスポンスを提供するために[Azure OpenAI](https://azure.microsoft.com/products/cognitive-services/openai-service/)や[OpenAI API](https://openai.com/policies/api-data-usage-policies)を含むサードパーティサービスを使用することがあります。これらのサービスは、それぞれのデータ管理ポリシーの対象となります。これらのサービスに送信されるデータは、30日以内に自動的にパージされ、いかなるモデルトレーニングに使用されません。詳細については、[Azure data management policy](https://learn.microsoft.com/legal/cognitive-services/openai/data-privacy)と[OpenAI API data usage policies](https://openai.com/policies/api-data-usage-policies)をご覧ください。

## Q: OpenAI APIとAzure OpenAIサービスの違いは？

Databricksアシスタントは[Azure OpenAI Service](https://azure.microsoft.com/products/cognitive-services/openai-service)を使用しており、これはサービスに送信されるすべてのデータはAzureの条項とサブスクリプションの下で管理されることを意味します。[OpenAI API](https://openai.com/policies/api-data-usage-policies)は、MicrosoftではなくOpenAIによって直接運用されています。

## Q: 返却される結果の精度を改善するティップスはありますか？

- 可能な限り具体的にしてください。データがどのようなものかを示すためにテーブルやサンプルを指定してください。
- Databricksアシスタントは、あなたのテーブル、カラムスキーマ、メタデータを理解しています。これによって、自然言語を活用して公正に正確なクエリーを生成することができます。例えば、お使いのテーブルに`userID`、`State`というカラムがある場合、DatabricksアシスタントにWashingtonに住むユーザーのリストを生成されることができます。
- Databricksアシスタントは、テーブルとカラムのメタデータのみにアクセスし、行レベルのデータにはアクセスしません。このため、実際のデータがユニークな形状をしている場合、適切なクエリーを記述しないことがあります。例えば、カラム`Price`があり、それぞれの値に国の貨幣(例えば、 `$10.99 USD`、`$ 5.99 CAD`)が追加されている場合、これは数値型ではないため返却されるクエリーで集計を行う際にトラブルを起こすことがあります。このカラムをパースするためにDatabricksアシスタントに具体的な指示を与えてみてください。例えば、「Sum the total revenue from crackers. Price is a string column that has a country denomination appended to each currency value like ‘$10.99 USD’」のようなものです。

Databricksアシスタントは、会話の履歴を考慮するので進めるごとに質問を洗練することができます。

## Q: どのようにフィードバックを提供できますか？

フィードバックを送信するベストな方法は、ノートブックやSQLエディタにある「Provide Feedback」リンクを使うことです。また、`assistant-feedback@databricks.com`やアカウントチームにメールを送ることもできます。

我々は、プロンプトの精度よりも製品改善提案やユーザー体験の問題に興味があります。アシスタントから役に立たない提案を受け取った場合にはそのフィードバックを捕捉できるように「Not useful」サムズダウンボタンをクリックしてください。

# プライバシーとセキュリティ

## Q: パネルの「コンテキスト」とはどう言う意味ですか？

Databricksアシスタントのリクエストには、現在のセルやクエリーウィンドウのコンテンツのようなコンテキストを含めることがあります。これによって、モデルはより精度の高いレスポンスを提供し、「Explain the code in this cell.」のように質問を洗練することができます。

## Q: モデルにどのようなデータが送信されますか？

DatabricksアシスタントはそれぞれのAPIエンドポイントのモデルにコードとメタデータを送信します。これによって、お使いのデータにより適した結果を返却する助けとなります。例としては以下のようなものとなります:

- 現在のノートブックセルやSQLエディタタブのコードやクエリー
- テーブルやカラム名と説明文
- 以前の質問
- お気に入りのテーブル

## Q: 結果を用いてクエリーを実行した後に質問した場合、私のクエリーの結果はモデルに送信されますか？

いいえ、セルのコードのコンテンツ、テーブルのメタデータ、ユーザーが入力したテキストのみがモデルに共有されます。「fix error」機能では、Databricksはエラー出力のスタックトレースも共有します。

## Q: Databricksアシスタントは危険なコードを実行しますか？

いいえ。Databricksアシスタントはあなたの代わりに自動でコードを実行しません。AIモデルは間違いお起こしたり、意図を誤解したり、幻覚を見たり、間違った答えをすることがあります。実行する前に、AIが生成したコードをレビューするようにしてください。

### Databricksクイックスタートガイド

[Databricksクイックスタートガイド](https://www.amazon.co.jp/dp/B09V1YXFVQ/)


### Databricks無料トライアル

[Databricks無料トライアル](https://databricks.com/jp/try-databricks)