はじめに
- 本記事は、IXP(Intelligent Xtraction and Processing / マルチモーダルなデータ抽出機能)を試験利用した際の所感を書いたものです。
- 扱うドキュメントの種類:非構造化ドキュメントと複雑なドキュメント
- 記事の内容は、個人の見解または確認結果であり、UiPath の公式見解ではありません。
- 製品仕様や参考画像は2025年8月8日時点のもので構成しています。
IXPについて
これまで、入り口が分かれていた ➀Communication Mining(短い非構造データ用) と ➁Document Understanding(構造・半構造Doc用) に、➂複雑な非構造Doc用の抽出機能が追加、合体したデータ抽出の総合商社サービスです。
本記事では➂番の抽出機能を扱います。
UiPath IXP のクイックツアー
「ツアーを開始」ボタンをクリック
モデルの構築操作(非構造化ドキュメントや複雑なドキュメント)
トップページの画面中央上段の「非構造化ドキュメントや複雑なドキュメント」をクリック
「プロジェクトを作成」より、プロジェクト名を指定しプロジェクトを新規作成します。
プロジェクトの構築タブの「ドキュメントをアップロード」からモデルを構築したいドキュメントのサンプルをアップロードします。
StudioのDUに慣れている方は、画面中央のタクソノミーから定義しなくて大丈夫?とおもわれるかもしれませんが、ドキュメントをアップロードしてからフィールド追加と予測はできますので、どちらからはじめても大丈夫です!
アップロードしたドキュメントを選択し、「Validate」ボタンをクリックします。
アノテーション用の画面が表示されますが、まだタクソノミーを定義していないので画面右側のパネルには何も表示されません。
画面右下の「フィールドグループ」を追加より、フィールドグループを定義します。
今回は請求書サンプルを読み取るので、フィールドグループとして『請求書_明細』を追加します。
フィールドグループを追加すると、グループ内の個別フィールドを定義できるようになります。
フィールドの種類には次の様なものが選択可能です。
- Boolean:真偽
- Date:日付
- Exact Text:無加工のテキスト(参照テキストそのまま)
- Inferred Text:類推テキスト ※後段の評価セクションで触れます。
- Monetary Quantity:金額
- Number:数値
フィールドの登録には名前・種類・プロンプトの設定が必要です。
画面右のパネルの右上のグルグルマーク(これが予測ボタンの模様)をクリックします。
(「予測を再計算すると、保存されていないアノテーションは失われます」の警告は「確認」で進めます。)
!!??ほぼ1秒で予測結果が返ってきました(@_@;)
読み取ったサンプルの表には4レコードあるため、4件の結果が返却されてきました。
中身を開くとレコードの詳細を確認できます。
タクソノミーの追加
アノテーション画面の右上の「タクソノミーを管理」をクリック
> 「+ フィールドグループ」より『請求書_ヘッダー』グループを追加します。
ヘッダー項目を任意で追加設定していきます。
タクソノミー設定後にアノテーション画面に戻ると
!!??衝撃です!!タクソノミー定義中から裏で処理でも走っていたのか!?アノテーション画面に戻ると既に値が抽出されています(;´・ω・)
抽出結果を補正して確定します。
確定ボタン押下後に「構築」画面に戻ると、既にプロジェクトスコアまで出ています。。。生成AIだから速いのか?
パブリッシュ
評価を確認し、初回なのでそのままパブリッシュ画面に進めます。
画面左上の「パブリッシュ」ボタンを押下します。
モデルの説明文とデプロイタグ(本番かステージング環境)を指定しパブリッシュします。
パブリッシュ画面の一覧に、デプロイ済みのモデルが1つ追加されます。
モデルの利用手順
Studio Webでプロジェクトを新規作成し、「ドキュメントデータを抽出」を配置します。
Document Understanding プロジェクト欄を開き、パブリッシュ済みのモデル(先ほど作成した「invoice_japan」)を選択します。
プロジェクト選択後に『バージョン』と『ドキュメントの種類』の指定欄が表示されるので、パブリッシュ時に設定したデプロイタグと「Default」を選択します。
ドキュメントの種類には「Use Classification Result(分類結果)」か「Default」が指定可能で、
Use Classification Result(分類結果)の使用オプションは、ドキュメント データの生成オプションがオフになっており、選択したプロジェクトに生成 AI 抽出器ではない抽出器が含まれている場合にのみ使用できます。
出力のドキュメントデータオブジェクトのDataプロパティに「請求書ヘッダー」と「請求書明細」のフィールドグループを確認できます。
(式サンプル)
- ドキュメントデータ.data.請求書ヘッダー
- ドキュメントデータ.data.請求書明細
フィールドグループ毎に「繰り返し(コレクションの各要素)」で値を取り出します。
currentItemのプロパティから出力したいフィールドを選択します。
評価・チューニング
出力形式については、タクソノミー定義時に選択した『フィールドの種類』の影響を受けるため、たとえば「Date」のフィールドであれば「yyyy-MM-dd」で必ず出力されます。
プロンプトに「yyyy/MM/dd 形式で出力してください。」と指定したとしても無視されます。
当初、「Exact Text:無加工のテキスト(参照テキストそのまま)」をフィールドの種類に指定した支払期日について、プロンプトで出力形式を指定しても『2023年10月末日』と出力されたため、「Date」のフィールド種類に変更しました。
フィールドの種類をアノテーション後に変更する場合、以前にパブリッシュ済みのモデルに戻す以外は方法がなくなるため、未パブリッシュの場合はフィールド変更前にパブリッシュしておくことをお勧めします。
なお、プロンプトで指定した任意の出力形式を優先したい場合、「Inferred Text:類推テキスト」を利用すればOKです!
警告マークがついているフィールドのマッピングを見直します。
(現時点では機械学習に未対応のため、アノテーション後に予測結果は変わりません(アノテーションした数も数枚のため、絶対とは言えませんがそこはご容赦)=警告マーク自体は消えなくてもアノテーション作業を実施すればスコアは上がります)
金額フィールドなどは予測にカンマがつかず不一致を解消できませんが、マッピングはあっているので無視して進めます。
マッピング(参照)の見直しをおこなっただけで、56%から86%までスコアは改善しました。
再パブリッシュ
画面左上の「パブリッシュ」ボタンを押下し、前回同様に説明文とデプロイタグを選択します。
再パブリッシュはすぐに完了します。
一覧には最新バージョンのモデルが選択したデプロイタグで追加されます。
デプロイタグの変更や取り下げの操作は三点リーダーからおこなえます。
さいごに
今回の試験利用では、予測結果が実際の値と一致するのにどの程度の学習が必要か、また複数値の取り扱いなどが不明でしたが、モデルの構築方法やWF内での使い方は直感的でわかりやすく、日本語のスキャンデータで問題なく値抽出された点は良かったとおもいます。
まだプレビュー版ですが、パッとつかった感じでは品質問題も確認しなかったので一般向けリリースが待ち遠しいですね(´ω`)