メインコンテンツまでスキップ

ドキュメント解析

生成AIを用いてドキュメントファイルの内容を解析し、構造化データを抽出した結果をJSON文字列形式として出力するタスクです。

HTML通知テキストメール送信

月間利用上限

本タスクは生成AIを利用する機能のため、ドキュメント内容および出力結果に応じて消費されるトークン数に基づき、月間の利用量に上限があります。
消費トークン数は、解析対象ファイルの内容量や抽出項目数により変動します。

対応ファイル形式

解析が可能なファイル形式は以下の通りです。
csv, html, txt, pdf, md, docx, doc, xlsx, xls
なお、解析が可能なファイルサイズの上限は4.5MBです。

画像内文字の解析

PDF全体の90%以上が画像で構成されている場合、画像内の文字も解析します。
PDF以外のファイル形式では画像内文字の解析には対応していません。

入力値​

入力値の構造​

im_sendTextMail <object>
├─ disableCache <boolean>
├─ file <storage>
└─ jsonString <string>

入力値の詳細​

項目名説明型備考
disableCacheキャッシュ無効boolean解析結果のキャッシュを無効化する場合trueを指定します。
file解析対象ファイルstring解析を行うドキュメントファイルを指定します。
jsonString解析パラメータJSON文字列stringファイル解析時に使用する、抽出対象および出力形式を定義するパラメータを指定します。
解析結果のキャッシュ

解析対象ファイルおよび解析パラメータJSON文字列が同一の場合、解析結果は一定時間キャッシュされ、再利用されます。
キャッシュが利用された場合、月間の利用量には加算されません。

解析パラメータJSON文字列の構造​

以下のJSON構造を文字列として定義してください。

fields  <object[]>
├─ key <string>
├─ label <string>
├─ prompt <string>
└─ columns <object[]>
├─ key <string>
├─ label <string>
└─ prompt <string>
pdf <object>
├─ limit <integer>
└─ startPage <integer>
項目名説明型備考
fields抽出項目設定object[]抽出を行う項目の設定を配列で指定します。
pdfPDF設定objectPDFファイルを解析する際の設定を指定します。

fields​

項目名説明型備考
key出力キーstring抽出した項目を出力する際のキーを指定します。
label項目名string抽出する項目名を指定します。
prompt補足説明string生成AIが項目を正しく抽出するための補足説明を指定します。
日付形式など、取得する文字列の形式を指定することも可能です。
columns明細項目設定object[]項目を明細データ(テーブル構造)として抽出する場合に指定します。
columns​
項目名説明型備考
key出力キーstring明細データの列として抽出した項目を出力する際のキーを指定します。
label項目名string明細データの列として抽出する項目名を指定します。
prompt補足説明string生成AIが項目を正しく抽出するための補足説明を指定します。
日付形式など、取得する文字列の形式を指定することも可能です。

pdf​

項目名説明型備考
limitページ数上限integer解析対象とするページ数の上限を指定します。
startPage開始ページinteger解析対象とする開始ページを指定します。 指定したページから解析を開始します。

解析パラメータJSON文字列のサンプル​

{
"fields": [
{ "key": "invoice_number", "label": "請求書番号"},
{ "key": "invoice_date", "label": "請求日", "prompt": "請求書に記載された請求日の日付です。YYYY-MM-DD 形式で抽出します。" },
{ "key": "issuer_name", "label": "請求書発行者名", "prompt": "請求書に記載された請求書を発行した会社名または氏名です。" },
{ "key": "customer_name", "label": "顧客名", "prompt": "請求書に記載された顧客の会社名または氏名です。" },
{ "key": "total_amount", "label": "合計金額", "prompt": "請求書に記載された税込みの合計金額です。" },
{
"key": "billing_details",
"label": "請求明細",
"prompt": "請求書に記載された明細表です。",
"columns": [
{ "key": "item_name", "label": "商品名", "prompt": "明細表に記載された商品名です。" },
{ "key": "quantity", "label": "数量", "prompt": "明細表に記載された数量です。" },
{ "key": "unit_price", "label": "単価", "prompt": "明細表に記載された単価です。" },
{ "key": "amount", "label": "金額", "prompt": "明細表に記載された金額です。" }
]
}
],
"pdf": {
"limit": 10,
"startPage": 1
}
}

出力値​

出力値の構造​

im_analyzeDocument<string>

出力値の詳細​

項目名説明型備考
im_analyzeDocument解析結果JSON文字列string解析パラメータで指定された項目をキーとして含む、解析結果の JSON 文字列です。

出力値のサンプル​

{
"invoice_number": "20251115-123",
"invoice_date": "2025-11-15",
"issuer_name": "株式会社サンプル",
"customer_name": "株式会社サンプル取引先",
"total_amount": "23100",
"billing_details": [
{ "item_name": "コピー用紙", "quantity": "10", "unit_price": "800", "amount": "8000" },
{ "item_name": "ボールペン", "quantity": "50", "unit_price": "120", "amount": "6000" },
{ "item_name": "ファイルケース", "quantity": "20", "unit_price": "350", "amount": "7000" }
]
}
出力値の変換

出力値はJSON文字列として出力されます。
抽出した各項目を利用する場合は、後続の処理でマッピング関数「JSON - parseJSON」を利用するなどしてオブジェクトに変換してください。

抽出項目の値の変換

抽出された各項目の値はすべて文字列型で出力されます。
抽出した各項目を数値や日付として利用する場合は、後続の処理でマッピング関数「数値操作 - parse」や「日付操作 - parse」、JavaScriptユーザ定義タスクを利用するなどして適切な型に変換してください。