OpenAI
此頁面由機器翻譯。查看原文英文文章。

在 ChatGPT 中設定 Databricks 應用程式範本

了解 ChatGPT 工作區管理員及 ChatGPT Plus 或 Pro 用戶如何使用機構的 OAuth 用戶端連接 Databricks。

更新日期:22 hours ago

如果你是 ChatGPT 工作區管理員,或 ChatGPT Plus 或 Pro 用戶,並正使用內置 OAuth 或機構的 OAuth 用戶端設定 Databricks Genie 連接器,請參閱本指南。

  • 內置 OAuth:如果 ChatGPT 提供此選項,且你的 Databricks 工作區已啟用此功能,請使用預先設定的連線。你無需建立 OAuth 應用程式,也無需輸入用戶端 ID 或用戶端密鑰。請按照下方「內置 OAuth」一節的步驟操作。

  • 自訂 OAuth 用戶端:如果無法使用內置 OAuth,或你的機構要求使用自己的 OAuth 用戶端,請採用此方式。請按照下方「自訂 OAuth 用戶端」一節的步驟操作。

你將設定的內容

你將為自己的 ChatGPT 帳戶或工作區建立 Databricks 應用程式連線。兩種方式都需要提供 ChatGPT 要求的 Databricks 供應商資料,並具備存取所需資源的權限。如果使用自訂 OAuth 用戶端,亦請準備:

  • 在 Databricks 帳戶控制台中建立的 Databricks OAuth 應用程式連線。

  • Databricks OAuth 用戶端 ID 和用戶端密鑰。

  • 從 ChatGPT 完整複製的回呼網址。

  • 與你想啟用的連接器功能相符的 Databricks 權限範圍。

  • ChatGPT 設定流程要求的任何 Databricks 供應商資料,例如工作區主機、帳戶主機、帳戶 ID 或倉庫。

開始之前

你需要:

  • ChatGPT 工作區管理員或擁有者權限,或 ChatGPT Plus 或 Pro 帳戶。

  • 如使用自訂 OAuth 用戶端,需具備 Databricks 帳戶管理員權限。部分工作可能只需工作區管理員權限,但自訂應用程式連線須在 Databricks 帳戶控制台中設定。如使用內置 OAuth,Databricks 管理員必須確認 ChatGPT 應用程式可供使用,且已為你的工作區啟用。

  • 如使用自訂 OAuth 用戶端,請在另一個分頁開啟 Databricks 帳戶控制台。

  • 如使用自訂 OAuth 用戶端,請在 ChatGPT 中開啟 Databricks Genie 連線畫面,以便完整複製回呼網址。

  • 決定應用程式需要一般 Databricks API 存取權,還是僅需 Databricks SQL 存取權。

  • 如使用自訂 OAuth 用戶端,需準備安全的位置來處理 Databricks 用戶端密鑰。

  • 如果你的 Databricks 帳戶或工作區透過 IP 存取清單、基於情境的連入控制、防火牆或其他網絡政策限制存取,請尋求 Databricks 管理員協助,允許目前的 ChatGPT 連接器出口 IP 範圍。

如使用自訂 OAuth 用戶端,請完整複製 ChatGPT 顯示的回呼網址。

需要準備的值

  • 如使用自訂 OAuth 用戶端,需準備回呼網址:請從 ChatGPT 連接器設定流程中複製。

  • 如使用自訂 OAuth 用戶端,需準備 Databricks OAuth 用戶端 ID。

  • 如使用自訂 OAuth 用戶端,需準備 Databricks OAuth 用戶端密鑰。

  • 如使用自訂 OAuth 用戶端,需準備符合應用程式功能的 Databricks 存取權限範圍,例如所有 API 或 SQL。

  • ChatGPT 設定流程要求填寫的 Databricks 工作區或帳戶欄位。

內置 OAuth

請先完成上述準備工作。只有在 ChatGPT 提供內置 OAuth,且你的 Databricks 工作區已啟用此功能時,才可使用此方式。

  1. 請 Databricks 管理員確認 ChatGPT 應用程式已在帳戶控制台的應用程式整合設定中可供使用,並已為你的工作區啟用。如果你的 Databricks 帳戶控制台未列出 ChatGPT 應用程式,請聯絡你的 Databricks 客戶代表,查詢你的帳戶是否可使用此功能。

  2. 在 ChatGPT 中,切換至要使用此應用程式的帳戶或工作區。如果是個人設定,請前往設定 > 外掛程式;如果是工作區設定,請以工作區管理員或擁有者身分前往工作區設定 > 外掛程式。

  3. 選擇 Databricks Genie,然後選擇新增應用程式連線。

  4. 輸入工作區主機名稱(必填),不要包含 https:// 或網址路徑。

  5. 選擇繼續,然後登入 Databricks 並檢查授權同意請求。

