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

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

瞭解 ChatGPT 工作區管理員,以及 ChatGPT Plus 或 ChatGPT Pro 使用者,如何透過組織的 OAuth 用戶端連接 Databricks。

更新日期:17 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 原樣複製的回呼 URL。

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

  • ChatGPT 設定流程要求的所有 Databricks 供應商詳細資料,例如工作區主機、帳戶主機、帳戶 ID 或倉儲。

開始之前

你需要具備或準備以下項目:

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

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

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

  • 若使用自訂 OAuth 用戶端,請在 ChatGPT 中開啟 Databricks Genie 連線畫面,以便原樣複製回呼 URL。

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

  • 若使用自訂 OAuth 用戶端,請準備安全的環境來處理 Databricks 用戶端密鑰。

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

若使用自訂 OAuth 用戶端,請原樣複製 ChatGPT 顯示的回呼 URL。

需要準備的值

  • 若使用自訂 OAuth 用戶端,需準備回呼 URL:從 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:// 或 URL 路徑。

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

接著依照下方「連線與測試」及「管理存取權限」的說明操作,包括獲准成員的測試與工作區存取權限檢查。

自訂 OAuth 用戶端

請先完成上述準備工作。如果無法使用內建 OAuth,或組織要求使用自己的 OAuth 用戶端,請採用此方式。設定後,請完成下方「連線與測試」及「管理存取權限」中的步驟。

在 ChatGPT 中開始設定自訂 OAuth

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

  2. 若要進行個人設定,請前往設定 > 外掛程式;若要為工作區設定,請以工作區管理員或擁有者身分前往工作區設定 > 外掛程式。

  3. 在目錄中選取 Databricks Genie。

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

  5. 在連線至 Databricks Genie 對話方塊中,找到 OAuth 用戶端區段。

  6. 從 ChatGPT 複製回呼 URL。請保持此對話方塊開啟。

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

回呼 URL 範例:

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

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

在 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. 在重新導向 URL 欄位中,原樣貼上從 ChatGPT 複製的回呼 URL。

  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:// 或 URL 路徑。填寫設定流程中顯示的其他 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 的重新導向 URL 值與 ChatGPT 顯示的回呼 URL 完全一致,包括路徑和回呼 ID。請勿移除回呼 ID、在結尾加上斜線,或改用其他 ChatGPT 重新導向 URL。

  • 缺少密鑰:如果使用自訂 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。

參考資料

這篇文章有幫助嗎?