📊 รู้ทุกความเคลื่อนไหวใน LINE Chatbot ของคุณด้วย Chatbot Analytics Tools

Mike Phulsuksombati
LINE Developers Thailand

--

รู้มั้ยว่า user คุยอะไรกับ LINE Chatbot ของคุณบ้าง?

อ้าว! มีมาขอให้ chatbot ดาวน์มือถือให้ด้วย 🤣

นี่เป็นคำถามสำคัญที่นักพัฒนา chatbot ทุกคนควรจะมีคำตอบอยู่ในใจตลอดเวลาเพื่อที่จะพัฒนา user experience (UX) ของ chatbot เราให้ดีขึ้นอยู่อย่างสม่ำเสมอเครื่องมือสำคัญตัวหนึ่งที่ช่วยให้นักพัฒนา chatbot สามารถรู้คำตอบได้ตลอดเวลาก็คือ Chatbot Analytics นั่นเอง!!

Chatbot Analytics ช่วยให้นักพัฒนา chatbot สามารถ

  • ดู metric ต่างๆ เช่น จำนวน user ในแต่ละวัน จำนวนคน block
  • ทำความเข้าใจ user journey ว่า user มีการสะดุดที่ conversation ใด หรือเกิดการ drop off ส่วนไหน
  • หา insight จาก conversation ของ user กับ chatbot เราว่า user ชอบหรือไม่ชอบอะไร, chatbot เราตอบถูกต้องมากแค่ไหน

จากข้อมูลเหล่านี้เราสามารถนำมาใช้พัฒนา UX ของ chatbot เราให้ตรงตาม behavior ของ user มากขึ้น และสร้างความประทับใจให้กับ user ของเรา ❤️

วันนี้เราจะมารู้จัก Chatbot Analytics Tools เบื้องต้นที่นักพัฒนา chatbot บน LINE ด้วย Dialogflow สามารถใช้ได้กันครับ

  1. LINE Official Account Manager Insight
  2. Dialogflow Analytics
  3. Google BigQuery & Data Studio

1. LINE Official Account Manager Insight

LINE Official Account Manager Insight Dashboard

LINE Official Account Manager จะมี metrics ดังนี้

  • Delivered messages (จำนวน messages ที่ส่งออก)
  • Friends added (จำนวน user ที่ add chatbot)
  • Target reach (จำนวน user ที่ส่ง message หาได้ทั้งหมด)
  • Blocking (จำนวน user ที่ block chatbot)

โดย 4 ตัวนี้จะเป็น business metrics หลักที่ใช้วัด performance ของ chatbot เลยว่ามีคนมา add friend/block ไปเท่าไหร่เพิ่มเท่าไหร่

นอกจากใน LINE OA Manager เราสามารถได้ข้อมูลเกี่ยวกับ user เพิ่มเติมจาก Messaging API ได้ด้วยโดยจะมีเพิ่มจากข้างบน 2 ตัวคือ

💡 โดยส่วนตัว ผมอยากจะแนะนำตัว Get Friend Demographic เป็นพิเศษครับ เพราะว่าข้อมูลนี้สำคัญมากกับการพัฒนา UX ของ Chatbot เพราะเป็น API ตัวเดียวที่ทำให้เราทราบ อายุและเพศของ user ซึ่งสามารถนำไปปรับแก้ persona ของ chatbot เราให้ตรงกับ user มากขึ้นได้ครับ

2. Dialogflow Analytics

Dialogflow Analytics Dashboard

Dialogflow จะมี Analytics พื้นฐานมาให้ด้วยสำหรับทุก agent ซึ่งหากเคยใช้ Chatbase ก็คงจะคุ้นหน้าคุ้นตาดี เพราะ Google acquired Chatbase เพื่อมาทำ Analytics สำหรับ Dialogflow นั่นเองโดยจะมี metrics ดังนี้

  • Sessions
  • Intents
  • Session flow

