Power Platform: Power Apps Ideasの概要説明

MSテクノロジー

2021年マイクロソフトはPower Apps Ideasのパブリックプレビューを発表しました。
Power Apps Ideasの機能により、Power Appsの作成者は、AIによってPower Fxの数式をコードレスで記述できるようになります。
今回は、その実装の原理をご紹介します。

Power Apps Ideas紹介

まずは、「Power Apps Ideas」のおさらいから説明します。

Power Appsでアプリを作成する時、コードを書いていて、実現したいことは分かっていても、それに対応する計算式の書き方が分からないという状況は、皆さんもあるのではないでしょうか。

正直なところ、全部を暗記しているわけではないので、上記の場面では、ほぼGoogle検索で計算式を調べていました。

調べていくうちに、自分が使った数式はきっと暗記しているだろうと思えます。ただ、使用頻度の低い数式が多いので、調べないといけない場面も多数存在します。

Power Apps Ideasでは、自然言語(英語など)で関数を記述すると、AIが自然言語を理解してPower Fxの計算式に変換してくれるようになりました。

例えば、下の画像では、データをノートパソコンだけ表示するようにフィルタリングし、さらに価格順で並べ替えたい。それなら、Ideasに「”show if device type is laptop and sort by price high tolow”」と入力すればいいのです。すると、AIが自動的に対応するPower Fxの数式を書き出し、フィルタリングやソートを行います。

このように、Power Apps Ideasの機能により、開発スキル持ってない一般ユーザーでも、これまで頭を悩ませていたプログラミングを自然言語で書くことで、主体的に実装まで取り組むことができるようになりました。

Power Apps Ideas実装ロジック

Power Apps Ideasで何ができるかを見ていただいたら、次は後ろの実装ロジックにも見ていきましょう。

Power Apps Ideasに支えるのは、GPT-3(Generative Pre-trained Transformer 3)という自然言語ディープラーニングモデルです。GPT-3自体もAzure Open APIサービスの一部として提供されております。

GPT-3に加えて、Power Platform AI Servicesも重要なコンポーネントとなります。GPT-3などのAI機能を活用したいPower Platform製品に、Azureとのインターフェースとなるフレームワークを提供しています。

複雑な技術を簡単に言い換えると、自然言語からPower Fx数式言語までの変換処理を実現する仕組みです。

技術者ではありませんが、機能コンサルタントの立場で簡潔に変換処理のプロセスを説明します。

 1、前処理を行う

  Power Apps Ideasは、我々入力した自然言語処理とPower AppsのコンテキストをPower Platform AI Servicesに送信し、前処理を行います。

  前処理の第一段階として、MicrosoftはAIのルールに基づき、暴力的な言葉や下品な言葉など、コンプライアンスに反する内容が含まれていないことを確認するコンテンツフィルタリングが行われます。

  コンテンツをフィルタリングしたら、次は無関係なコンテンツを削除し、基本情報のみを残す。 例えば、GPT-3は名前TextSearchBox1かMyTextBoxかを気にせず、データ型だけを気にするので、無関係なコンテンツが削除されると、次のように表示されます。

 2、GPT – 3モデルを呼び出す

  前処理操作が完了すると、GPT-3モデルを呼び出すために、Azure Open AIにリクエストが送られ、GPT-3モデルを呼び出して結果出力の処理を行います。

  しかし、この時点で変換されたのは言語だけで、次のステップは、自然言語をクエリでPower Fxの数式に変換することです。

 3、Power Fxの数式として変換・アウトプット

  Microsoftは実際にGPT-3モデルをPower Fx用にカスタマイズしました。自然言語のテキスト例とそれに対応する数式のデータセットをコンパイルし、事例を利用してPower Fxの構文を理解して認識するモデルを訓練させます。

  モデルによる出力結果を得ると、Microsoftはさらにコンテンツをフィルタリングして非準拠の単語を除外し、生成されたPower Fxコードをチェックして、括弧の欠落など、発生しうる小さな問題を修正します。

 4、文法の間違いを再度チェック

  出力結果となる数式がアウトプットしたら、Microsoftは文法的な間違いがないかチェックし、各数式の自然言語の説明を生成します。これは私たち自身の入力した自然言語のコピーではなく、自然言語と数式に基づいた説明文です。説明を生成する目的は、Power Fxの数式の意味を理解できるようにして、それによって学習を支援することになります。

 上記Step1からStep4を経て、生成されたPower Fxの数式と説明文がPower Appsの画面に表示されます。ユーザーは「Apply」をクリックするだけで生成された数式を使用することができます。

まとめ

Power Apps Ideasの裏側を覗いてみると、この機能の強さと実力は把握できます。コードを見るのが怖いというゼロベースのビジネスパーソンに対して、最適なソリューションと言っても過言ではありません。

ただ、少なくとも暫くの間は英語だけ対応するとなりますので、Power Fxの公式と英語の学びが必要ですね。

コメント

タイトルとURLをコピーしました