AI_EXTRACT(Transact-SQL)

適用対象:Microsoft Fabric の SQL 分析エンドポイントと Microsoft Fabric のウェアハウス

AI_EXTRACT関数は、あなたが提供したクラスを使って入力テキストから値を抽出し、その結果をJSONオブジェクトとして返します。

Note

  • AI_EXTRACT はプレビュー段階です。
  • AI_EXTRACTSQL分析エンドポイントおよびMicrosoft FabricのWarehouseでのみ利用可能です。

Syntax

Transact-SQL 構文表記規則

AI_EXTRACT ( text, class1, class2 [ , ...n ] [ (NULL | ERROR | DEFAULT <value>) ON ERROR ] )

引数

SMS 送信

例えばnvarcharvarcharnchar、charなど、文字タイプの表現です。

クラス1、クラス2、...n

テキストから抽出するための1つ以上のプロパティネーム。

エラーで

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

A. 文から性質を抽出する

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)
);