編集

次の方法で共有


Power Automate と AI Builder を使用したオブジェクトからのテキスト抽出

AI Builder
Azure AI Document Intelligence
Power Automate
Microsoft Power Platform
Azure Functions

この記事では、画像からテキストを抽出するためのソリューションを示します。これにより、SharePoint でインデックスを作成し、取得できるようになります。 AI Builder と Azure Form Recognizer を使用すると、トレーニング済みのモデルを使用して画像からテキストを抽出するように Power Automate ワークフローを構成できます。 ワークフローを構成したら、ドキュメントをすばやく検索して、図形やオブジェクトに挿入されたわかりやすいテキストを検索できます。

アーキテクチャ

AI を使用してオブジェクトからテキストを抽出するために AI Builder を使用するアーキテクチャの図。

このアーキテクチャの Visio ファイルをダウンロードします。

ワークフロー

  1. オブジェクト検出モデルは、ユーザーが指定したオブジェクトを認識するように AI Builder でトレーニングされています。
  2. 新しいドキュメントは、SharePoint ドキュメント ライブラリ、OneDrive、または Teams に格納されます。
  3. ドキュメントを取得すると、Power Automate イベントがトリガーされます。 このイベントでは、次が実行されます。
    1. AI Builder モデルを実行する。 AI Builder では、指定したオブジェクトのピクセル座標を含む JSON ファイルを返します。
    2. 完全な光学式文字認識 (OCR) スキャン用に Form Recognizer へドキュメントを送信する。 Form Recognizer では、スキャンされたテキストとテキストのピクセル座標を含む JSON ファイルを返します。
    3. Azure Functions で関数を実行する。 この関数では、AI Builder と Form Recognizer 出力ファイル内でピクセル座標を分析します。 検出されたオブジェクトがスキャンされたテキストと交差する場合、関数は JSON ファイル内の一致したデータを返します。
    4. メタデータまたは検出されたオブジェクトのテキストをドキュメント ライブラリに格納します。
  4. メタデータは、SharePoint 検索インデックスでキャプチャされます。
  5. ユーザーは、PnP Modern Search Web パーツを使用してメタデータを検索します。

コンポーネント

  • AI Builder は Power Platform の機能です。 AI Builder を使用して、画像内のオブジェクトを認識するようにモデルをトレーニングします。 また、AI Builder ではオブジェクト検出用の事前構築済みモデルも用意されています。
  • Form Recognizer では、機械学習モデルを使用して、ドキュメントからフォーム フィールド、テキスト、テーブルを抽出および分析します。
  • Power Automate は、Power Platform のコードを使わないまたはわずかなコードのみ使用する直感的なソリューションの一部です。 Power Automate は、アプリケーションやサービス全体にわたってアクションを自動化するオンライン ワークフロー サービスです。
  • Azure Functions は、イベント駆動のサーバーレス コンピューティング プラットフォームです。 Azure Functions は、クラウド内で必要に応じて大規模に実行されます。
  • PnP Modern Search ソリューションは、SharePoint Online の最新の Web パーツのセットです。 これらのツールを使用すると、非常に柔軟でパーソナライズされた検索ベースのエクスペリエンスを作成できます。

代替

  • Azure Cognitive Services では、ドキュメントの完全な OCR スキャンを実行できます。結果のメタデータは、SharePoint に格納されます。
  • SharePoint でドキュメントの OCR スキャンを実行し、コンテンツ出力をインデックスに追加して取得できます。 さまざまな検索手法を使用して、ドキュメント内の主要な情報を取得します。
  • ドキュメントを高速で処理する必要がある場合は、Azure Logic Apps を使用してコンポーネントを構成することを検討してください。 Azure Logic Apps によって、テナントの使用量制限に達するのを防ぎ、コスト効率にも優れています。 詳細については、Azure Logic Apps に関するページを参照してください。

シナリオの詳細

多くの場合、回路図や工業用の図には、テキストを含むオブジェクトがあります。 ドキュメントを手動でスキャンして関連するテキストを検索すると、手間も時間もかかってしまいます。

考えられるユース ケース

次のようなユース ケースがあります。

  • さまざまな種類のオブジェクトを含む、複雑なエンジニアリングの回路図。 このソリューションを使用すると、図上にある特定のコンポーネントをすばやく検索できます。 オブジェクトに埋め込まれたテキストにアクセスすると、調査、不足部分の表示、またはリコールと失敗に関する通知の検索に役立ちます。
  • 製造アセンブリ内のコンポーネントを示す工業用の図。 このソリューションによって、ポンプ、バルブ、自動スイッチ、その他のコンポーネントを迅速に識別します。 コンポーネントを特定すると、予防的なメンテナンス、危険なコンポーネントの分離、組織内のリスク管理の可視性向上に役立ちます。

