OpenAI
このページは機械翻訳されています。元の英語の記事を表示

ChatGPT での Databricks アプリテンプレートの設定

ワークスペース管理者が、組織独自の Databricks OAuth アプリ接続を使用して ChatGPT で Databricks アプリテンプレートを構成する方法を学びます。

更新日: 7 days ago

組織向けに Databricks アプリテンプレートを設定する ChatGPT ワークスペース管理者は、このガイドを使用してください。テンプレートは、メンバーが使用する最終的なアプリではありません。必要な Databricks 構成を指定すると、ワークスペース固有のドラフトアプリを作成する設定フローです。

Databricks では、設定の大部分を Databricks Account Console で行います。カスタム OAuth アプリ接続を作成し、ChatGPT コールバック URL を登録し、生成されたクライアント認証情報をコピーして、その値を ChatGPT テンプレート設定フローに貼り付けます。ChatGPT がドラフトアプリを作成した後、公開して他のワークスペースアプリと同様に管理できます。

設定する内容

ChatGPT でワークスペース固有の Databricks アプリを作成します。アプリで使用するもの:

  • Databricks Account Console で作成した Databricks OAuth アプリ接続

  • Databricks OAuth クライアント ID とクライアントシークレット

  • ChatGPT からコピーした正確なコールバック URL

  • 有効にしたいコネクタ機能に一致する Databricks スコープ

  • ワークスペースホスト、アカウントホスト、アカウント ID、ウェアハウスなど、ChatGPT 設定フローで求められる Databricks プロバイダーの詳細

始める前に

必要なもの:

  • ChatGPT ワークスペース管理者またはオーナーのアクセス権

  • Databricks アカウント管理者のアクセス権一部のタスクではワークスペース管理者のアクセス権で十分な場合がありますが、カスタムアプリ接続は Databricks Account Console から構成します。

  • 別のタブで開いた Databricks Account Console

  • 正確なコールバック URL をコピーできるよう、ChatGPT で開いた Databricks アプリテンプレート設定画面

  • アプリに一般的な Databricks API アクセスが必要か、Databricks SQL アクセスのみでよいかの判断

  • Databricks クライアントシークレットを扱うための安全な場所

コールバック URL を作り出さないでください。ChatGPT に表示される正確なコールバック URL をコピーしてください。

準備する値

  • コールバック URL: ChatGPT テンプレート設定フローからコピーします。

  • Databricks OAuth クライアント ID

  • Databricks OAuth クライアントシークレット

  • ALL APIs や SQL などの Databricks アクセススコープ

  • ChatGPT 設定フローで求められる Databricks ワークスペースまたはアカウントのフィールド

ChatGPT でのアプリの公開と管理

ドラフトアプリを作成しても、メンバーが自動的に利用できるようになるわけではありません。ドラフトを確認したら:

  1. ドラフトアプリを公開します。

  2. アプリが ワークスペース設定 > アプリ > 有効 に表示されることを確認します。

  3. 使用するロールに対して ユーザーアクセス を構成します。

  4. アプリが公開する Databricks アクションについて アクション制御 を確認します。

  5. アプリの使用前に ChatGPT がメンバーへ確認するタイミングを選ぶため、アプリ権限 を確認します。

  6. 許可されたテストユーザーに ChatGPT でアプリを開いてもらい、アプリが表示されることを確認します。

これらのアプリ権限は ChatGPT の会話に適用されます。ワークスペースエージェントでは、利用可能なアプリ操作とエンドユーザーに承認を求めるタイミングを、エージェントの作成者が設定するエージェント別の制御で決定します。エージェントの動作については、ChatGPT Workspace Agents for Enterprise and Business を参照してください。

ChatGPT でテンプレート設定を開始

  1. ChatGPT で、アプリを利用可能にするワークスペースに切り替えます。

  2. ワークスペース設定 > アプリ を開きます。

  3. ディレクトリ を選択します。

  4. Databricks を検索します。

  5. Databricks アプリテンプレートを選択して、設定を開始します。

  6. Databricks や Databricks - Data Platform など、わかりやすいアプリ名と説明を入力します。

  7. OAuth クライアントセクションで、ChatGPT からコールバック URL をコピーします。このタブは開いたままにします。

コールバック URL の例: https://chatgpt.com/connector/oauth/<callback_id>

コールバック ID を削除したり、末尾にスラッシュを追加したり、汎用的な ChatGPT URL に置き換えたりしないでください。