มาดูกันไปทีละตัวเลยครับ

Sessions

ใช้ดูจำนวน session ที่ user มาคุยกับ chatbot ทั้งหมด และจำนวนข้อความที่ user คุยกับ chatbot ต่อ session อันนี้มีประโยชน์มากในการดูว่า user engage กับ chatbot เรานานขนาดไหน

Intents

ใช้ดูว่า intent ไหนถูก trigger เท่าไหร่ กี่ session และจาก intent นั้น user ออกจาก chatbot ไปเท่าไหร่ อันนี้มีประโยชน์มากในการ prioritize การแก้ไข chatbot เพราะเราสามารถเลือก intent ที่คนใช้เยอะ ๆก่อน แล้ว improve ให้ user ไม่สะดุดที่ flow นั้นก่อนจึงไปแก้ไข intent อื่น ๆ

Session flow

ใช้ดู user journey flow ว่า user เข้ามาคุยอะไรกับ chatbot ของเราและ drop off ตรงไหน โดยสามารถกด explore เพื่อดูอย่างละเอียดได้

อันนี้มีประโยชน์มากในการดู drop off ใน user journey flow ว่า user สะดุดตรงไหน เพราะบางที user อาจจะพูดกับ chatbot ใน flow ที่เราไม่ได้วางไว้บ่อยๆ ทำให้เราสามารถแก้ flow ให้ตรงกับที่ user interact จริงๆได้มากขึ้น ลดความสะดุดใน flow

หากสงสัยอะไรสามารถดูเพิ่มเติมได้ที่ documentation ของ Dialogflow เลยครับ

เป็นไงบ้างครับ กับการใช้ LINE Official Account Manager กับ Dialogflow Analytics… หะ!! ละเอียดน้อยไป อยากได้ละเอียดกว่านี้อีก ได้เลยครับจัดให้

3. Google BigQuery & Data Studio

อันนี้จะเป็นวิธีที่ค่อนข้าง custom มาก จะมี setup นิดหน่อย แต่ผมว่าน่าจะมีประโยชน์ต่อคนที่ต้องการ analyze data ของ chatbot ตัวเองอย่างละเอียดครับ

Super Analytics Duo = Google BigQuery + Google Data Studio

สามารถทำตามขั้นตอนดังนี้ได้เลยครับ

1. Forward Log จาก Dialogflow ไปที่ Google Cloud

จากหน้า console Dialogflow ไปที่ Setting (รูปเกียร์) > General ตั้ง Log Setting ให้ Dialogflow ส่ง Log ไปที่ Google Stackdriver ซึ่งเป็นตัว monitoring บน Google Cloud

ทีนี้ลองกด Open logs ดูครับ เราจะเห็นว่าจะมี Dialogflow Request/Response ส่งมาที่ Logging ของ Google Cloud หากไม่เห็น log มาให้รอสักพักนะครับ จะใช้เวลานิดนึงก่อนที่ log จะเข้ามา

2. สร้าง Log sink เพื่อ export log ที่เข้ามาไปที่ Google BigQuery

จากหน้า Logging ไปที่ Logs Router > Create Sink ครับ

Log sink คือการ export log จาก Logging ไปที่ resource อื่นบน Google Cloud โดยสามารถ export ไปลงที่ BigQuery, Cloud Storage, Pub/Sub หรือ Splunk ก็ได้

เราจะเลือก Sink Service เป็น BigQuery ครับ เสร็จแล้วจะมีให้เลือกว่าจะให้ไปลง dataset ไหน สามารถเลือก Create new BigQuery dataset ได้เลยครับ

ทีนี้หลังจากเรา Create Sink เสร็จ รอสักพักให้ log ก็ถูก export ไปลงที่ BigQuery

🚨 มีข้อควรระวังนิดนึงครับ เราจะได้ export log หลังจากเวลาที่เราสร้าง Log Sink เท่านั้น!! นั่นคือจะไม่มี log ก่อนหน้าที่เราสร้าง Log Sink ใน BigQuery ดังนั้นถ้าอยากจะเก็บ log ด้วยวิธีนี้ควรสร้าง Log Sink ตั้งแต่เนิ่นๆครับ