繼續按照下方「連接及測試」和「管理存取權」兩節操作,包括進行獲准成員測試及工作區存取權檢查。

自訂 OAuth 用戶端

請先完成上述準備工作。如果無法使用內置 OAuth,或你的機構要求使用自己的 OAuth 用戶端,請採用此方式。設定完成後,請按照下方「連接及測試」和「管理存取權」兩節完成操作。

在 ChatGPT 中開始自訂 OAuth 設定

  1. 在 ChatGPT 中,切換至要使用此應用程式的帳戶或工作區。

  2. 如果是個人設定,請前往設定 > 外掛程式;如果是工作區設定,請以工作區管理員或擁有者身分前往工作區設定 > 外掛程式。

  3. 在目錄中選擇 Databricks Genie。

  4. 選擇新增應用程式連線。

  5. 在連接 Databricks Genie 對話框中,找到 OAuth 用戶端部分。

  6. 從 ChatGPT 複製回呼網址。請保持此對話框開啟。

ChatGPT Connect Databricks Genie dialog showing the callback URL field and OAuth client settings.

回呼網址範例:

https://chatgpt.com/connector/oauth/<callback_id>

請勿移除回呼 ID、在結尾加上斜線,或改用通用的 ChatGPT 網址。在 Databricks 註冊的網址,必須與 ChatGPT 顯示的回呼網址完全一致。

在 Databricks 中建立自訂 OAuth 應用程式連線

  1. 開啟你的 Databricks 帳戶所屬的 Databricks 帳戶控制台。

  2. 在左側欄開啟設定。

  3. 開啟應用程式連線分頁。

  4. 選擇新增連線。

    Databricks Account Console Settings page showing the App connections tab and Add connection button.
  5. 輸入應用程式名稱,例如「ChatGPT Databricks 連接器」。

  6. 在重新導向網址中,完整貼上從 ChatGPT 複製的回呼網址。

  7. 在存取權限範圍下,選擇應用程式所需的權限範圍。

  8. 如果是需要使用 SQL 以外 Databricks API 的一般 Databricks 應用程式,請選擇所有 API。

  9. 只有在應用程式僅限使用 Databricks SQL API 時,才選擇 SQL。

  10. 確保稍後在 ChatGPT 中列出的每個權限範圍,都已在此 Databricks OAuth 應用程式中啟用。對於在使用者介面中建立的應用程式,Databricks 會自動允許 openid、email、profile 和 offline_access。

  11. 除非你的機構有特定政策,否則請保留 Databricks 的預設權杖有效期(TTL):存取權杖為 60 分鐘,更新權杖為 10080 分鐘。

  12. 開啟產生用戶端密鑰。ChatGPT 在此流程中需要使用機密型 OAuth 用戶端。

  13. 建立連線。

Databricks OAuth connection settings showing redacted client ID and redirect URL, access scopes, and the client-secret option.

從 Databricks 複製憑證

  1. 在已建立連線對話框中,複製用戶端 ID。

  2. 立即複製用戶端密鑰,並妥善安全儲存。

  3. 如果在複製密鑰前已關閉對話框,請建立或輪替 OAuth 應用程式憑證,並使用新的密鑰。

Databricks 只會顯示密鑰一次。請將密鑰視為憑證妥善保管,不要在螢幕截圖、支援工單、留言或聊天中包含密鑰。

在 ChatGPT 中完成自訂 OAuth 設定

  1. 返回連接 Databricks Genie 對話框。

  2. 在 OAuth 用戶端 ID 中輸入 Databricks 用戶端 ID。

  3. 在 OAuth 用戶端密鑰中輸入 Databricks 用戶端密鑰。

  4. 在權限範圍(選填)中,輸入應用程式的 Databricks 端點和功能所需的權限範圍。確保這些權限範圍與 Databricks OAuth 應用程式中啟用的範圍相符。

  5. 每行輸入一個權限範圍,或以逗號分隔各個範圍。ChatGPT 中列出的每個權限範圍,都必須在 Databricks OAuth 應用程式中啟用。

  6. 輸入工作區主機名稱(必填),不要包含 https:// 或網址路徑。填寫設定流程中顯示的其他 Databricks 供應商必填欄位。

  7. 選擇繼續。

ChatGPT 只會要求你在權限範圍(選填)中輸入的權限範圍。系統不會自動加入範本中更廣泛的權限範圍。

ChatGPT Connect Databricks Genie dialog showing a mock workspace hostname, mock client ID, masked secret, and scopes.

連接及測試

