カテゴリ:

:doc:`/sql-reference/functions-string`(AI 関数)

AI_EXTRACT( Document AI レガシーモデル)

ファイルから情報を抽出します。

構文

AI_EXTRACT ( model => <model> ,
            file => <file> )
Copy

引数

model => model

Snowflakeモデルレジストリに保存されている抽出用の Document AI Arctic-TILT モデルを指定します(たとえば my_db.my_schema.my_model )。

file => file

抽出用の FILE

戻り値

エンティティ抽出

{
  "error": null,
  "response": {
    "invoice_items": [
      "NEW CRUSHED VELVET DIVAN BED",
      "Vintage Radiator",
      "Solid Wooden Worktop",
      "Sienna Crushed Velvet Curtains"
    ],
    "invoice_number": "123/20",
    "tax_amount": "77.57",
    "total_amount": "465.43 GBP",
    "vendor_name": "UK Exports & Imports Ltd"
  }
}

テーブル抽出

{
  "error": null,
  "response": {
    "table1": {
      "gross": ["10", "31", "10"],
      "item": ["apples", "banana", "pear"],
      "net": ["9", "30", "10"],
      "tax": ["1", "1", ""]
    },
    "table2": {
      "name": ["John", "Ana", "Lisa"],
      "surname": ["Smith", "Nixon", "Gonzales"]
    }
  }
}

アクセス制御の要件

ユーザーは、 SNOWFLAKE.CORTEX_USER データベースロール が付与されているロールを使用する必要があります。この権限の付与については、 Cortex LLM privileges をご参照ください。

さらに、このモデルに対する OWNERSHIP 権限が必要です。

使用上の注意

  • モデルは Snowflakeモデルレジストリ にある必要があります。Snowflakeモデルレジストリにモデルを移行するには、Document AI UI に移動し、プロンプトが表示されたら、統合バナーの指示に従います。

  • Document AI モデルは100個を超えるエンティティを持つことはできません。

  • 明示的に設定されていない場合は、デフォルトで利用可能な最新のモデルバージョンが使用されます( Document AI UI でモデルが公開またはトレーニングされたときに設定されたバージョン)。モデルのデフォルトバージョンを設定するには、次の例に示すように ALTER MODEL コマンドを使用します。

    ALTER MODEL my_model SET DEFAULT_VERSION = new_version;
    
    Copy
  • 信頼性スコアはサポートされていません。

  • AI_EXTRACT はトークンベースの請求を使用しますが、これは <モデルビルド名>!PREDICT メソッドで使用されるコンピューティング時間ベースの請求とは異なります。Document AI レガシーモデルの AI_EXTRACT のコストの詳細については、 Snowflakeサービス利用表 をご参照ください。

    • エンティティ抽出コストは arctic-tilt-entity とラベル付けされます。

    • テーブル抽出コストは arctic-tilt-table とラベル付けされます。

リージョンの可用性

次のリージョンが利用可能です。

  • AWSカナダ(中部)

  • AWS EU (フランクフルト)

  • AWS EU(アイルランド)

  • AWS US 東部(北部バージニア)

  • AWS US東部(オハイオ)

  • AWS US 西部(オレゴン)

  • Azureオーストラリア東部(ニューサウスウェールズ)

  • Azure東 US 2(バージニア)

  • Azure東南アジア(シンガポール)

  • Azure西ヨーロッパ(オランダ)

  • Azure西部US 2(ワシントン)

リージョンがリストされていない場合は、 クロスリージョン推論 を使用します。

次の例では、Document AI モデルで定義された特徴量を抽出しています。

SELECT AI_EXTRACT(
  model => 'my_db.my_schema.my_model',
  file => TO_FILE('@files_db.files_schema.files', 'agreement.pdf')
);
Copy

次の例では、ステージ上のすべてのファイルから情報を抽出しています。

SELECT AI_EXTRACT(
  model => 'my_db.my_schema.my_model',
  file => TO_FILE('@db.schema.files', relative_path)
) FROM DIRECTORY (@db.schema.files);
Copy