2023年8月1日火曜日

生成AIブロックがMIT App Inventorで使えるようになった(2)

 前報の続編です。(2023-08-03、GUIにもこだわり、全面改訂しました!

 例えば、スライダーが3本あり、そのつまみを音声で動かしたいします。結論から言うと、

"スライダーの2番を0度に、3番を45度に、1番を90度に設定せよ。"

などと発話するだけでできました。音声から生成されたテキストから、数値だけを取り出すのはちょっと面倒ですね。英語と違って、空白の区切りが無いこともその一因です。まあ、正規表現を利用したExtesion(これに関してはこちらをご参照)などを使う手もありますが...

 ここでは、本来、アプリの中で実施すべきこの処理を、ChatGPTにやらせています!具体的には、 次の図をご覧ください。「指示文」がChatBotに対する命令です。そして、発話文はそのデータとなります。結果として、この発話例からは、3行のコンマ区切り数値が得られています。そうなれば、App Inventorの「List from CSV Table」ブロックが使えて、スライダーの値の設定はすぐにできます。

 Speech2TextやChatGPTの特性を踏まえて使う必要があります。ちょっとした発話の違いで、Speech2Textの出力テキストは変わります。このアプリは、発話後は自動的に実行結果を出しますが、Speech2textの結果を確認・修正した後にChatGPTへ進むように変更しても良いでしょう。
 また、同一テキストに対して、ChatGPTはいつも同じ結果を出すとは限りませんので、ここにも注意が必要です。深層学習などの仕組みには確率的要素が多分に含まれているからです。場合によっては、「指示文」を調整する必要があるでしょう。例えば、こんな感じ。

-----------------------------------
 なお、この例題は、既に報告した「光子の偏光アプリ」での、3枚の偏光板の角度を音声で自由に変更するために検討したものです。元の画像を再掲します。


0 件のコメント:

コメントを投稿