考慮事項

以降の考慮事項には、ワークロードの品質向上に使用できる一連の基本原則である Azure "Well-Architected Framework" の要素が組み込まれています。 詳細については、「Microsoft Azure Well-Architected Framework」を参照してください。

ドキュメントを分析および処理する際は、次の点を考慮してください。

  • AI Builder は、トレーニング済みのモデルを使用する場合にのみ、正方形の座標をキャプチャできます。 三角形や円など、境界の外側にテキストがあるオブジェクトは、望ましくない不要な情報が含まれてしまう可能性があります。
  • Azure Functions から出力されるメタデータは、オブジェクトの境界の外側にテキストがあると、余分な文字が含まれる可能性があります。
  • AI Builder の作成プロセスでは、複数のオブジェクトにタグ付けできます。 結果として生成される Azure Functions の JSON ファイルには、すべてのオブジェクトの種類とテキストが含まれています。 アプリケーションでメタデータを使用し、結果を解析して処理する必要があります。

可用性

Azure では、データをレプリケートして、耐久性と高可用性を確保します。 計画済みと計画外の両方のイベント (一時的なハードウェア障害、ネットワークの停止または停電、自然災害など) からデータの冗長性を保護します。 同じデータ センター内、同じリージョン内の複数のゾーン データ センター間、または地理的に分離されたリージョン間でデータをレプリケートすることもできます。

スケーラビリティ

Azure Functions は、非常に拡張性が高い機能です。 このプラットフォームには、イベントがトリガーされた場合にオンデマンドで自動的にスケーリングする複数のプランが用意されています。 詳細については、「イベント ドリブン スケーリング」を参照してください。

Azure Functions のインスタンス数は最大 200 個に制限されています。 この制限を超えてスケーリングする場合は、複数のリージョンまたはアプリ プランを追加します。

セキュリティ

セキュリティは、重要なデータやシステムの意図的な攻撃や悪用に対する保証を提供します。 詳細については、「セキュリティの重要な要素の概要」を参照してください。

使用するコンポーネントと、メタデータを格納する SharePoint ドキュメント ライブラリの標準のセキュリティ プラクティスを使用します。

Form Recognizer は、コンプライアンス、プライバシー、セキュリティを念頭に置いて設計されています。 API キーを使用してアクセスを認証し、転送中および格納中にデータを暗号化し、API キーを使用して結果を返します。 詳細については、「Form Recognizer のデータ、プライバシー、およびセキュリティ」を参照してください。

AI Builder は、環境のセキュリティと Dataverse のセキュリティ ロールおよび権限に依存して、Power Apps 内の AI 機能へアクセスを許可します。 Dataverse では、権限が既定で設定されています。 システム管理者は、追加の操作を行うことなく、既定の組み込みセキュリティ ロールを使用できます。 詳細については、「セキュリティの概要」を参照してください。

コストの最適化

コストの最適化とは、不要な費用を削減し、運用効率を向上させる方法を検討することです。 詳しくは、コスト最適化の柱の概要に関する記事をご覧ください。

  • Power Automate では、購入して割り当てたライセンスが、処理するドキュメントの量に十分に対応している必要があります。 HTTP の Premium コネクタを追加して、Form Recognizer と Azure Functions を呼び出します。
  • 予想されるモデルの使用量に基づいて、AI Builder クレジットを購入します。
  • Azure 製品の構成とコストの見積もりにはAzure 料金計算ツールを使用してください。

このシナリオのデプロイ

このシナリオのデプロイの詳細については、「Power Automate Community Blog」および「Extract Text From Objects」GitHub リポジトリを参照してください。

共同作成者

この記事は、Microsoft によって保守されています。 当初の寄稿者は以下のとおりです。

プリンシパル作成者:

次のステップ

  • このソリューションに十分に適したドキュメントの種類について理解します。 一般的なドキュメントには、回路図、製造制御プロセス、および分離する必要がある多くの図形が含まれた図が含まれます。 詳細については、「Form Recognizer のモデル」を参照してください。
  • AI Builder が提供する機能に対する理解を深めます。 詳細については、「Power Automate の概要」にある「AI Builder」を参照してください。
  • メタデータを受信して処理できる情報アーキテクチャを定義します。 詳細については、「Cognitive Search スキル セット」を参照してください。
  • ソリューションのしくみと、それがユース ケースに適しているかどうかについては、「オブジェクトからテキストを抽出する 」を参照してください。