Slide 1

Slide 1 text

20230419_XRミーティング 20230419 HoloLens2 と ChatGPT API と Node-RED で お手軽音声照明コントロールを実装してみて考えたこと ワンフットシーバス 田中正吾

Slide 2

Slide 2 text

私の話はスライドを後ほど共有します。 話す内容に注力いただいて大丈夫です!

Slide 3

Slide 3 text

田中正吾(たなかせいご) 屋号:ワンフットシーバス 2004年よりフリーランス。以後、FLASH制作を 中心にインタラクティブコンテンツを主に行い現 在に至る。 最近ではWEBフロントエンドをベースにしなが らも、情報とインターフェースが合わさるアプ ローチという視点でIoTやMixed Realityといった 技術も取り入れながら活動しています。

Slide 4

Slide 4 text

MR と IoT の間を ChatGPT が 良き接着剤になってつながったよという話 HoloLens2 ChatGPT API IoT (obniz)

Slide 5

Slide 5 text

HoloLens2 と ChatGPT API と Node-RED で お手軽音声照明コントロールをつくりました https://twitter.com/1ft_seabass/status/1635135055503949829

Slide 6

Slide 6 text

動画をお見せします! ほんとはリアルタイムデモしたかったんですが「諸事情」で、できなくなり、今は動画でなにとぞ! 「諸事情」は、後で説明します~。一部のリアルタイムデモは、後で無理くりやるかも。

Slide 7

Slide 7 text

HoloLens 2 には音声認識機能があり 音声を日本語テキストに変換できます 音声認識機能 (インターネット経由) 音声データ マイク入力 テキスト 日本語 テキスト

Slide 8

Slide 8 text

音声認識したテキストを ChatGPT API に伝えて IoT へ指示する JSON に変換され IoT が動作します 日本語 音声認識 (インターネット経由) IoT 指示 JSON 自前 Node-RED ChatGPT API HoloLens2 IoT

Slide 9

Slide 9 text

IoT 指示はこんな風に動作します obniz 側で IoT 指示 JSON に応じて動作します ● {"type":"on"} ○ 機能 : LED がつく ○ セリフ : 「おんにして」 ● {"type":"off"} ○ 機能 : LED が消える ○ セリフ : 「おふにして」 ● {"type": "blink", "interval": 1, "count": 3} ○ 機能 : 3 回点滅する ○ セリフ : 「3回点滅して」

Slide 10

Slide 10 text

ほかの IT の仕組みに馴染ませるために ChatGPT の万能さを JSON 返答するように調整 あえてルールを決め回答しやすく案内+ JSON データに加工して回答してもらう。人間同士の対話っぽい。 人間の言葉を理解 JSON データに 加工して回答 ルールを決めて 回答しやすく特化 ブラッシュアップ! ブラッシュアップ! 人間の言葉を理解 人間の言葉で回答 回答ジャンルは万能 (得手不得手はある) ■ChatGPT の基本キャラクター ■他のシステムに馴染ませる調整(今回)

Slide 11

Slide 11 text

ChatGPT API で JSON を返してくれるナレッジ LED への RGB 値を JSON データで返答する ChatGPT API の仕組みを Node-RED でブラッシュアップしたメモ https://www.1ft-seabass.jp/memo/2023/03/17/chatgpt-http-api-like-json-response-tips-with-node-red/

Slide 12

Slide 12 text

Node-RED のフローはこんな感じ HoloLens2 から来たテキストを /api/chatgpt で受け取って 質問内容を整理して ChatGPT に伝えて IoT 指示 JSON を obniz に伝えています

Slide 13

Slide 13 text

質問内容はこんな感じ {{payload.message}} に HoloLens2 からきた、実際に話した内容がきて ChatGPT に質問します

Slide 14

Slide 14 text

Node-RED では chatgpt で調べると すでに 3 つもあります API ベースでつながるものです

Slide 15

Slide 15 text

今回は node-red-contrib-simple-chatgpt を つかって手軽な感じでつなぎました 設定は API のトークン入れるだけ、あとは Web 版のように質問テキストを payload で流し込みます

Slide 16

Slide 16 text

作者のがおまるさんの記事がくわしいです API トークン入れるだけでサッと使えるところが素敵すぎる https://zenn.dev/gaomar/articles/e46cba8e489dfa

Slide 17

Slide 17 text

HoloLens 2 の話し言葉が IoT への指示に 上手く変換されててありがたい

Slide 18

Slide 18 text

やっぱり一部はリアルタイムデモする! HoloLens 2 部分は動かないんだけど、以降の Node-RED + ChatGPT + IoT(obniz) は見せたい!

Slide 19

Slide 19 text

ChatGPTの「人間の言葉を理解」が橋渡し! いままでは話し言葉の理解が形態素解析などでかなり手間がかかったけど ChatGPT の「人間の言葉を理解」がつよいのでシンプルに実装できました! 人間の言葉を理解 JSON データに 加工して回答 ルールを決めて 回答しやすく特化 ブラッシュアップ! ブラッシュアップ! IoT 制御 HoloLens2 音声認識

Slide 20

Slide 20 text

MR と IoT の間を ChatGPT が 良き接着剤になってつながったよという話 HoloLens2 ChatGPT API IoT (obniz)

Slide 21

Slide 21 text

諸事情 いま、ここが動かないみたいなんです。 XRMTG で聞けるので(トラブったのは悲しいが)ある意味、最適なタイミングなので聞きたい。 日本語 音声認識 (インターネット経由) IoT 指示 JSON 自前 Node-RED ChatGPT API HoloLens2 IoT

Slide 22

Slide 22 text

諸事情 いま Dictation まわりがうまくつながらないみたい・・・! 一切、ソースは変えてないんです。おかしい。エラー内容も珍しめ。

Slide 23

Slide 23 text

諸事情 なんか同じ状況の方もいて、一旦は様子見な状況!知っている人いたら教えてください~。 MRTK を最新にするとエンドポイント変わるとかかなー?よくわかってない。

Slide 24

Slide 24 text

➔ HoloLens2 で音声認識したテキストを ChatGPT API に伝 えてIoT へ指示する JSON に変換され IoT が動かせた ➔ ほかの IT の仕組みに馴染ませるために ChatGPT の万能 さを JSON 返答するように調整してうまくつないだ ➔ ChatGPTの「人間の言葉を理解」が橋渡し! ➔ MR と IoT の間を ChatGPT が良き接着剤になってつな がったよ!可能性を感じる!たのしい! まとめ