見出し画像

LINE→Make→Difyで会話を連続で続ける方法

前提

Line→Make→Difyを使用してChatBotを作成していているが、
会話が単発で切れてしまいそれを解消する為に
いろいろ試してみてわかったので備忘として・・・

Line→Make→Difyの繋がりや大枠の作成に関しては別で上げる予定なので今回はピンポイントに連続で会話を続ける為の方法のみになります
別で上げたらリンクを付けます

LINEの設定

 すでにMakeでLINEとの間にWebhookでの接続ができてれば特にやることはありません

Makeの設定

 LINEのユーザーIDとDifyの会話ID(conversation_id)を繋げることで
同一のセッションでの会話が可能になります
GSSにLINEのユーザーIDと会話ID(conversation_id)を記録しました。
 1度目は会話ID(conversation_id)が登録されていないので
会話ID(conversation_id)は空文字状態でDifyのAPIリクエストを行い
Difyのレスポンスから会話ID(conversation_id)を取得して
GSSにLINEのユーザーIDと会話ID(conversation_id)を記録します
 2度目以降はLINEのユーザーIDを使ってGSSを検索し取得できた
会話ID(conversation_id)を使ってDifyのAPIリクエストを行うことで
1度目の会話の続きで会話が可能になります。

Difyの設定

 LLMのブロックに関して、メモリ機能をonにしておきます
そのうえでUSER部分にsys.queryを設定します。
これで連続した会話が可能になります。
ただ1点理解ができていない部分があります。
参考にしたサイト等では赤枠にsys.queryなくてもうまくいっていたのですが、なぜか私の環境では、赤枠の方にもsys.queryを設定しないと、連続した会話をうまく解釈されないので、この点わかる方いらっしゃればコメントで教えてもらえればと思います。


いいなと思ったら応援しよう!