【UiPath】Document Understanding 抽出器の早見表

# はじめに

- 本記事は、Document Understanding の抽出器はどれを使えばよいか悩んでらっしゃる方向けの内容です。
- 記事の内容は、個人の見解または確認結果であり、UiPath の公式見解ではありません。
- 製品仕様や参考画像は 24.10 バージョンのもので構成しています。
- 動作確認は次の依存パッケージでおこなっています。

::: note
■DUプロジェクト抽出器
"UiPath.IntelligentOCR.Activities": "[6.24.0-preview]"

■生成AI抽出器
"UiPath.IntelligentOCR.Activities": "[6.22.1]"

■ドキュメントデータを抽出
"UiPath.DocumentUnderstanding.Activities": "[2.11.0-preview]"

■コンテンツ生成、画像分析
"UiPath.IntegrationService.Activities": "[1.14.0]"
:::

# DU抽出器の早見表

![抽出器早見表.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/f71c8b7b-4846-45cc-bb48-100f848bd9c9.jpeg)

## 正規表現抽出器

![正規表現抽出器.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/93cda944-407f-4d77-aa43-58e41e5ff9b2.jpeg)

https://qiita.com/Kajiita/items/915533c18a9e4fa15c34

正規表現で定義できる場合、帳票の種類に関係なくすべてのパターンで利用可能。
信頼度のロジックも明快で、1個しか抽出されなければ100%、2個抽出されたら50%
無料で設定も容易なため、抽出したい項目（の性質）によっては積極的に利用したい抽出器です。

## フォーム抽出器

![フォーム抽出器.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/60bc54b1-a941-4145-8cbb-0eada64aa170.jpeg)

***定型レイアウト＆標準フィールドのみの抽出であれば迷わず利用！***
ML（マシンラーニング）系や生成AIの抽出では、抽出対象の有無に関わらずページ単位で課金されるのに対して
抽出対象の有無を考慮して抽出してくれる貴重な抽出器です。
AIユニットの消費も0.2と微量で、多少の帳票のブレや解像度の違いなどもアンカー機能で吸収できてしまいます。

::: note warn
表形式のデータは、***ページ跨ぎの明細抽出ができないのと、固定の列幅や行の高さでないといけない点***に注意が必要です。
:::

## 生成AI抽出器

![生成AI抽出器.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/4430b126-b2f9-431d-8461-69b66a55d9b4.jpeg)

抽出対象の有無に関わらず一律1ページあたり1.2のAIユニットを消費します。
抽出項目が少ない（数個の）場合はメンテナンスコストを考慮してもフォーム抽出器がよいかもしれませんが、
***読み取った値のフォーマット整形や読み替え、合算などおこなう場合は、プロンプトに補足文を追加するだけで実現できる***ため利用するメリットが大きくなります。

::: note
AIユニットはあくまでページ単位で課金されるため、
ML系や生成AIの抽出においては、抽出項目が多い方がコストパフォーマンスは良くなります。
:::

::: note warn
- 表形式データの抽出には対応していません。
- プロンプトの指示文しだいで表形式データの抽出自体は可能ですが、単一のフィールド値として返却されるため、後段で値を整形する追加実装等が必要です。
:::

## マシンラーニング抽出器

![マシンラーニング抽出器.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/b4d8d2ee-6e30-45e9-9918-010bb0639ee9.jpeg)

***後継器のDUプロジェクト抽出器がリリースされているため、これから抽出モデル（MLスキル）をつくる方が利用することはない***かとおもいます。というか非推奨です。
わたしの手元の Pro Trial 環境では AI Center のサービスが起動できなくなった（理由は不明で「更新中」のままの）ため、MLスキルを再度デプロイできずキャプチャのように警告マークがついてます。

::: note
DUプロジェクト抽出器がリリースされる以前は、***データ抽出スコープ内で利用できるML系の抽出器***がこれしかなかったため、DUのモダンプロジェクトに従来のモデルを移行しても利用できませんでした。
:::

## ドキュメントデータを抽出

![ドキュメントデータを抽出.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/608062cf-5e5f-4063-9fc3-ea20b7317f35.jpeg)

https://qiita.com/Kajiita/items/f0f960aaf244b3aee9a8

***実装時にタクソノミーの定義やデジタル化が不要なことと、値の取り出し方が容易なのが強みです！***
Studio WebでDUを扱う際は標準で利用するもので、デスクトップのStudioでも、他の抽出器と併用する必要がなければこちらの利用をお勧めします。

::: note warn
複数種類のドキュメントを1ファイルで読み込むことはできない（モダンの分類器がファイル単位の分類にしか対応していない）
:::

## DUプロジェクト抽出器

![DUプロジェクト抽出器.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/7c8a209a-a2e1-4a3d-beeb-496e75a42c14.jpeg)

ML系の抽出器のため、初期学習で30枚以上のアノテーション作業が必要ですが、生成AI特有のゆらぎ（繰り返し実行した際に異なる値を抽出する）のない特化型AIモデルです。
生成AIでは空セルや多重結合セルを含む表を正しく認識することが困難です。
UiPathの特化型AIモデルの構築においては、座標の学習や行列を正しく認識させるためのグルーピングが可能なため、学習しだいでは抽出精度の向上が見込めます。

::: note warn
複数種類のドキュメントを1ファイルで読み込むことはできない（モダンの分類器がファイル単位の分類にしか対応していない）
:::

## コンテンツ生成

![コンテンツ生成.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/3c65b4b2-e482-4b23-9957-da89637c94c3.jpeg)

https://qiita.com/Kajiita/items/069df3afbae52d8c5787

***なんといっても実装の容易さが一番の強みです！***
生成AIのモデルも gpt4、Gemini、Claude から選択可能
AIユニットを追加で1消費するものの、入力ファイルを引数で渡す場合はこのアクティビティ1つでデジタル化から抽出結果のテキスト出力まで可能です！

::: note warn
- 空セルや多重結合セルを含む表形式データを正しく認識することは困難
- 生成AI特有のゆらぎ（繰り返し実行した際に異なる値を抽出する）は排除できない
- 抽出結果のエクスポートや確認画面は独自で実装する必要あり
:::

## 画像分析

![画像分析.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/bbc99b77-ca6a-43ac-b8a4-ebc2cd29f8a0.jpeg)

基本的な強みは上述のコンテンツ生成と同じです。

::: note warn
- 画像ファイルのため、抽出したい項目が1ページ内におさまっている必要がある
- 表形式データでページ跨ぎのあるものが抽出できない ※複数ページ分を1画像ファイルにする、または分類過程と後段で独自に抽出結果を加工する場合は可能です。
:::

# さいごに
いかがでしたでしょうか。
機能は多いがどれ使ったらよいか悩む方もいらっしゃいますよね。わたしもそうなので書きました。
少しでもお役に立てば幸いです。
最後までお読みいただきありがとうございます(・ω・)ノ