共用方式為


將 Genie 空間資源新增至 Databricks 應用程式

AI/BI Genie 空間 新增為 Databricks Apps 資源,以在應用程式中啟用自然語言查詢。 Genie 空間為數據探索提供了一個對話界面,允許用戶用簡單的英語提出商業問題,並從您精選的數據集中接收基於 SQL 的見解。

當您將 Genie 空間新增為資源時,您的應用程式可以:

  • 將使用者的自然語言查詢轉換為 SQL
  • 存取預先設定的業務內容和中繼資料
  • 使用策劃的範例查詢和資料定義
  • 根據組織的資料集產生回應

新增精靈空間資源

在新增 Genie 空間作為資源之前,請先檢視 應用程式資源的前置條件

  1. 當你建立或編輯應用程式時,請切換到 「配置 」步驟。
  2. 應用程式資源 區塊,點擊 + 新增資源
  3. 選取 Genie 空間 作為資源類型。
  4. 從工作區的可用空間清單中選擇 Genie 空間。
  5. 選取應用程式的權限層級:
    • 可以查看: 授與應用程式讀取 Genie 空間設定和中繼資料的權限。
    • 可以運行: 授予應用程序向 Genie 空間提交查詢並接收響應的權限。
    • 可以編輯: 授與應用程式修改 Genie 空間設定的權限。
    • 可以管理: 授予應用程序對 Genie 空間的完整管理權限。
  6. (選用)指定自訂資源金鑰,這是您在應用程式設定中引用 Genie 空間的方式。 預設索引鍵是 genie-space

當您新增 Genie 空間資源時:

  • Azure Databricks 會授與應用程式的 服務主體 所選 Genie 空間的指定許可權。
  • 該應用程序可以向空間提交自然語言查詢,並接收帶有 SQL 查詢和結果的結構化響應。
  • 該應用程式存取空間的精選業務上下文,包括元資料、範例查詢和資料定義。
  • 存取範圍僅限於選取的空間。 您的應用程式無法存取其他 Genie 空間,除非您將它們新增為單獨的資源。

備註

應用程式的服務主體也需要 Genie 空間查詢之基礎資料來源的適當許可權。 這通常包括USE CATALOGUSE SCHEMASELECT相關 Unity 目錄資料表和檢視的許可權。

環境變數

當您使用 Genie 空間資源部署應用程式時,Azure Databricks 會透過環境變數公開空間識別碼,您可以使用設定中的valueFrom欄位來app.yaml參考這些變數。

設定範例:

env:
  - name: GENIE_SPACE_ID
    valueFrom: genie-space # Use your custom resource key if different

在應用程式中使用空間 ID:

import os
from databricks.sdk import WorkspaceClient

# Access the Genie space using the injected environment variable
space_id = os.getenv("GENIE_SPACE_ID")

# Initialize the workspace client
w = WorkspaceClient()

# Start a conversation with a natural language query
response = w.genie.start_conversation_and_wait(
    space_id=space_id,
    content="What were our top-selling products last quarter?"
)

# Process the response (responses contain attachments with text, queries, and so on)
for attachment in response.attachments:
    print(f"Genie response: {attachment.text.content}")

# Continue the conversation with additional questions
follow_up = w.genie.create_message_and_wait(
    space_id=space_id,
    conversation_id=response.conversation_id,
    content="Can you break that down by product category?"
)

如需詳細資訊,請參閱 從資源存取環境變數

移除精靈空間資源

當您從應用程式移除 Genie 空間資源時,應用程式的服務主體會失去空間的存取權。 Genie 空間本身保持不變,並繼續可供具有適當權限的其他使用者和應用程式使用。

將 Genie 空間與其他應用程式資源結合

將 Genie 空間與其他 Databricks Apps 資源結合,以建立更複雜的資料應用程式。 常見的整合模式包括:

自然語言分析儀表板

一起使用下列資源來執行互動式分析:

  • 精靈空間: 將用戶問題轉換為 SQL 查詢
  • SQL 倉儲: 執行查詢並傳回視覺效果的結果
  • 秘密: 儲存外部視覺化工具的 API 金鑰

設定範例:

env:
  - name: GENIE_SPACE_ID
    valueFrom: genie-space
  - name: SQL_WAREHOUSE_ID
    valueFrom: sql-warehouse
  - name: EXTERNAL_API_KEY
    valueFrom: viz-secret

AI 增強的商業智能

使用下列資源與 AI 模型整合:

  • 精靈空間: 產生初始查詢和資料內容
  • 模型服務端點: 返回 AI 生成的摘要和建議
  • SQL 倉儲: 執行複雜的分析查詢

服務主體權限

與其他應用程式資源整合時,將下列權限授與應用程式的服務主體:

  • CAN RUN 在精靈空間上
  • CAN USE 在 SQL 倉儲上 (如果使用與 Genie 空間不同的倉儲)
  • CAN QUERY 在模型服務端點上
  • USE CATALOG 以及 USE SCHEMA 相關的 Unity 目錄物件
  • SELECT 在表格上,應用程式直接查詢

最佳實務

當您使用 Genie 空間資源時,請遵循以下最佳實踐:

  • 授予最低權限。 僅提供對應用程式運作所需的特定 Genie 空間的存取。
  • 確保 Genie 空間包含精心策劃的資料集和元數據,以提高自然語言查詢回應的品質。
  • 針對 Genie 空間測試應用程式的查詢,以驗證它是否可以針對預期的使用者問題產生準確的結果。
  • 監控查詢效能並調整應用程式與 Genie 空間的互動模式,以最佳化回應時間。
  • 針對 Genie 空間無法有效解釋或回應使用者查詢的情況實施錯誤處理。