IBM watsonx プロンプト・ラボで granite-8b-japanese モデルに質問してオンやオフの JSON データを取得するメモです。
スマートライトさんと一緒に作ってる #MetaQuest 3 による xR からの声から行う設備制御(照明・エアコン)できた!
オンにしての声をテキストにして #IBMCloud Code Engine が橋渡しした https://t.co/GbG9KpPABe が文脈のオンオフを理解して JSON データを返答して xR が設備制御します!楽しい! pic.twitter.com/uEDb2TEMBt— Tanaka Seigo (@1ft_seabass) March 29, 2024
このような制御をするときに「オンにして」や「オフにして」のような言葉から JSON データを良い感じにもらうことを granite-8b-japanese モデルで頑張ってみる一例です。
試してみた
プロンプトラボにログインしてフリーテキストでの入力で試しました。
granite-8b-japanese モデル選択済みです。
いろいろ磨いてこのような内容となりました。
照明制御のためのオンオフを制御するため、以下の内容から JSON オブジェクトだけ生成してください。 - JSON オブジェクトは message 値 のみで構成されます - message 値は string 型です - message 値は on ・ off ・ ng の文字列のみです - 内容がオンの意味として認識したときに messeage 値は on になります。 - 内容がオフの意味として認識したときに messeage 値は off になります。 - 内容がオンかオフで認識されなかったときは messeage 値は ng になります。 以下が例です。 ---- 内容: オン JSON: {"message":"on"} ---- 内容: オフ JSON: {"message":"off"} ---- 内容: on JSON: {"message":"on"} ---- 内容: off JSON: {"message":"off"} ---- 内容: 今日はいい天気 JSON: {"message":"ng"} ---- 内容: やっほーーーー JSON: {"message":"ng"} ---- それでは、上記のルールで回答ください。 内容 : つけて JSON:
こちらを実行してみると
うまく {"message":"on"}
が返答されました。
英語で聞いても {"message":"off"}
がうまく認識したり。
関係ない呼びかけに {"message":"ng"}
が反応してくれたりします。
サッと使う分の強度としてはまずますといったところです。
これを実際に横にある API への出し方を参考にしながら、実際の仕組みに組み込んでいます。