Databricks で OAuth アプリ接続を作成

  1. Databricks アカウントの Databricks Account Console を開きます。

  2. 左サイドバーで 設定 を開きます。

  3. アプリ接続 タブを開きます。

  4. 接続を追加 を選択します。

  5. ChatGPT Databricks Connector などのアプリケーション名を入力します。

  6. リダイレクト URL に、ChatGPT からコピーした正確なコールバック URL を貼り付けます。

  7. アクセススコープ で、アプリに必要なスコープを選択します。

  8. SQL 以外の Databricks API も必要とする一般的な Databricks アプリには ALL APIs を使用します。

  9. Databricks SQL API に限定されるアプリには SQL のみを使用します。

  10. 組織に特定のポリシーがない限り、トークン TTL は Databricks のデフォルトのままにします。

  11. クライアントシークレットを生成 を有効にします。ChatGPT では、このフローに機密 OAuth クライアントが必要です。

  12. 接続を作成します。

Databricks から認証情報をコピー

  1. 「接続が作成されました」ダイアログで、Client ID をコピーします。

  2. Client secret をすぐにコピーし、安全に保管します。

  3. シークレットをコピーする前にダイアログを閉じた場合は、OAuth アプリの認証情報を作成またはローテーションし、新しいシークレットを使用します。

Databricks ではシークレットは一度だけ表示されます。認証情報として扱い、スクリーンショット、チケット、コメント、チャットに含めないでください。

ChatGPT で設定を完了

  1. ChatGPT テンプレート設定タブに戻ります。

  2. Databricks Client ID を OAuth クライアント ID に貼り付けます。

  3. Databricks Client secret を OAuth クライアントシークレットに貼り付けます。

  4. テンプレートのデフォルトを意図的に上書きする必要がない限り、Scopes は変更しないでください。

  5. ワークスペースホスト、アカウントホスト、アカウント ID、ウェアハウス、その他の Databricks 固有の値など、設定フローで必要な Databricks プロバイダーのフィールドを入力します。

  6. ドラフトアプリを作成します。

ユーザーとしてアプリをテスト

  1. 許可されたテストユーザーとして、ChatGPT から接続フローを開始します。

  2. ブラウザーで想定どおりの Databricks アカウントまたはワークスペースが開くことを確認します。

  3. 要求されたスコープを承認します。

  4. ブラウザーが ChatGPT に戻り、アプリが接続済みとして表示されることを確認します。

  5. まず、現在のユーザー情報の取得や承認済み Databricks SQL リソースへのクエリなど、低リスクの読み取りアクションを実行します。

  6. 書き込みアクションが有効な場合は、より広範に展開する前に、明らかに低リスクの Databricks ワークフローでテストします。

アクセスの管理

Databricks と ChatGPT の両方がアクセス制御に関与します。

ChatGPT では、ワークスペース管理者が、公開済みアプリを利用可能にするかどうか、どのワークスペースロールが使用できるか、どのアクションを有効にするか、アプリの使用前に ChatGPT がユーザーへ確認するタイミングを管理します。

Databricks では、管理者が OAuth アプリを承認できるユーザーと、それらのユーザーがアクセスできる Databricks リソースを管理します。ChatGPT でアプリを有効にした後も、プロバイダーの権限は引き続き適用されます。

トラブルシューティング

  • リダイレクト URI の不一致: Databricks Redirect URL が、パスとコールバック ID を含め、ChatGPT に表示されるコールバック URL と完全に一致していることを確認します。

  • シークレットがない: Databricks のシークレットは一度しか表示されません。コピーしていない場合は、新しいクライアントシークレットを生成します。

  • OAuth アプリをすぐに利用できない: Databricks によると、OAuth アプリケーションの更新処理には最大 30 分かかる場合があります。

  • スコープ不足: ChatGPT は認証できても Databricks API 呼び出しが失敗する場合、アプリに非 SQL API が必要なら Databricks アプリに ALL APIs があることを確認します。

  • SQL アクションの失敗: SQL スコープ、ウェアハウス構成、Databricks 権限を確認します。

  • ワークスペースが違う: ユーザーが接続するのと同じ ChatGPT ワークスペースでアプリを作成して公開します。

  • ユーザーが接続できない: ユーザーに Databricks アクセス権があり、OAuth アプリの承認が許可されていることを確認します。

参考資料

この記事は役に立ちましたか?