4. USE CASE
▌A company uses a kintone app to manage questions which
asked from customer via a Facebook Page
Company X
(kintone app)
Facebook Page
f
Ask a question
Customer
5. USE CASE
▌The customers wait for an answer from support staff
● 5 minutes ?
● 10 minutes ?
● 1 hour ?
● … even more ?
▌SOLUTION
Chatbot for kintone Apps will reply to customer in real-time
9. Sending message to Facebook Page1
Core
Facebook
Page
NLP
Customer asks: ”What is a kintone app?”
10. Forwarding message to Core component2
CoreFacebook
Page
NLP
Facebook
App
1
2
1. Incoming message of Facebook Page is triggered by Facebook App
2. Facebook App send message to Core component via the a Webhook
14. Searching FAQ data6
CoreFacebook
Page
NLP
Facebook
App
● Using Rest API of kintone to search
questions
● Search condition:
like “is” or like “kintone” or like “app”
● Search result
○ “What is kintone?”
○ “What is a kintone space?”
○ “What is a kintone app?”
○ “How does kintone works?”
○ ...
15. Facebook
App
CoreFacebook
Page
NLP
Evaluating result7
● Receiving result from kintone
● Scoring questions
○ “What is kintone?”
○ “What is a kintone space?”
○ “What is a kintone app?”
○ “How does kintone works?”
○ …
● Returning the corresponding answer
having highest score question
~2
~2
~1
~3
18. AI (Artificial Intelligence) for Chatbot
▌Currently
● naive AI
▌Future works
● Apply more AI algorithms
● Machine Learning
19. Technologies
▌Facebook Messenger
● Apply for other platforms
▌Core component (Built on Heroku)
● Build on our own server
● Use other PaaS such as AWS
▌NLP component (Google Cloud Natural Language API)
● Try other solutions: Apache OpenNLP
この度、ベトナムが持ってきたテーマは、kintone対応のkintone対応のkintone 対応のFacebook Messenger chatbotです。
本テーマの調査者はファンアインさんですが、フイさんが代わりに発表します。
Chủ đề này tên là Chatbot for kintone apps on Facebook messenger, do Phan Anh team Garoon thưc hiện và anh Huy đại diện phát biểu.
目次は、背景、デモ、取組及び挙動、まとめになります。
Nội dung chính gồm có Use-case, Demo, Cách thức hoạt động, và tổng kết
背景
Đầu tiên là Use-case
例えば、我々は、ある商品のメーカーです。よくある質問をkintoneのアプリで管理しています。仮に、Facebookを通してお客さんと連絡を付けているとします。お客さんから質問を受け取ったとき、先ずどうしますか?すぐには返事しないんですよね。先ず、kintoneのアプリ側で当てはまるよくある質問があるかどうか探して、それから返事します。
では、立場を変えて、今、皆さんはお客さんです。問い合わせをする時、返事がもらえるまでどれくらい待てますか?
Giả sử chúng ta có 1 công ty buôn bán 1 SP nào đó
Cty đó quản lý ngân hàng các câu hỏi thường gặp (FAQ) trên kintone app
Họ giao tiếp với khách hàng qua Facebook Page,
khi nhận được câu hỏi khách hàng, đầu tiên, nhân viên sẽ tìm xem trong FAQ trên kintone app có câu trả lời không, rồi mới trả lời cho khách.
Thông thường, bạn mất bao nhiêu thời gian để được câu trả bạn mất bao nhiêu thời gian để được câu trả lời ?
普通はすぐ返事してもらっていると思いますが、
他にも問い合わせ者が多い場合や問い合わせ時間が勤務時間外の場合は、なかなかそうにはいきません。理解してもらって待つお客さんもいれば、評判を下げたりして、新しいお客さんの場合は、待たずに他のメーカーを探してしまう人もいるでしょう。
このようなことが起こらないように、kintone対応chatbotの開発を決めました。
Nếu một lúc có quá nhiều câu hỏi gửi đến, có thể các bạn phải chờ 5-10 phút, hoặc lâu hơn đúng không.
Khi khách hàng đặt câu hỏi trên Facebook page, nếu câu hỏi đó thuộc loại FAQ, ta hoàn toàn có thể phản hồi ngay nhờ Chatbot for kintone.
デモをするため、kintoneとfacebookを用意しておきました。
KintoneにはSupport FAQというアプリが既に提供されています。左側はよくある質問で、右側はその質問の回答です。例えば、お客さんが「Kintone appとは何ですか」と聞きたいです。よくある質問に当てはまったら、chatboxがすぐ返事してくれます。
2/ how do we create a kintone app?
3/ any discount program?
câu 3 sẽ đợi support staff
Chúng tôi sẽ Demo cho các bạn thấy.
Trước khi demo, ta cần chuẩn bị kintone app quản lý FAQ data, và 1 Facebook page.
(click mở kintone app và fb page)
Hiện kintone đã có sẵn app quản lý FAQ data là Support FAQ, gồm 2 phần chính là Cột câu hỏi và Cột câu trả lời.
Facebook Page ví dụ chúng tôi tạo sẵn tên là là Kintone Research. Khi khách hàng đặt câu hỏi trên Facebook message, ví dụ như “What is kintone app ?”, nếu câu hỏi này thuộc FAQ data trên kintone, Chatbot sẽ tự động trả lời ngay.
次に、ワークフローについて説明したいと思います。
Cách thức hoạt động như thế nào?
この中に、お客さんと連絡するfacebook page、core component、人間言語を分析するNLP、とよくある質問を管理するKintoneの4つが含まれています。
Cấu trúc Chatbot gồm có
· Facebook page để tương tác với khách hàng,
· Core component để xử lý câu hỏi,
· NLP để phân tích ngôn ngữ tự nhiên,
và kintone chứa FAQ data.
先使った質問は「Kintone appとは何ですか」ですね。この質問をfacebook pageに投げると、
Đầu tiên, giả sử khách hàng đặt câu hỏi lên Facebook page là “What is a kintone app?”
Facebookがそれを引っ張って、
facebook pageが提供しているweb hookを通してcore componentに届けます。
Trong Facebook page,
Facebook app sẽ trigger câu hỏi đó và câu hỏi sẽ được gửi đến Core component thông qua Webhook cung cấp bởi fb page.
core componentは、Node.jsアプリをherokuにデプロイしましたものです。
facebook pageから受け取った「NLP」という質問を人間言語の分析アプリに転送します。
Core component được xây dựng bằng Node js và deploy trên Heroku.
Tại bước này, Core component nhận message từ Facebook app và gửi nó cho NLP component phân tích.
NLPは、先端のgoogle apiバージョン(β)を使って、質問を品詞に分け、
NLP (Natural Language Processing ) component dùng để phân tích ngôn ngữ tự nhiên.
HIện tại chúng tôi đang sử dụng Google Cloud Natural API để phân tích một câu thành các nhóm từ.
分析結果をcore componentに返します。
core componentは定めておいた基準に基づき、特定品種を選定します。選定基準は、名詞、形容詞、動詞の3種類です。この基準によると、選ばれた単語は、動詞のis、名詞のkintone, appになります。
Ở bước này, Core component nhận kết quả phân tích NLP, chọn ra các từ thuộc loại từ đã được quy định từ trước. Ở đây chúng tôi quy định loại từ là noun-adj-verb. Trong ví dụ này, core chọn ra được động từ is, và danh từ kintone, app.
選定が終わったら、kintoneのrest apiでデータの問い合わせをします。検索条件は、likeとor。ですから、単語が1つさえ一致すれば、検索結果として出てきます。
Chúng tôi sử dụng Rest API của kintone để truy vấn dữ liệu từ FAQ app, tìm ra câu hỏi chứa từ tương ứng với các từ trên. Điều kiện tìm kiếm là like, or. Do đó, chỉ cần câu hỏi có chứa 1 trong các từ dùng để tìm kiếm, cũng sẽ được đưa vào tập hợp kết quả tìm kiếm.
検索結果が複数ありますから、その中から最も適切な候補を選ぶことが必要です。
そこで、core componentが採点処理を行います。最も当てはまる単語が多い質問は、最も点数が高いものです。その質問を回答を採用します。
Core component sẽ nhận tập hợp kết quả tìm kiếm này,
Do kết quả trả về từ kintone app có thể có nhiều hơn một record, nên cần phải có một cách đánh giá lại kết quả tìm kiếm. Ở đây chúng tôi xử lý bằng cách phân tích và cho điểm cho từng record.
và từ trong số đó, chọn ra câu hỏi nào có điểm số cao nhất.
Câu hỏi có điểm số cao nhất là câu chứa nhiều từ khóa nhất.
Sau đó, nó gửi câu trả lời của câu hỏi cao điểm nhất cho Facebook app.
最後のステップになりますが、ここでは、facebook appが先端のfacebook messenger plaftform api(βバージョン)を使って、選定した回答を表示します。
以上、chatbotの動きでした。
Cuối cùng, Core component gửi câu trả lời về fb page bằng cách sử dụng Facebook Messenger Plaform API. Sau đó fb page sẽ hiển thị câu trả lời trên màn hình chat của user.
Cách thức hoạt động của Chatbot đến đây là kết thúc.
まとめです。
Tổng kết
今回のchatbotでは、簡易なレベルのAIを使っていますが、
今後のアプローチとして、もっとハードなAIを調査して、より適切な回答を出せるようにしたいです。
また、自習マシーンも導入する予定です。そうすると、自動的に、よくある質問を増やしたり、すぐに対応できなかった質問を更新したりすることができます。
Hệ thống Chatbot này phát triển dựa trên AI rất đơn giản.
Trong tương lai, chúng tôi sẽ thử thêm nhiều thuật toán AI hơn,
Và áp dụng Machine learning để tự động ghi nhớ các độ phù hợp của câu trả lời đối với câu hỏi.
今回の実験はfacebook messengerで行っていますが、他にも、skackやskype, lineなど、色々なチャットアプリにも流用したいです。
Core componentはherokuに作成されていますが、自分のサーバーや他のプラットフォームでも作成可能です。
NLPについては、google apiの代わりに、apacheなんかもトライしようと考えています。
色々な法案で効果を上げていく方針です。
Về mặt kỹ thuật
Phương tiện giao tiếp trong nghiên cứu này là Facebook, ngoài ra ta có thể thử trên các ứng dụng chat khác như slack, skype, line
Core component ngoài Heroku, có thể build trên server riêng, hoặc các nền tảng khác.
NLP component ngoài API của Google, có thể thử của Apache.