2
2

LINEで簡単! 会議前に1人でも会議っぽいシミュレーションができる!?

Posted at

何も決まらないぞ!

どうも、アラ還サラリーマンです。
みなさん、会社で会議多くないですか?
そのほとんどは連絡事項だけとか、情報共有だけの集まりです。
何かを決めなければいけない会議も、いつの間にか世間話になっていたり・・・。
こんなんじゃいか~ん! 何か決めるための会議だよね!
というわけで、会議前に1人でも会議っぽいシミュレーションができるLINE Botをつくってみました。

今回使用したツール

LINE Developers
LINE Botを使用しました。
ChatGPT API
会議の相手をしてくれます。
Googleスプレッドシート
会議相手との応答内容の蓄積や返答の加工に使用しました。
Make
LINE Bot、Googleスプレッドシート、ChatGPT APIを操作します。

実際にできた動画がこちら!

西遊記でおなじみの、孫悟空・沙悟浄・猪八戒が、
ある時はとぼけて、またある時はまじめに会議の相手をしてくれます。
 
操作方法

  • 『○○の会議を始めよう!』で始めてください。
  • 孫悟空・沙悟浄・猪八戒がお相手します。
  • リッチメニュー(デフォルトでは隠しています)の【新しい会議を始める】で、それまでの会議内容を消去します。

ただし、ChatGPT APIを組み込んだLINE Botは、前の会話の内容はすっかり忘れるとのこと。
なので忘れないような仕掛けが必要になります。

下記の記事を参考にさせていただきました。とてもわかりやすかったです!

Googleスプレッドシートがこちら

ファイル名:GPTまとめ

  • シート名:返答
    スクリーンショット 2024-08-24 165722.png
    ChatGPT APIからの返答がA1に入力されます。
    B1には =FLATTEN(SPLIT(A1,char(10))) という関数を予め入力しておきます。
    A1の値を改行で分割してくれます! しかもB2、B3にも値が反映します!
    Excelにこんな関数あったっけ?(知らないの、自分だけ?)
    スプレッドシートすごい!
     
  • シート名:応答
    スクリーンショット 2024-08-24 165844.png
    A、B列にChatGPT APIとの会話が記録されます。

Makeの全体のシナリオがこちら

image.png

条件分岐
image.png
リッチメニュー【新しい会議を始める】で送られるテキストと一致するかしないかで処理を分けています。

会議中の処理
image.png
ChatGPT APIに以前の会話内容を渡す下準備。
スプレッドシートのシート名:応答の以前の会話内容を取得しています。
参考記事から引用しました。
 
image.png
Message 1とMessage 2に上記で取得した会話内容を渡しています。
Message 3には孫悟空・沙悟浄・猪八戒に返答させるプロンプトを入れています。
 
image.png
スプレッドシートのシート名:返答のA1にChatGPT APIからの返答を入力。
その後、A1の値を分割したB1、B2、B3の値をそれぞれ取得しています。
 
image.png
LINEの応答処理で、孫悟空・沙悟浄・猪八戒のそれぞれの返答を入れています。
その後、スプレッドシートのシート名:応答に新しい会話を追加しています。

リッチメニューからの処理
image.png
スプレッドシートのシート名:応答に記録された会話内容を消去。
スプレッドシートのシート名:返答のA1の値を消去。
その後、LINEで消去したことを通知します。

またまた配列絡みで一苦労・・・

ChatGPT APIからは、孫悟空・沙悟浄・猪八戒の返答がひとかたまりで返されます。
最初はそれをそのまま返答させていましたが、孫悟空・沙悟浄・猪八戒がそれぞれ返答した方がおもしろいかなと思いました。
しかし、ひとかたまりの返答を改行で分割して配列にして、それぞれの返答を Send a Reply Messageモジュール に渡そうと試みましたがうまくいかず・・・。
そんな時、スプレッドシートで FLATTEN関数と SPLIT関数を組み合わせる方法をネットで発見しました!
こっちの方が簡単です! あの悩んだ時間は何だったのか・・・。

結構まじめに答えるぞ! 感動!

今回、ChatGPT APIを組み込んだLINE Botを初めてつくってみました。
孫悟空・沙悟浄・猪八戒もそれぞれ思っていたよりもいい返答をしてくれます。
ただ、たまに猪八戒だけが訛るときがあります(笑)
動画の中にもありましたが、『あれ、何の会議だったっけ?』と質問しても、ちゃんと以前の会話を認識して返答してくれました。

お気づきの方もいらっしゃるかもしれませんが、もう1つのリッチメニューは工事中になっています。機能を与えていません。
今後は会議の議事録を出力する機能を割り振ってみたいですね。

ではでは、今日はこのへんで! 下記の言葉で締めたいと存じます。

・・・世の中には会議のための会議というものが存在する・・・
(某天下の国営放送局でやっていたコント番組のネタをオマージュしました)

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2