育てる is たのしい!毎日おしゃべりしたいLINEBOTの作り方
***
チャットボットはコア機能に絞り込むのがよいと言われるなか、”いもうとBOT”は10以上の機能を自然な会話の中に盛り込みました。その背景にあるねらいや仕組み、多機能を支えるアーキテクチャ、また、チャットボット開発そのもののエクスペリエンスなどについてお話したいと思います。
This document discusses using a Line access token in a Unity application. It shows code for a LiffController class that requests the token from an HTML page and stores it. The HTML page gets the token from session storage and passes it to the Unity app. Functions are also added to a library to close the Line window and request the token.
The document discusses guidelines for how companies should approach chatbots. It provides an overview of a development methodology for chatbots with 5 phases: 1) Introduction, 2) Requirements Definition, 3) Design, Development, and Testing, 4) Operation and Evaluation, 5) Development Methodology. For the Development Methodology section, it emphasizes the importance of an agile approach for chatbot development given the uncertainties involved. It provides tips to avoid potential issues with Scrum methodology in large enterprises.
The document provides an overview of key aspects for developing practical and high-speed LINE bots. It defines "practical level" as having multiple functions, multi-turn dialogue scenarios, high throughput, and mechanisms for continuous improvement. "High-speed" is defined as focusing developer understanding and responsiveness rather than recreating features. The document discusses techniques for multi-skill bots using intent/entity extraction and routing, and for multi-turn dialogue using state management across turns. It also addresses issues that can arise and solutions like topic-based routing and state lifecycle management.
18. Microsoft AzureLINE
App Services
形態素分析Web
BOTアプリ
App Services
エンドポイントWeb
MeCab-WS Wrapper
goo API
時刻正規化
キーワード抽出
docomo API
雑談
Google Cloud APIs
翻訳
OCR
ジオコーディング
Open Weather Map
天気予報
Twilio
電話発着信
App Services
Twitter監視ワーカーロール
Scheduler
メモ通知・アラーム
発信を定期実行
SQL Database
ユーザ情報、セッ
ション情報等を格納
Computer Vision API
顔認識、シーン認識
デバイス等
AzureのApp Serviceを実行環境として利用。外部APIはそれぞれ適材適所に選択
Watson Speech to Text
ボイスメモのテキスト化
いもうとの全体構成(~2018.3.24)
19. Microsoft AzureLINE
BOTアプリ
Virtual Machine
エンドポイントWeb
MeCab
goo API
時刻正規化
キーワード抽出
docomo API
雑談
Google Cloud APIs
翻訳
OCR
ジオコーディング
Open Weather Map
天気予報
Twilio
電話発着信
SQL Database
ユーザ情報、セッ
ション情報等を格納
Computer Vision API
顔認識、シーン認識
UbuntuのVirtual Machineに集約。開発・実行環境もPythonに移行
いもうとの全体構成(2018.3.24~)
Minette
Flask
Python3
ngrok
開発PC (Mac)
BOTアプリ
20. Classifier
Detect topic and delegate
to proper DialogService
DialogService(s)
Process application logic and
compose response messages
process_request() compose_response()classify()
Session / User .
Request Response
Automata ( Main logic of Minette )
Channel
LINE / Web /
Console etc
Channel
LINE / Web /
Console etc
Developers just implement these methods
• 話題を特定する”Classifier”と対話を処理する”DialogService”を実装
• セッション管理・ユーザー管理などの共通機能はフレームワーク側で対応
Minetteのアーキテクチャ