無論採用哪種 OAuth 方式,都請完成以下連線測試及存取權檢查。

  1. 檢查連接器的詳細資料、操作及驗證設定。

  2. 如果你是工作區管理員,請為工作區啟用連接器,並按照工作區政策設定哪些人可以使用。

  3. 以獲准使用的測試用戶身分,從 ChatGPT 啟動連線流程,然後登入 Databricks。

  4. 確認瀏覽器開啟的是預期的 Databricks 帳戶或工作區。

  5. 檢查所要求的權限範圍,然後選擇授權。

    Databricks permission request for a mock ChatGPT Databricks Connector showing requested access and the Authorize button.
  6. 確認瀏覽器已返回 ChatGPT,且連接器顯示為已連接。

  7. 先執行低風險的讀取操作,例如取得目前用戶的資料,或查詢已核准的 Databricks SQL 資源。

  8. 如果已啟用寫入操作,請先以明確屬於低風險的 Databricks 工作流程進行測試,再擴大使用範圍。

  9. 如果是為工作區設定,請讓一位獲准使用但並非管理員的工作區成員連接,並重複進行低風險測試。

管理存取權

Databricks 和 ChatGPT 共同控制存取權。

在 ChatGPT 中,工作區管理員負責管理應用程式是否可供使用,以及成員可以如何使用。在 Business 中,管理員可管理是否為整個工作區啟用應用程式。請前往 Databricks 應用程式的管理員控制設定(工作區設定 > 應用程式),檢查以下項目:

  • 用戶存取權:設定支援此功能的 Enterprise 和 Edu 工作區中,哪些工作區角色可以使用連接器。

  • 操作控制:設定啟用哪些 Databricks 操作。

  • 應用程式權限:設定 ChatGPT 在哪些情況下須先詢問成員,才使用連接器。

這些應用程式權限適用於 ChatGPT 對話。工作區智能代理會使用建立者為各個智能代理設定的控制項,決定哪些應用程式操作可供使用,以及何時需要向最終用戶要求批准。有關智能代理的運作方式,請參閱:Enterprise 和 Business 適用的 ChatGPT 工作區智能代理。

在 Databricks 中,管理員負責管理哪些用戶可以授權 OAuth 應用程式,以及這些用戶可以存取哪些 Databricks 資源。在 ChatGPT 中啟用應用程式後,供應商的權限設定仍然適用。

有關各方案的應用程式控制設定,請參閱應用程式的管理員控制、安全及合規。

Databricks 連接器設定疑難排解

  • 重新導向 URI 不符:如果使用自訂 OAuth 用戶端,請確認 Databricks 的重新導向網址值與 ChatGPT 顯示的回呼網址完全一致,包括路徑和回呼 ID。請勿移除回呼 ID、在結尾加上斜線,或改用另一個 ChatGPT 重新導向網址。

  • 缺少密鑰:如果使用自訂 OAuth 用戶端,請注意 Databricks 密鑰只會顯示一次。如果尚未複製密鑰,請產生新的用戶端密鑰。

  • OAuth 應用程式未能立即使用:Databricks 表示,處理 OAuth 應用程式更新可能需時最多 30 分鐘。

  • 權限範圍不足或不符:如果使用自訂 OAuth 用戶端,請比較 ChatGPT 中的權限範圍(選填)與 Databricks OAuth 應用程式中的存取權限範圍。ChatGPT 要求的每個權限範圍,都必須在該應用程式中啟用。確認權限範圍支援你使用的端點和功能,包括按需要提供一般 API 存取權或僅限 SQL 的存取權。

  • SQL 操作失敗:請確認 SQL 權限範圍、倉庫設定及 Databricks 權限。

  • ChatGPT 工作區不正確:請在用戶將要連接連接器的同一個 ChatGPT 工作區中,建立並啟用連接器。

  • Databricks 帳戶或工作區不正確:請確認工作區主機名稱(必填)的值,然後重新執行登入流程,並確認 Databricks 開啟的是預期的帳戶或工作區。

  • 用戶無法連接:請確認用戶具備 Databricks 存取權,並獲准授權 OAuth 應用程式。在 Business 中,請確認已為整個工作區啟用應用程式。在支援此功能的 Enterprise 和 Edu 工作區中,亦請確認 ChatGPT 的用戶存取權設定允許使用連接器。

  • Databricks 網絡政策封鎖連接器:如果 Databricks 只允許特定來源 IP,Databricks 管理員必須更新相關帳戶或工作區的 IP 存取清單、基於情境的連入控制、防火牆或其他由客戶控制的網絡規則。

    • 允許來自目前 ChatGPT 連接器出口 IP 範圍的連入連線。

    • 請在 Databricks 或由客戶控制的網絡層設定此允許清單。這項設定與 ChatGPT 工作區 IP 允許清單是分開的。

    • 已公佈的 IP 範圍可能會變更。如可行,請根據 JSON 資料自動更新設定。

    • 請勿透過輪替用戶端密鑰或變更 OAuth 權限範圍來繞過網絡封鎖。請先確認 Databricks 是否正在拒絕連接器的來源 IP。

參考資料

這篇文章對你有幫助嗎?