IT Hands-on Lab

小規模組織向けIT環境の構築・運用に役立つ情報を、ハンズオン形式で紹介しています。

【Microsoft Azure AI翻訳×Power Apps】ドキュメント翻訳アプリ4

Microsoft Azure AI 翻訳×PowerApps ドキュメント翻訳アプリ4

前の記事の続きになります。
Microsoft社が提供する、Azure AI 翻訳サービスとローコード開発ツール「Power Platform」のアプリ機能(Power Apps)を使用した、ドキュメント翻訳アプリの作成例を紹介します。
これにより、アプリからアップロードしたファイル(pdfやwordなど)のAIによる翻訳結果ファイルを取得できるようになります。
  • 操作環境:
    • OS:Windows 11
    • Webブラウザー:Edge
  • 使用プラン:
    • Power Apps:Microsoft 365 Business Premium(試用版)
    • Azure:従量課金制
    • Azure AI 翻訳:F0(フリー)

 

 

アプリ実装:フロー呼出し

作成画面の翻訳ボタンを選択し、左上のリストから[OnSelect]プロパティを選択し、以下のように設定します。

UpdateContext({ message:"ドキュメント翻訳が完了するまでお待ちください。" });
UpdateContext({ localResponse:'PowerAppV2-ドキュメント翻訳'.Run(
  User().Email,
  drpLanguage.SelectedText.Value,
  {file:{
    contentBytes:First(fileInput.Attachments).Value,
    name:First(fileInput.Attachments).Name
  }}
)
});
UpdateContext({ message:localResponse.'res-message'});

図表13-1 作成画面の翻訳ボタンの設定

図表13-1 作成画面の翻訳ボタンの設定

 

作成画面を表示した状態で上メニューの[挿入>ディスプレイ>HTMLテキスト]を選択します。
[リンクが表示されたら、クリックして・・・]の下に配置します。
左上のリストから[HintText]プロパティを選択し、以下のように設定します。

If(message="ドキュメント翻訳が完了しました。",
  "<A href=https://xxxxxx.sharepoint.com/sites/xxxxxx/Lists/Listx/Attachments/" & localResponse.'res-id' & "/" &
  EncodeUrl(
    LookUp([@ドキュメント翻訳], ID=Value(localResponse.'res-id')).file_name) &
    "?web=1>" & LookUp([@ドキュメント翻訳], ID=Value(localResponse.'res-id')).file_name & "</A>",
  ""
)

図表13-2 作成画面の翻訳後ファイルリンクの設定

図表13-2 作成画面の翻訳後ファイルリンクの設定

 

なお、図表13-2の[HintText]プロパティに記述したSharePointリストのURLは、Webブラウザーで一覧画面にアクセスしたときに確認できます

図表13-3 翻訳後ファイルリンクの確認方法

図表13-3 翻訳後ファイルリンクの確認方法

 

アプリが完成しました。

図表13-4 完成したアプリの概観

図表13-4 完成したアプリの概観

 

アプリの従量課金有効化

アプリの一覧画面で、アプリの三点マークを選択し、[設定]を選択します。
[従量課金制請求]をオンにし、[保存]を選択します。

図表14-1 アプリに対し従量課金請求を有効化

図表14-1 アプリに対し従量課金請求を有効化

 

こちらは参考です。
アプリから呼び出しているフローにおいて、HTTPやBLOB関連のプレミアムコネクタを使用しています。フローの一覧画面上、従量課金で使用できる旨のメッセージが表示されます。

*プレミアムコネクタは、試用期間中は無料で使用できますが、試用期間が満了すると、従量課金の対象となります

図表14-2 プレミアムコネクタ使用フローにおけるメッセージ

図表14-2 プレミアムコネクタ使用フローにおけるメッセージ

 

Azure 課金状況確認

Azureポータル画面の使用中のサブスクリプションにおいて、左メニューの[コスト管理>コスト分析]を選択すると、課金状況を確認できます。

図表15-1 AzurePortalのコスト分析画面

図表15-1 AzurePortalのコスト分析画面

 

左メニューの[コスト管理>予算]を選択し、[追加]を選択すると、設定した予算に応じてアラートを出す設定を行うことができます。

図表15-2 AzurePortalの予算設定へ

図表15-2 AzurePortalの予算設定へ

 

予算設定時の画面です。
この例では、毎月1,000円を予算とし、80%を超えたら管理者にアラートメールを送付するようにしています。

図表15-3 予算設定

図表15-3 予算設定

 

Azure コンテナーの状態確認

Azureポータル画面のストレージアカウント内のコンテナーにおいて、今回のアプリ使用時に格納した翻訳前後のドキュメントを確認できます。

図表16-1 AzurePortalのストレージアカウント内のコンテナー一覧

図表16-1 AzurePortalのストレージアカウント内のコンテナー一覧

 

それぞれのコンテナーにファイルが一覧表示され、個々のファイルを選択すればダウンロードもできます。

図表16-2 AzurePortalのストレージアカウント内の各コンテナーの状態

図表16-2 AzurePortalのストレージアカウント内の各コンテナーの状態

 

おわりに

AIドキュメント翻訳はいくつかクラウドサービスがありますが、アカウント単位の年払いで高額だったり、翻訳ドキュメント数のプラン上限を超えて使用できなかったりする場合があります。
使用頻度の予測が難しく少しずつ使ってみたいときに、今回のようなアプリを試しに導入するのも良いでしょう。とは言え従量課金ですので、ユーザーに安易に試用されて高額請求されることのないよう、注意が必要です。

 

また、今回使用したAzure AI 翻訳のドキュメント翻訳機能は、PDFやPowerPoint等のレイアウトがやや複雑なファイルでも、あまりレイアウトが崩れることなく翻訳をかけることができます(とある有名どころのクラウドサービスよりも崩れが少ない印象)。
しかし、文字やオブジェクトの重なりがある等、あまりレイアウトが複雑になると崩れは避けられないため、完璧は求めずに使用できると良いでしょう。

 

 

当ブログ内の連載記事

elmgrn.hatenablog.com

elmgrn.hatenablog.com

elmgrn.hatenablog.com