ai_extract
函式
適用於:Databricks SQL Databricks Runtime
重要
這項功能處於公開預覽狀態。
在預覽中:
- 基礎語言模型可以處理數種語言,不過這些函數會針對英文進行調整。
- 基礎的 Foundation Model API 有速率限制。 請參閱<Foundation Model API 限制>以更新這些限制。
- 由於速率限制,此函式是針對小於100個數據列的小型數據集進行測試所設計。 針對具有超過 100 個資料列的使用案例,Databricks 建議使用
ai_query
和預配置的吞吐量端點。 請參閱 使用 ai_query執行批次 LLM 推論。
ai_extract()
函數可讓您叫用最先進的生成式 AI 模型,以使用 SQL 從指定文字擷取標籤指定的實體。 此函數會使用 Databricks Foundation Model API 所提供之端點的聊天模型。
需求
重要
目前可能使用的基礎模型會根據 Apache 2.0授權、著作權© Apache Software Foundation 或 LLAMA 3.1社群授權著作權©中繼平臺公司進行授權 。保留所有權利。 客戶應負責確保遵循適用的模型授權。
Databricks 建議檢閱這些授權,以確保符合任何適用的條款。 如果未來模型根據 Databricks 的內部基準檢驗而表現更好,Databricks 可能會變更模型(以及此頁面上提供的適用授權清單)。
目前, Meta-Llama-3.1-70B-指示 是支持這些 AI 函式的基礎模型。
- 此函數僅適用於使用 Foundation Model API 支援區域之 AI 函數中的工作區。
- 此函數不適用於 Azure Databricks SQL Classic。
- 查看 Databricks SQL 定價頁面。
注意
在 Databricks Runtime 15.1 和更新版本中,Databricks 筆記本支援此函數,包括在 Databricks 工作流程中作為任務執行的筆記本。
語法
ai_extract(content, labels)
引數
-
content
:STRING
運算式。 -
labels
:ARRAY<STRING>
常值。 每個元素都是要擷取的實體類型。
傳回
STRUCT
,其中每個欄位都對應至 labels
中指定的實體類型。 每個欄位都包含代表所擷取實體的字串。 如果對任何實體類型找到多個候選項,則只會傳回一個。
如果 content
是 NULL
,結果就是 NULL
。
範例
> SELECT ai_extract(
'John Doe lives in New York and works for Acme Corp.',
array('person', 'location', 'organization')
);
{"person": "John Doe", "location": "New York", "organization": "Acme Corp."}
> SELECT ai_extract(
'Send an email to jane.doe@example.com about the meeting at 10am.',
array('email', 'time')
);
{"email": "jane.doe@example.com", "time": "10am"}