0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AIでPDF請求書をExcelに自動転記するAPI開発をやってみよう~その1~

Last updated at Posted at 2025-12-05

はじめに

こんにちは、フジマロです:grinning:

AI(人工知能)は、これまで開発の現場で注目されていましたが、最近では物流や製造の現場だけではなく、バックオフィスや経理などでも利用が高まってきました。
なかでも、OCRとAIを融合させた「AI OCR」は注目を集めています。
例えば、手書きの請求書画像やPDFなどに記載された項目の自動抽出ができる「AI OCR」は、従来手作業で行っていた入力作業を効率化することができ、生産性を高めるツールとして、注目されています。

AI OCRとは

AI OCRとは、光学文字認識(OCR)技術に人工知能(AI)を組み合わせることで、手書き文字や複雑なレイアウトの書類など、より多様な文書から高い精度で文字を読み取り、テキストデータに変換する技術です。機械学習やディープラーニングの能力により、認識結果を学習して精度が向上し、手作業によるデータ入力を大幅に自動化・効率化できます。

こちらはMicrosoft社が提供しているAI OCRサービスの具体的なイメージです
AzureADI.gif

今回やること

今回はAI OCRを使いPDFの注文書の画像を、AIで文字におこしてファイルに書き込んでいく処理をAPIで作成します。
Azure AI Document Itelligence事前構築済みモデルというサービスを使用します。

image.png

作成していく手順は下記になります

事前準備
Azure側の設定
 1.Document Intelligenceの作成
  2.エンドポイントの取得
  3.APIキーの取得

HULFT Square側の設定
 4.コネクションの設定
 5.環境変数の設定
 6.ストレージにファイルをアップロード
 7.スクリプトの用意

➀画像ファイルをAIサービスにPOSTし画像IDを得る
 8.スクリプト変数作成
 9.画像POST処理作成
 10.変数Mapper

➁画像IDを使いGETしたデータをExcelファイルに書込む
 11.画像IDからデータ取得
 12.ファイル書込み
 13.スキーマ
 14.mapper
 15.非同期処理
 16.実行と結果確認

本記事は、 「➀画像ファイルをAIサービスにPOSTし画像IDを得る」まで実施します
次回は、「➁画像IDを使いGETしたデータをExcelファイルに書込む」をご紹介します

事前準備

環境

事前に下記をご用意ください

  • HULFT Square
  • Azure サブスクリプション
  • Azure リソースグループ

使用する画像

今回はこちらの画像(PDF)を使います
image.png

事前構築済み モデルはあらかじめMicrosoft社の方で学習されているモデルになります
今回は 請求書モデル というサービスを使用します。
こちらを使用することで利用者がトレーニングさせる必要がございません
公式 Azure AI Document Intelligence モデルを使用する

image.png
※2025年11月時点

Azure側の設定

1.Document Intelligenceの作成

AzureでDocument Intelligenceのサービスを作成してエンドポイントとAPIキーを取得します

ますは検索バーにDocument Intelligenceと入力して出てきたサービスを押下してください
image.png

Document Intelligenceの画面に移管するので[作成]を押下してください

今回はStandardレベルで作成しました
StandardレベルとFreeレベルの違いは公式をご確認ください。
Azure AI Document Intelligence の価格

2.エンドポイントの取得

作成されたら下記の順番で取得していきます
[概要] からエンドポイントのURLをコピーしてください
※ここで取得した値は後程使います
image.png

3.APIキーの取得

下記の順番で取得していきます
[リソース管理] - [キーとエンドポイント] からキー1の値をコピーしてください
※ここで取得した値は後程使います
image.png

HULFT Square側の設定

ここからは、HULFT SquareにAzureで取得した値を設定していきます

4.コネクションの設定

Azure Document IntelligenceのAPIエンドポイントを設定します
HULFT Squareの[コネクター設定] - [新規追加] - [REST] - [REST接続] を開いて下記を設定します

名前: REST接続_AzureDocumentIntelligence
URL: ※「2.エンドポイントの取得」で取得したエンドポイント

image.png

5.環境変数の設定

Azure Document IntelligenceのAPIキー変数 に下記のように設定します

HULFT Squareの画面から
[変数] - [新規追加] を開く

名前: APIキー
値 :「3.APIキーの取得」で取得したAPIキー

image.png

6.ストレージにファイルをアップロード

HULFT SquareのストレージにPDFファイルを格納します。
PDFファイル名:order.pdf
image.png

order.pdf の中はこのようなデータになっております。
image.png
※対応しているファイル形式はPDF以外にもPNGやJPEGも利用可能です
公式 Azure AI Document Intelligence のドキュメント

7.スクリプトの用意

HULFT Squareのスクリプトを作成しデザイナーを開きます。
今回は下記の名前で作成しデザイナーを開きました。

プロジェクト名: AzureOCR
スクリプト名:Document_Intelligence
image.png

➀画像ファイルをAIサービスにPOSTし画像IDを得る

image.png

8.スクリプト変数作成

まずは変数を作成します。
スクリプトの名前を右クリックして下記の順番で作成します。
[新規作成] - [スクリプト変数(V)]

スクリプト変数を2つ作成し、下記のように設定しました。

image.png

項目 設定値
名前 ファイル名
初期値 order.pdf
項目 設定値
名前 ID
初期値

実際に設定した内容は下記です。
image.png

9.画像POST処理作成

ここから実際に処理を作成していきます。

右側のツールパレットから下記の順番で設定します
[ネットワーク] - [REST] - [POST実行]

POST実行コンポーネントでは下記4つのタブを設定します。
必須設定
リクエスト設定
レスポンス設定
ヘッダ設定

image.png

必須設定
名前:REST接続_AzureDocumentIntelligence ※「4.コネクションの設定」で設定したものを選択
パス:/documentintelligence/documentModels/prebuilt-invoice:analyze
クエリパラメーター:

名前
language ja
api-version 2024-11-30

リクエスト設定
データ入力元:●ファイル ※選択
ファイルパス:/Personal

image.png

レスポンス設定
データ形式: その他のデータ形式 ※選択

ヘッダ設定

リクエストヘッダ
名前
Ocp-Apim-Subscription-Key %{APIキー}
Content-Type application/octet-stream
レスポンスヘッダ
名前
Operation-Location
apim-request-id

変数 %{APIキー} は画面からマウス操作で設定可能です
image.png

10.変数Mapper

ここでは画像のIDをRESTコネクターから取得します。

右側のツールパレットから下記の順番で設定します
[基本] - [処理] - [変数代入]

[execute_http_post] から [variable] をドラッグ&ドロップで重ねて線で繋ぎます。
image.png

variableをダブルクリックして開くと画面が開きます
[apim-request-id] から [ID] をドラッグ&ドロップで重ねて線で繋ぎます。
image.png

完了したら × で閉じると設定が保存されます

ここまででが画像をAIに読み込ませる処理は完了です。

➁画像IDを使いGETしたデータをExcelファイルに書込む

ここからは、次回に実際にデータを取得する処理を作成します

ここまで読んでいただきありがとうございました。
それでは、また次回お楽しみに!:raised_hand:

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?