【Power Apps】モバイルで請求書の写真を撮り、AI Builder で抽出した情報と写真を SharePoint リストに保存する #PowerAutomate

これまで色んな記事で紹介してきた通り、AI Builder では、ChatGPT や Copilot で AI に指示するプロンプトを部品化して Power Apps のアプリや Power Automate のフローから利用することができます。

例えば、請求書から情報を抽出してほしいというプロンプトを部品化して、請求書がメールで届いたら、自動で Power Automate のフローが動き出して、プロンプトを呼び出して必要な情報を抽出して SharePoint リストにデータを登録するようなことができます。

image.png

image.png

そして、要件上、モバイル向けのアプリで請求書の写真を撮ったり、ファイルをアップロードして必要な情報を読み取って、データを連携しつつ、撮った写真もファイルとして保存したいというケースもあると思います。

今回は、そのようなことをしたい際のアプローチについて説明します。

AI Builder のプロンプトで請求書から情報を読み取って必要な情報を読み取るアプローチはいくつかあります。

一つ目は、OCR で文字を読み取り、読み取った情報をプロンプトに渡して、必要な情報を抽出する感じです。
AI Builder には標準で OCR 機能が備わっており、Power Apps では、以下の [テキスト認識エンジン] を追加するだけでアプリに OCR 機能を組み込むことができます。

image.png

こちらを利用して、請求を読み取るアプリを Power Apps で実装すると、以下のような感じです。

image.png

image.png

もう一つは、OCR を介さずに、ファイルを直接アップロードするアプローチです。こちらも紹介した通り、AI Builder のプロンプトでは、直接ファイルや画像をアップロード出来るようになっています。

そして、上記二つを踏まえ、モバイルの場合、その場で写真を撮り、撮った写真自体もファイルとしてアップロードすることを考慮すると、後者の方が良いと判断しました。

理由は、 フォームコントロールの添付ファイルコントロールをそのまま使うのが、SharePoint リストに添付ファイルを保存する際簡単なためです。

恐らくですが、 [テキスト認識エンジン] を利用する場合、[OriginalImage] プロパティを利用して、以下の記事で紹介したような方法を利用して、Power Automate にファイルの情報を渡すアプローチになると思います。

イメージとしては以下のような感じになります。

まず、フォームコントロールで AI Builder のプロンプトが請求書から抽出した情報を保存します (OCR を介した上で請求書から情報を抽出)。その後、フォームコントロールの[OnSuccess]プロパティで Power Automate にファイルやリストの行の ID を送信し、Power Automate 側でその行に添付ファイルを追加する感じです。

image.png

image.png

image.png

AI Builder のクレジットを抑えるためにこちらの方法で実装を試みるのもありだと思いますが、実装難易度が上がると思います。

以下のようなアプリが一番実装は簡単そうです。
まず、データソースは SharePoint リストにして、フォームコントロールの添付ファイルコントロールを使います。

image.png

添付ファイルコントロールはモバイルで利用すると以下のようにその場で写真も撮れます。そのため、その場で請求書の写真も撮れます。

image.png

そして、添付ファイルを追加した際、あらかじめ作成しておいた以下のプロンプトを呼び出すようにします。

image.png

image.png

image.png

Set(
    gblInvoiceData,
    ParseJSON('請求書情報抽出 OCR なし'.Predict(First(DataCardValue9.Attachments).Value).Text)
);

そして、以下のようにプロンプトの戻り値を基にフォームの各列に代入します。

image.png

あとは SubmitForm するだけで、SarePoint リストに抜き取った情報および画像やファイルが添付ファイル列に格納されます。

image.png

image.png

モバイル向けであれば、この方法が一番楽だと思います。

Power Apps でモバイルから請求書を読み取り、SharePoint リストにデータとファイルを保存する方法を紹介しました。

現場で、モバイルで写真を撮ったりモバイルに保存されている写真をアップロードして、その写真から必要な情報を抽出して、抽出した情報と写真を合わせて保存するようなシナリオもあると思いますので、参考になれば幸いです。



フラッグシティパートナーズ海外不動産投資セミナー 【DMM FX】入金

Source link