Dify - LINE Bot連携 考え方と実用テクニック | うえぞうさん @uezochan
Summary
TLDR講演者は、体調不良のためリモートで参加し、LINEボットの連携方法について説明しました。彼は、AIアシスタント開発に関わっており、LINEボットの仕組みやバックエンド技術、特にDFを使用した連携のメリットを詳しく紹介しました。具体的には、セッション管理やユーザー入力の処理、リッチメッセージの作成方法について話しました。さらに、ボット開発を効率的に進めるためのテクニックも共有し、関連するライブラリがGitHubで公開されていることを強調しました。最終的に、迅速な開発環境を活用する利点を述べました。
Takeaways
- 😀 ウナ県の蔵氏が体調不良のためリモートでプレゼンを行った。
- 🤖 本日のプレゼンテーマは、LINEボットの連携と開発テクニックについて。
- 💻 蔵氏はAIアシスタントや妹ボット2.0の開発に携わっており、最近一般公開された。
- 🚀 DF(Dialogflow)をバックエンドに使用したLINEボットの仕組みが紹介された。
- 🧠 DFのメリットとして、会話フローの制御やスキルの呼び出しが簡単にでき、管理がしやすい点が挙げられた。
- ⚡ DFを使用することで、リリースまでのスピードが非常に早い。
- 🛠️ セッション管理やユーザーIDとカンバセーションIDの紐付けが重要なポイント。
- 📊 テキスト、画像、位置情報、スタンプなどのユーザー入力への対応方法が説明された。
- 📱 リッチなオートメッセージをLINEボットで作る際の実装例が紹介された。
- 📂 DFを活用することで、LINEボット開発が効率化され、より価値のあるボットを短期間で提供できる。
Q & A
今回のプレゼンターは誰ですか?
-ウナ県の蔵さんです。
プレゼンターは当初どのように発表する予定だったのですか?
-本来は会場での発表を予定していましたが、体調を崩したためリモートでの発表となりました。
今回のプレゼンの主なテーマは何ですか?
-LINEボットの連携の仕組みや、連携させるための考え方やテクニックについてです。
最近リリースされたボットの名前は何ですか?
-妹ボット2.0という名前でリリースされました。
このプレゼンで使われたバックエンドの技術は何ですか?
-DF(Dialogflow)をバックエンドに使用しています。
LINEボットとDFの連携で重要なポイントは何ですか?
-LINEユーザーのIDとDFの会話スレッドを紐付けて管理することが重要です。
DF連携のメリットは何ですか?
-フロー制御やスキル呼び出し、オートメッセージの組み立てが簡単にでき、全体をオールインワンで管理できる点です。
LINEボットで扱えるユーザー入力にはどのようなものがありますか?
-テキスト、画像、位置情報、スタンプなどの入力があり、それらに応じた対応が可能です。
スタンプが送られた場合、どのように処理していますか?
-スタンプの情報をテキスト化し、どのスタンプが送られたかを記録しています。
ビデオ通話との連携に関する説明はどうなっていますか?
-時間がなく詳細には触れられませんでしたが、資料が共有されるとのことです。
Outlines
👋 リモートでのプレゼンテーション開始
スピーカーは体調不良によりリモートでの発表を開始し、LINEボットの連携について話す予定であると述べている。自己紹介では、AIアシスタントの開発や著書の一般公開に触れ、最近リリースした「妹ボット2.0」について紹介。特にAIアシスタントを使った通話やスキル実行のデモを行い、文脈の理解や会話の続きが自然にできる機能について説明している。
📊 DF連携のメリットと運用の利便性
DF(Dialogflow)との連携のメリットとして、会話フローやスキルの呼び出しが簡単にできる点を強調。さらに、開発から運用までのモニタリング機能が充実しており、リリースまでのスピードも速いと述べている。LINEとDFの間にインテグレーション層を設けることで、処理の複雑さを緩和できるとし、DFの柔軟性を活かしたアプローチが有効であると説明。
⚙️ LINEボットのセッション管理とメッセージ対応
LINEユーザーのIDとDFの会話IDを紐づける必要があり、これをインテグレーション層で管理することで、文脈のつながりを維持する手法を紹介。また、テキストや画像、位置情報、スタンプなど、ユーザーのさまざまな入力に対する対応方法について詳述。特にスタンプのデータを解析してテキストで処理する方法や、オートメッセージの生成と組み立てについても説明している。
Mindmap
Keywords
💡LINEボット
💡DF連携
💡セッション管理
💡インテグレーション層
💡オートメッセージ
💡タイムtoマーケット
💡モニタリング
💡カンバセーションID
💡フロー制御
💡ユーザーID
Highlights
講演者は、体調不良によりリモートで発表することを説明。
LINEボットの連携仕組みや実際の開発技術について紹介。
AIアシスタントの開発に携わっており、最近妹ボット2.0をリリース。
妹ボットはバックエンドにDialogflowを使用している。
LINEボットで通話機能が可能で、文脈に基づいた応答を提供。
妹ボットの性格や機能をユーザーがカスタマイズできるスライダー機能。
リマインダー機能や天気情報など、ボットに多彩なスキルを組み込む。
Dialogflowの連携により、迅速にボットを開発し、1ヶ月でリリース。
LINEボットとDialogflowの連携を効率化する中間層を構築する重要性。
Dialogflowのフローベースと非フローベースの柔軟性を活用。
セッション管理により、LINEユーザーIDとDialogflowの会話IDを紐付ける必要性。
ユーザーからの位置情報やスタンプをテキストに変換し、適切に処理。
リッチメッセージ(ボタンや画像付きメッセージ)を自動で生成する手法。
初回の会話時に入力引数を設定し、後から更新できないため注意が必要。
GitHubにライブラリーを公開しており、他の開発者が簡単にボットを作れる。
Transcripts
それでは始めさせていただきます皆さん
こんにちはえっとウナ県の蔵と申します
よろしくお願いします本当はですねえっと
本日あの会場でお話する予定だったんです
けどもちょっと体調崩しちゃってあの映し
ちゃうといけないんでえっと今日はあの
リモートでお話しさせていただきます
よろしくお願いしますでえっと今日お話し
させていただく内容なんですけれどもあの
とあとあのLINEボットのですねあの
連携の仕組みあの連携させるためのあのま
考え方とかあと実際にあのやっていくため
のテクニックとかそういったところをご
紹介させていただきますよろしくお願いし
ますでえっと時間がないので自己紹介は
ちょっと本当に一言でえっと色々書いてる
んですけもあの最近はですねあの先ほど
石川さんのあのプレゼンの中でもあの
取り上げていただいてあのすごく嬉しかっ
たんですけどもあのAIアシスタントの
開発とかを最近は色々やっていますあと
生生周りだと
あのまちょっと本も書いたりとかもしてる
んであのご関心ある方ですね是非見て
いただければと思い
ます先ほどそうあのねえっと一般公開して
ないという風におっしゃってあのくださっ
たんですけども実はですねあの最近あの
一般公開をしましたえっと妹ボット2.0
という形であのリリースしましてですね
ライブドアニュースさんくまさんの記事で
あのライブアさんにあの取り上げて
いただいたりですとかあおさんのですね
なんかYouTubeでも取り上げて
いただいたりとかちょっとですねあの話題
にしていただいてあのすごく嬉しかった
感じですでえっとこちらのあのボトがです
ね両方ともあのバックエンドにあのDFを
使わせていただいてるものになりますえ
どんなものかというとですね左側から見て
いただきたいんですけれどもまわるこ妹
ちゃんとおしりができるというような
そんなあのライモッドになっていてここ
まではま普通だなって感じだと思うんです
けれども先ほどですねご紹介いただいた
ような形で通話しようとか言うと通話の
ためのメニューが出てきてでその後ですね
通話が繋がりますでさっきですねあのお腹
空いたみたいなことを言ってたんですよで
それで通に入ってきてこのです急に
呼び出すんだから何か用事で回るの
ほ
でさっきの話の続きかこあお腹が空い
たって言ってたわね何が食べたいのはい
こんな感じでですねちゃんと文脈が繋がっ
た形であでこの後LINEに戻ってもまた
あの文繋がってるんですけどもあのこんな
ような仕掛けになっていたりとかあと
真ん中ですねあのいろんなイモトらしい
設定ができるんですねこのあの1番下の方
こうツンと出るよですねこのスライダーで
あの性格を選べたりですとかあと気前か実
mijかを切り替えたりあのこれ課金が
必要なんですけどまそんなことができたり
しますしあといろんな機能ですねあの
リマインダーがあったりとかあとえっと
天気だったりま色々あのそういったスキル
があのスキルを載ってますでえっとここを
あの全部DFでバックエンド全部じゃない
んですけどもあのDFでバックエンドやり
ましたので今日はですねここで使ったあの
辻買ったようなノハをあのシェアしたいと
思ってますで本日お話しする内容ですね
あのDF連携のメリットということでここ
はあの一般的なお話なんでさらとで2番目
でどんな仕掛けあのオーバービューとして
どういう風にしてるのかで3番目で具体的
にこの辺ポイントですよっていう論点を4
つで最後時間あればあのさっみたいなその
あのビデオ通話との連携の仕方みたいな
ところを話しさせていただきますえまず
DF連携のメリットっていうところなん
ですけどもあのまずですねえっとイMOD
作ろうと思ったら作らなければいけない
ようなあのお話のフロー制御だったりとか
スキルの呼び出しだったりとか
キャラクターを意識したあのオート
メッセージの組み立てとかなんかこういっ
たものがもう全部DFでできるんでまず
そこのあのかれっていうところがすごく
あのいいなっていうところとあとあの作っ
たりそれ動かしたりとかあとそれ管理し
たりとかこんなのがですね全部オール1で
オールインワで提供されてるんでやっぱり
もうこれだけでいいじゃんみたいなですね
あのそんな環境が揃ってますとでえっと
特にですねあの嬉しいのがやっぱり
モニタリング周りですねどれくらい使われ
てるのかとかどんな会話をあのなあの会話
フローをちゃんとできてるのかとかですね
ちゃんとスキルは呼び出されてるのかとか
あのこういったところもあのちゃんと全部
見れますので運用フェーズ入ってからも
開発中も非常にあのやりやすいということ
ででやっぱりタイムtoマーケットですね
こんなの作りたいって思ってからあの実際
届けるまでのスピードがものすごく早くな
るっていうのが特徴だと思ってますモト
ボッもですねもうついてからあの1ヶ月
かからずにあのリリースして
ますでそのアーキテクチャーの今ざっくり
概要ですねLINEボットってその
LINEからあのユーザーが送ってきた
メッセージをWebフックの形であの
サーバーに送ってくるんですけれどもあの
dfi直接でそれ受けようと思ってもその
webbookのあのデータをパスするの
があの多分無理なんじゃないかなって思う
のとあと逆にですねあのオートメッセージ
組み立てた後にそれをもう1回LINEに
送るていのがこれもなんか結構難しそう
あと複数並べて処理したりとかは結構大変
そうなのでま自重に耐えないかもしれない
なとかまいろんな課題がありますという
ことでまここはですねあの中間層の受け
ますインテグレーション層を設けてここで
LINEとDFの間のマッピングという
ところをまやってやる層を設けるのが
すごくあの大切かなという風に思って
ますでえっと3点目に書いてあるところな
んですけどもあのeifご存知の方も
ごめんなさいあのあまり説明できてなくて
ご存知の方もご存知でない方も結構
いらっしゃるかもしれないんですけども
いくつかあのタイプがあって特にあの
先ほどあったようなこのフローですね画面
左側のようなノートペースのフローを使っ
てあの作るタイプとあのそうじゃない
タイプがあのあるんですけれどもそうじゃ
ないタイプの方があのフローが縛られない
ので割と柔軟性が高くて私は割とそれが
あの相性がいいかなと思ってますていうの
が3点目のお話
ですですごくちょっとごめんなさいね時間
がなくてあの書論をちょっとお話し
ますでえっと今日4つお話をしますまず1
つ目はですねセッション管理ということで
あのこれLINEボットってえっと
ユーザーが誰だよっていう情報送ってくる
んですけどもこれそのままDFに送っても
そんなの知らんわなっていう話になると
思ってますでえっと何も対策しないでその
ままやるとあのDFの中でえっと1つの
会話スレッドというのがあのカマ
セーションIDというのに紐付きてあの
作られるんですけれどもあるいはこれは全
ユーザーで共有されてしまうか初度新しい
会話スレットが起きてあの文脈が繋がらな
いってことになってしまうということで
このLINEのユーザーIDとえっと
dfyの会話のIDというのもこれを
紐付けてやる必要があのありますという
ことでえっとその紐付けテーブルを
インテグレスで持ってあのその役割を
果たしていくでもしあのここに乗ってない
ユーザーからのリクエストであればefi
の方であの新しくあの会話スレット起こし
でそのカンバセーションIDをちょっとず
乗ってないんですけども
インテグレーション層に控えといてあのご
採用できるようにするとかまこんな対応が
あのこれは必ず多分必要になってくる
ところなので覚えといていただければ
と思います2つ面としてはですね要求あの
いろんなメッセージユーザー入力への対応
というところでえっとここ4つ上げてるん
ですけれども例えばテキストですですね
テキストはもうこのままテキストで送れば
オッケーというところで画像も同じですね
画像もあの普通に画像の添付ファイルとし
て送ればいいんですけれどもあと他に位置
情報とかあとスタンプとかですねこういう
のが送られてきた時にどうするのかという
ところなんですけども私の場合はあの
こんな形であの位情報であればユーザーが
こんな情報送ってきたよということで住所
井戸軽度みたいなものを過剰書きで送っ
たりとかでとにかくテキストに直して対応
しましたとでスタンプもユーザーがこんな
スタンプを送ってきたよっていう情報と
あとスタンプってあの実はタ情報がついて
いてどんなスタンプかっていうのが分かる
んですねまこれの場合だとワハローHow
areyouですかねこういったものを
送ってきたよっていうのをテキストでる
ことによって処理させていますあとオート
メッセージですねLINEてそのボタンが
ついてたりとかあ画像がついてたりとか
いろんなリッチなあのオトメッセージ
組めるんですけれどもこれどう作るのかと
いう話ですねで基本的にはDFからのオト
メッセージを受け取ってそれの中のですね
中身を見てあの判断してます例えばこの
赤枠の中を見てみるとなんかどうも
リマインダーのアイテムを作ったらしいと
いうことがあの分かりますということで
この情報をとえてきてその情報を使って
えっとコードデースで今回の場はボタン
付きとテンプレートメッセージというのを
あの作っているというよなですねあの
こんなことをやってい
ますで
えっとスタンプですねスタンプの場合は
これもいろんなやり方あると思うんです
けど私の場合はですねWiFiの中の
えっとスタンプを送りたい場合はこういう
形でタグを入れてねっていうのを入れとい
てもし応答にこのタグが入ってたら画像
生成して返すみたいなこんなやり方してみ
ます
で最後入力引数ですねあのさっき
リマインダーの例出したんですけど誰の
リマインドあのリマインダーなのかって
いうのを教えてあげないとあのツールが
呼べないのであのその情報
をあげる必要がありますねあのインいう引
がDにありますのでここにそういった
ユーザーを位置に特定する情報というのを
埋め込んでやるまこんなことで対応すると
いいんじゃないかと思いますで気をつけ
なければいけないのがですねこれ会話
始める初回だけしか送れないので後で更新
もできないのでここは必ず初回に送るよう
にしましょうというのはおつけるべき
ポイントですでもうごめんなさい時間が
なくなっちゃったえっとあの最初見せて
いただいたビデオ通話との文脈の連携方式
なんですけどもこれはですねのど資料共有
しますのでそれであのじっくり見て
いただければと思いますすいませんで最後
まとめなんですけれどもえっともう番した
だけですねえっととにかくDY使うとあの
アイデアを形にするのはすごく早くなるの
であのどう作ろうかなじゃなくてどんな
ボットを作るかとかLLINEボットで
どんな価値を提供しようかなとかそういっ
たところにすごく集中できるようになるの
で皆さん是非使っていただければという風
に思いますで今日ですねお話したあの
テクニックみたいなところはあのGハブの
方に私あのライブラリーを公開してますの
であのこれ使っていただいてもあのすごく
簡単に作れますしあの部品取りみたいな形
でやり方見ていただければなっていう風に
思いますはいごめんなさいちょっと時間
すぎちゃってごめんなさいあの私から愛情
ですありがとうございましたみさん
ありがとうございました
[拍手]
Weitere ähnliche Videos ansehen
Clojure in production: what do we use in real-world services?
OpenAIのGPTsより凄い!無料で使えるDifyを徹底解説してみた
Tile-Based Map Generation using Wave Function Collapse in 'Caves of Qud'
モデルベースデザインで次世代のロボット・自動化設備開発を加速! ~モデルベースの基礎からAI活用、PLC連携まで~
生成AIで切り開く、新たなビジネス変革~活用の取り組みと、変革をもたらすビジネスアプリケーション事例~ (TOSHIBA OPEN SESSIONS 2023 テーマセッション)
【初心者向け】GitHubでチーム開発する方法を基礎から解説!【Git入門講座#4】
5.0 / 5 (0 votes)