重要
這項功能處於公開預覽狀態。
警告
AI 函式 ai_generate_text() 已被取代。 Databricks 建議將 ai_query 與外部模型搭配使用。
本文說明在開始使用 ai_generate_text() 函式之前要考慮的事項和設定項目,特別是如何擷取驗證認證並安全地儲存認證。 其中也包含功能限制和成本效能考量。
什麼是 ai_generate_text()?
ai_generate_text() 函式是一種內建 Azure Databricks SQL 函式,可讓您直接透過 SQL 存取大型語言模型 (LLM)。 此函式目前支援存取 OpenAI 和 Azure OpenAI 模型,並可讓客戶使用其作為資料管線和機器學習工作負載中的建置組塊。 如需語法和設計模式,請參閱 ai_generate_text 函式 語言手動內容。
ai_generate_text() 的可能使用案例包括翻譯、摘要、建議的動作、主題或主題識別等等。
以下是在 Azure Databricks 上使用 LLM 的一些優勢:
- 跨開放原始碼和專屬 LLM 的統一存取和管理層。
- 無伺服器、自動調整、資料整合的 LLM 基礎結構。
- 只需點選即可輕鬆根據您的商務需求和使用案例自訂 LLM。
- 對於進階使用者,適用於快速開發和自訂開放原始碼 LLM 的工具。
需求
- 加入 AI Functions 公開預覽版。 若要註冊公開預覽版,請填入並提交 AI Functions 公開預覽版註冊表單。
- Azure Databricks SQL Pro 或無伺服器。
- 了解啟用和使用此功能會引導資料離開您的 SQL 環境,並傳遞至協力廠商 LLM 模型提供者:OpenAI 和 Azure OpenAI。
- 您有權存取 Azure OpenAI 或 OpenAI。
- 已部署 GPT 3.5 Turbo 模型。
擷取驗證詳細資料
若要使用 ai_generate_text() 函式,您必須能夠存取 Azure OpenAI 或 OpenAI。
使用下列步驟擷取 Azure OpenAI 的驗證詳細資料。 您的驗證詳細資料會填入 resourceName 和 deploymentName 的 ai_generate_text() 參數中。
- 在 Azure 入口網站上瀏覽至 [認知服務],然後選取 [Azure OpenAI]。
- 選取您要使用的資源。
- 在 [資源管理] 下,選取 [金鑰和端點]。
- 複製您的金鑰和資源名稱。
- 在 [資源管理] 下,選取 [模型部署]。
- 複製您的模型部署名稱。
對於 OpenAI,您可以瀏覽至 OpenAI,然後選取 [API 金鑰] 來建立金鑰。
注意
您無法複製現有金鑰組態的金鑰。
您可以:
- 從建立組態的人員 (亦稱為主體) 擷取密鑰。
- 建立新的金鑰,並在成功建立時複製提供的金鑰。
儲存存取權杖
重要
請勿在筆記本、程式碼或 git 存放庫中以純文字形式包含您的權杖。
您可以使用 Azure Databricks 祕密來儲存 API 權杖。 使用 Databricks CLI 或 Secrets API 2.0 來創建秘密。 下列範例中的步驟會使用 Secrets CLI:
如果您還沒有一個用於保存 OpenAI 金鑰的機密範圍,請建立一個:
databricks secrets create-scope openai您需要將 READ 權限或更高的權限授予可連線至 OpenAI 的使用者或群組。 Databricks 建議建立群組
openai-users,並將允許的使用者新增至該群組。databricks secrets put-acl openai openai-users READ為您的 API 存取權杖建立祕密。 Databricks 建議使用格式
<resource-name>-key:databricks secrets put-secret openai demo-key --string-value yourkey123
限制
-
ai_generate_text()不支援互動式叢集或作業叢集。 - 預覽版中唯一支援的模型是
openai/gpt-3.5-turbo和azure_openai/gpt-35-turbo。 -
openai/gpt-3.5-turbo和azure_openai/gpt-35-turbo的權杖限制為 4096 個權杖。
成本和效能考量
- OpenAI 和 Azure OpenAI 服務需要訂用帳戶,並與 Azure Databricks 分開收費。
- OpenAI 和 Azure OpenAI Services 的令牌成本適用於輸入和輸出。
- 如需詳細資料,請參閱 OpenAI 定價頁面和 Azure OpenAI 定價頁面。
- 在特定的查詢中,會依序對執行函式的資料行進行 LLM API 調用。
- 相較於大部分的 SQL 函式,使用
ai_generate_text()查詢往往執行速度較慢。
- 相較於大部分的 SQL 函式,使用
- 叫用 AI Functions 的查詢回應時間取決於提示中指定的工作,以及提供和要求的權杖數目。
- 在此預覽版發行時,Azure OpenAI 服務僅在少數 Azure 區域可用。
其他資源
如需 ai_generate_text function 的語法和設計模式,請參閱語言手冊文件。