AI BuilderのOCRで画像・PDFから全文を読み取る
Power AutomateのAI Builderで画像やPDFを文字に変換する手順。架空の1ページを使い、全文と行単位の違い、空欄時の分岐、料金・権限の前提を確認します。
画面上の名前は、表示言語やバージョンによって異なる場合があります。クラウドフローはトリガー(フローを開始する条件)から始まり、その後にアクションを実行します。値の受け渡しには、前のステップの出力を選ぶ「動的コンテンツ」を使います。式は[式]欄へ入力します。
実行前に確認
- この例は読み取り結果の確認までです。メール送信・SharePoint保存・Excelへの転記は追加しません。ただしアップロードした入力と出力がクラウドや実行履歴で扱われます。機密文書で試さず、保持期間や閲覧権限は組織の規則に従ってください。
- 2026年10月9日にMicrosoft公式資料で確認:AI Builderを含むフローはPremium扱いで、実行にはAI Builder creditsまたはCopilot Credits等の容量が必要です。Microsoft 365だけで無料・無制限に使えるとは限りません。AI Builder試用版を前提にしないでください。料金や利用権は管理者と公式ライセンス資料で確認します。
- 対応形式はJPG・PNG・BMP・PDF、最大20MBです(2026年10月9日確認)。最初は小さな1ページで試します。暗い写真・傾き・低解像度は誤読の原因になります。読み取れた文字が正しい保証はありません。
- 請求金額・請求日など決まった項目を抽出したい場合は、全文OCRとは目的が異なります。関連する請求書モデルの記事を参照し、どのモデルでも重要な値は人が確認してから使用します。Power Automate Desktopの画面OCRとは別のクラウド機能です。
1使うトリガーとアクション
- トリガー手動でフローをトリガーするファイル入力に練習用の画像またはPDFを1つ指定
- アクション画像または PDF ドキュメント内のテキストを認識するAI Builder:入力はファイルの内容
- アクション作成名前をOcrTextに変更し、ドキュメントの全文を受け取る
- アクション条件empty(trim(string(outputs('OcrText')))) が true か
- アクション作成はい:文字を取得できませんでした。原本を確認してください
- アクション作成いいえ:OcrTextの出力を表示し、原本と見比べる
図で見る処理のイメージ
概念図架空の備品メモ1ページを全文OCRで読み取り、空かどうかで確認方法を分けます。
練習用ファイル
備品貸出メモ/管理番号: DEMO-001/返却予定: 2026-10-20
全文OCR
ドキュメントの全文をOcrTextへ
空欄判定
空・空白のみならはい、文字があればいいえ
人が照合
取得できた文字と原本を見比べる
読み取り候補を確認できます。管理番号・日付への自動分類や業務台帳への登録は行いません。
| OcrTextまたは状態 | 条件の結果 | 確認すること |
|---|---|---|
| DEMO-001を含む文字列 | false → いいえ | 原本と文字を照合する。非空でも正確とは限らない |
| 空文字 | true → はい | 原本の文字・解像度や指定した出力を確認 |
| 半角スペース3個だけ | true → はい | trimで前後の空白を取り除くと空になる |
| AI Builderアクションが失敗 | 条件に到達しない(既定) | 実行履歴のエラーを確認。空欄とは別の問題 |
架空の入力と期待される処理例です。実際のフローを実行して確認した結果ではありません。
設定と処理を説明する模式図です。実際の設定画面や実行結果のスクリーンショットではありません。
2実際の設定内容
入力する値・操作手順を確認する9ステップの設定と確認方法
- 1
準備:管理者に、Dataverseを含むPower Platform環境、AI Builderを使用する権限、組織のデータポリシー、Power AutomateのPremium利用条件と利用可能なクレジットを確認します。未契約・未承認ならここで止めます。この手順を読むだけでは課金されませんが、AI Builderを含むフローの実行は容量を消費します。
- 2
練習ファイル:白地に黒文字で「備品貸出メモ」「管理番号: DEMO-001」「返却予定: 2026-10-20」の3行を書いた、個人情報のない1ページのPNGまたはPDFを用意します。名前はocr-practice.pngなどにします。TXTやWordファイルを拡張子だけ変えて画像にしないでください。
- 3
インスタントクラウドフローを作り、「手動でフローをトリガーする」に入力を追加して「ファイル」を選択します。説明を「練習用ファイル」にします。続いてAI Builderの「画像または PDF ドキュメント内のテキストを認識する」を追加します。英語UIでは Recognize text in an image or a PDF document です。
- 4
AI Builderの画像入力には、手動トリガーの動的コンテンツ「ファイルの内容(File Content)」を選びます。ファイル名やパスの文字列ではありません。SharePointから取得する構成に変更する場合も「ファイル コンテンツの取得」が返す内容を渡します。
- 5
データ操作の「作成」を置き、アクション名をOcrTextに変更します。入力はAI Builderの「ドキュメントの全文(Full text of the document)」です。「Text」は各行の値で、選ぶとページ・行のApply to eachが追加される場合があります。今回は全文なので行ループを作りません。OCRは全文を文字列にする処理で、管理番号だけを別の列に取り出す設定ではありません。
- 6
次に条件を追加。左の式欄に empty(trim(string(outputs('OcrText'))))、比較を「次の値に等しい」、右の式欄に true を指定します。trueは文字列でなくBooleanです。式欄に先頭の@や外側の引用符は不要です。はい側の「作成」は「文字を取得できませんでした。原本を確認してください」と固定入力。いいえ側の「作成」はOcrTextの出力を選択します。
- 7
確認:保存して手動テストで練習ファイルを選びます。実行履歴でAI Builderが成功したこと、OcrTextの出力、実行された条件の枝を順番に確認します。3つの内容が読めていればいいえ側ですが、改行・空白や記号は原本と異なる場合があります。値が空ならはい側です。非空でも誤読はあるので、DEMO-001や日付を原本と照合してください。
- 8
判定だけ練習したい場合:別の練習フローに手動トリガー→「作成」(OcrText)→同じ条件と2つの「作成」だけを置きます。AI Builderは追加せず、OcrTextへDEMO-001、空文字(式で2個の単一引用符)、半角スペース3個を順に入力します。期待される枝は、いいえ・はい・はいです。これは空欄判定の練習で、OCRの精度テストではありません。
- 9
つまずいたとき:AI Builder自体が失敗した場合、既定では後続のOcrTextや条件はスキップされます。「空文字」の枝ではエラーを検知できません。実行履歴の失敗したアクションを開き、ファイル形式・容量、ファイル内容の指定、権限・容量を確認します。自動通知を組み込む場合は関連する「失敗時に通知する」の説明を参照してください。
- 対象環境
- クラウドフロー(AI Builder)
- 更新日
- 2026年10月9日