適用於:Microsoft Fabric 中的 SQL 分析端點與 Microsoft Fabric 中的倉庫
這個 AI_EXTRACT 函式會用你提供的類別從輸入文字中擷取值,然後以 JSON 物件的形式回傳結果。
Note
-
AI_EXTRACT處於預覽狀態。 -
AI_EXTRACT僅在 SQL 分析端點及 Microsoft Fabric 中的 Warehouse 中提供。
Syntax
AI_EXTRACT ( text, class1, class2 [ , ...n ] [ (NULL | ERROR | DEFAULT <value>) ON ERROR ] )
Arguments
收發簡訊
一個字元類型的 表達式 ,例如 nvarchar、 varchar、 nchar 或 char。
一班、二班,......n
從文本中提取一個或多個屬性名稱。
失誤
這個 ON ERROR 條款控制 AI 函式如何處理處理錯誤。
-
NULL ON ERROR當函式無法處理某個值時,會回傳NULL。 這是預設行為,不需要特別說明。 -
ERROR ON ERROR若在處理任何輸入值時發生錯誤,會導致整個查詢失敗。 -
DEFAULT <value> ON ERROR回傳指定的預設值,而非NULL錯誤發生時。
錯誤可能由 負責任的 AI 安全檢查、輸入大小限制、短暫服務問題或其他處理失敗所引起。
傳回類型
包含 JSON 文字的回傳 nvarchar(max) 。
Remarks
如果 AI 模型無法處理文字,AI 功能會回傳 NULL 。 常見原因包括:
- 負責任的 AI 規則會 封鎖輸入文字中的不當內容。
- 輸入文字超過字符限制。 目前型號最多支援 15 KB 的文字。
Examples
答: 從句子中提取性質
SELECT ai_extract('Check-in was late and room dirty', 'sentiment', 'problem') AS extraction;
預期結果:{"sentiment":"Negative","problem":"Dirty room"}
B. 解析擷取後的 JSON 欄位
SELECT sentiment, time_reported, problem
FROM dbo.hotel_reviews
CROSS APPLY OPENJSON(
ai_extract(review_text, 'sentiment', 'time_reported', 'problem')
) WITH (
sentiment VARCHAR(1000),
time_reported VARCHAR(100),
problem VARCHAR(1000)
);