使用 Databricks Assistant
Databricks Assistant 是一種內容感知 AI 助理,可在 Databricks 筆記本、SQL 編輯器和檔案編輯器中使用。 Databricks Assistant 可讓您使用交談式介面來查詢數據,讓您在 Databricks 內更具生產力。 您可以使用英文描述您的工作,並讓小幫手產生 Python 程式代碼或 SQL 查詢、說明複雜的程式碼,以及自動修正錯誤。 助理會使用 Unity 目錄元數據來了解整個公司的數據表、數據行、描述和熱門數據資產,以提供個人化的回應。
Databricks Assistant 可以執行下列工作:
- 產生程序代碼。
- 偵錯程式代碼,包括識別及建議錯誤修正。
- 轉換和優化程序代碼。
- 說明程序代碼。
- 協助您在 Azure Databricks 檔中尋找相關信息。
Databricks Assistant 預設為啟用。 系統管理員可以針對帳戶中的所有工作區停用或啟用 Databricks Assistant。 如果系統管理員已允許工作區設定覆寫,工作區管理員可以針對特定工作區啟用或停用 Databricks Assistant。 如需詳細資訊,請參閱 啟用或停用 Databricks Assistant。
針對您的帳戶啟用 Databricks Assistant 會擷取為稽核記錄中的帳戶事件,請參閱 帳戶層級帳戶事件。
其他資訊
下列文章包含使用 Databricks Assistant 的其他資訊:
如何使用 Databricks Assistant
Databricks Assistant 適用於筆記本、SQL 編輯器、檔案編輯器和儀錶板。 本檔著重於筆記本。 其他產品的使用量也類似。 如需使用 Databricks Assistant 建立儀錶板視覺效果的相關信息,請參閱 使用 Databricks Assistant 建立視覺效果。
在筆記本中,Databricks Assistant 可在 [小幫手] 窗格或程序代碼單元格內嵌使用。
在筆記本數據格中使用 Databricks Assistant
若要直接在程式代碼數據格中使用 Databricks Assistant,請按 MacOS 或 Ctrl + i
Windows 上的 。Cmd + i
文字框會出現在儲存格內。 您可以使用英文輸入問題或批注,然後按 Enter 鍵(而非 Shift+Enter,就像執行單元格一樣),讓助理產生回應。
您也可以輸入 /
以顯示常見命令的清單,例如 /explain
在儲存格中說明程式代碼、 /fix
提出修正程式代碼時發生錯誤,以及 /doc
建議程式代碼的檔批注。
當您使用 /fix
或 /doc
時,助理會在差異視窗中顯示建議的變更。 選取 [接受 ] 接受建議的變更或 [拒絕 ] 以保留原始程序代碼。 如果您接受建議的程式代碼,程式代碼不會自動執行。 您可以在執行程式碼之前先檢閱程式代碼。 如果產生的程式代碼不是您想要的程式碼,請再試一次,將更多詳細數據或資訊新增至批注。 請參閱使用 Databricks Assistant 的 提示。
針對程式代碼自動完成,效能可能比在筆記本數據格中使用 [小幫手] 窗格更好。
若要結束筆記本資料格中的小幫手,請按下 儲存格右上角的 。 如果您 接受 或 拒絕 產生的程式代碼,小幫手會自動關閉。
使用 [小幫手] 窗格
若要開啟 [小幫手] 窗格,請按下 左側提要字段。
在 [小幫手] 窗格底部的文本框中輸入問題,然後按 Enter 鍵或按下 文字框右側。 小幫手會顯示其答案。 下列螢幕快照顯示您在小幫手窗格中產生程式代碼之後可以採取的動作。
您可以再次執行相同的查詢,以產生另一個答案。 若要這樣做,請將游標暫留在答案上方,然後按下 。
若要關閉窗格,請再次按下圖示,或單擊 單元格右上角。 您可以按下 ,將窗格展開為全角;按下 即可將窗格傳回預設寬度。
即使您關閉窗格或筆記本,小幫手窗格仍會追蹤您的交談。 若要清除先前的交談,請按下 [小幫手] 窗格右上方的 。
以 AI 為基礎的自動完成
重要
這項功能處於公開預覽狀態。
AI 型自動完成會在您在 Databricks 筆記本、SQL 編輯器和檔案編輯器中輸入時,提供內嵌程式代碼建議。 內嵌程式代碼建議適用於 Python 和 SQL。
啟用和停用內嵌程式代碼建議
必須針對每個使用者啟用此功能,如下所示:
- 按一下 [設定] 。
- 在 [實驗性功能] 下,切換 [Databricks Assistant 自動完成]。
注意
- 若要停用工作區的這項功能,請連絡 Databricks。
- 內嵌程式代碼建議不適用於具有 FedRAMP 合規性的 Azure Government 區域或工作區。
使用內嵌程式代碼建議
當您輸入時,建議會自動出現。 按 Tab 以接受建議。 若要手動觸發建議,請按 Option + Shift + Space (在 macOS 上) 或 [控件 + Shift + 空間] (在 Windows 上)。
AI 型自動完成也可以從批注產生程式代碼:
偵錯程式碼
若要使用 Databricks Assistant 來修正程式代碼,請在 [小幫手] 窗格中提出問題,或按兩下 在發生錯誤時出現在單元格結果中的 [診斷錯誤 ] 按鈕。 下列索引標籤顯示 Python 和 SQL 程式代碼的範例。
Python
Sql
說明程序代碼
Databricks Assistant 可以提供代碼段的詳細說明。 在提供的提示中,您可以包含「簡潔」或「逐行說明程式代碼」等字詞,以要求其提供之說明的詳細數據層級。 您也可以要求 Databricks Assistant 將批註新增至程序代碼。
在 Azure Databricks 檔中尋找相關信息
Databricks Assistant 可協助直接從筆記本編輯器根據 Databricks 檔回答問題。
使用 Databricks Assistant 的 提示
本節包含使用 Databricks Assistant 時的一些一般秘訣和最佳做法。
Databricks Assistant 會使用內容來提供更好的答案
Databricks Assistant 可以存取數據表和數據行架構和元數據。 這可讓您使用自然語言併產生更精確的查詢。 例如,如果數據表有 [State] 資料行,您可以要求 Databricks Assistant 產生位於密歇根州的使用者清單。
Databricks Assistant 使用下列內容:
- 目前筆記本數據格或 Databricks SQL 編輯器索引標籤中的程式碼或查詢。
- 數據表和數據行名稱和描述。
- 先前的提示問題。
- 我的最愛和作用中數據表。
- 針對診斷錯誤功能,來自錯誤輸出的堆疊追蹤。
從 DataFrame 選取資料行時,您可以藉由提供啟動查詢來取得更精確的結果。 例如,提供類似 的 SELECT * FROM <table_name>
語句。 這可讓 Databricks Assistant 取得數據行名稱,而不需要猜測。
由於 Databricks Assistant 會使用交談歷程記錄來提供更好的更精確的答案,因此您可以要求 Databricks Assistant 改變先前回應的輸出,而不需要重寫整個提示。 您可以使用小幫手的聊天記錄,反覆地清除、探索、篩選和配量 [小幫手] 窗格中的數據框架。
要具體
Databricks Assistant 提供的結構和詳細數據不時有所不同,即使出現相同的提示也一樣。 請嘗試盡可能提供小幫手的指引,以協助其傳回您想要的格式、詳細程度等資訊。 例如:
- 「在幾個句子中說明此程序代碼」或「逐行說明此程序代碼」。
- 「使用 MatPlotLib 建立視覺效果」或「使用 Seaborn 建立視覺效果」。
提供數據列層級數據值的範例
由於 Databricks Assistant 不會使用數據列層級數據,因此您可能需要提供更詳細的資訊來提示以取得最精確的答案。 使用目錄總管中的數據表或數據行批注來新增一行範例數據。 例如,假設高度資料行的格式 feet
-inches
為 。 若要協助助理解譯數據,請新增批註,例如「高度數據行是字串格式,並以連字元分隔。 範例:『6-2』。 如需數據表和數據行批注的相關信息,請參閱 使用 Markdown 批注在目錄總管中記載數據。
如果需要資料行數據類型轉換來執行作業,您可能也需要提供詳細數據。 例如:「將此程式代碼從 pandas 轉換為 PySpark,包括將 pandas DataFrame 轉換成 PySpark DataFrame 所需的程式代碼,以及將數據行變換的數據類型從布爾值變更為整數」 。
使用 Shift+Enter 在聊天文字框中新增一行
您可以使用 Shift+Enter 在 [小幫手聊天] 文本框中新增一行。 這可讓您輕鬆地將訊息格式化及組織到 Databricks Assistant。
在 Databricks Assistant 聊天窗格中編輯和執行程式碼
您可以在 [小幫手] 窗格中執行程序代碼,以驗證程序代碼,或使用它作為臨時板。 若要執行程式碼,請按兩下 [小幫手] 窗格中程式代碼方塊左上角的 。 下列索引標籤顯示 Python 和 SQL 程式代碼的範例。
Python
Sql
當您在 [小幫手] 窗格中執行程序代碼時,會顯示輸出,且變數可在筆記本中使用。
您也可以編輯 Databricks Assistant 直接在 [小幫手] 聊天方塊中產生的程式代碼,再將程式代碼移至筆記本。