โดยจะได้ log มา partition แบบรายวันเลยครับ สะดวกในการ query มากๆ ❤️

3. Transform Data นิดหน่อย

จะเห็นว่าข้อมูลที่สำคัญต่าง ๆ ที่เราอยากรู้เกี่ยวกับ chatbot จริงๆ จะอยู่ใน column textPayload ซึ่งไม่ได้เป็น JSON Format

textPayload จาก Dialogflow

เราจึงต้อง transform data เพื่อให้ง่ายต่อการ query อื่นๆต่อไป ซึ่งไม่ต้องห่วงครับ ผมทำ transform query มาให้เพื่อนๆแล้ว สามารถเอาไป run ได้เลย

หลังจาก transform เราจะได้ data ประมาณนี้

ในที่สุดเราจะก็ได้ data ที่พร้อมมา analyze แล้วครับ 🎉

💡 Tips: หากขี้เกียจ run transform query ทุกครั้งก็สามารถตั้ง Scheduled queries เพื่อให้ transform query มัน run เองทุกวันก็ได้ครับ

จากนี้เพื่อนๆก็สามารถเลือกที่จะเขียน query ต่อใน BigQuery เลยก็ได้ หรือหากต้องการ visualization หรือ สร้าง dashboard ต่อ ผมแนะนำให้ทำต่อด้วย Data Studio ได้เลยครับ

4. Visualize Data ด้วย Data Studio

หลังจากที่เราได้ data มาแล้วให้กด Explore Data ครับ เราก็จะเข้าสู่ Data Studio ซึ่งเราสามารถเลือกชนิดของ chart ได้ ซึ่งการใช้งานจะเป็น drag-and-drop column เพื่อมาสร้าง chart ครับ

Data Studio for Exploring Data

ถ้าอยากรู้เพิ่มเติมสามารถเข้าไปดู tutorial ได้ครับ

เราสามารถนำ chart ที่ได้จาก Data Studio มาสร้างเป็น Dashboard ได้ โดยกดเข้าไปที่ dashboard ของ Data Studio

Data Studio Report Dashboard

กด Create เพื่อสร้าง Report ใหม่

กด Add data เพื่อดึง data จาก BigQuery เข้ามา

เสร็จแล้วให้เราเลือก dataset ที่เราต้องการนำมาทำ dashboard

ทีนี้เราก็จะสามารถนำ dataset มาสร้าง chart ใน Data Studio report ได้แล้วครับ 🎉

โดย report นี้จะเป็นเหมือน dashboard เราสามารถส่งให้คนอื่นๆดูแบบ real-time ได้คล้ายๆกับ Google Doc หรือ Spreadsheet

เป็นอย่างไรบ้างครับ กับการใช้ Chatbot Analytics Tools 3 รูปแบบ

  1. LINE Official Account Manager Insight
  2. Dialogflow Analytics
  3. Google Bigquery & Data Studio

ที่นักพัฒนา chatbot บน LINE ด้วย Dialogflow สามารถใช้ได้

เราสามารถนำ tools ต่างๆเหล่านี้มาเพื่อวิเคราะห์ insight ที่ user เข้ามา interact กับ chatbot ของเรา และเราสามารถนำ insight นั้นมาใช้พัฒนา UX ของ chatbot เราให้ตรงใจ เหมาะสมกับ behavior ของ user มากขึ้น เพื่อให้ chatbot ของเรา สามารถสร้างความประทับใจให้ user มากที่สุด

เพียงแค่ใช้ Chatbot Analytics Tools ต่างๆเหล่านี้เราก็จะสามารถรู้ได้ตลอดเวลาว่า user กำลังพูดคุยอะไรกับ chatbot ของคุณ!

--

--