[Project 1: Chatbot: Kaibin] วิธีการสร้าง Chatbot และเทคนิคการใส่ Sticker Line ด้วย Dialogflow

สวัสดีค่ะวันนี้จะมาสอนวิธีการสร้าง Chatbot ด้วย Dialogflow กันนะคะ

โดย Chatbot ที่เราจะสร้างในวันนี้ชื่อบอท Kaibin (ไก่บิน)

สโลแกน คือ หิวเมื่อไหร่ก็แวะมา ไก่ทอดน้องไก่บิน

ส่วน Concept ของบอทไก่บินก็คือ

  • สั่งอาหารออนไลน์ได้
  • รับออเดอร์ลูกค้าได้
  • พูดคุยอย่างเฟรนด์ลี่
  • ตอบคำถามได้คล่อง

ก่อนที่เราจะเริ่มสร้างบอท เราจะต้องวางแผนโครงสร้างก่อนเพื่อให้เห็นวัตถุประสงค์ที่เราต้องการ

นี่คือโครงสร้างของบอทไก่บินที่เราต้องการค่ะ

เรามาเริ่มสร้างบอทกันเลยยย !!!

อันดับแรกให้เข้าเว็บไซต์ https://dialogflow.com/ กันก่อนนะคะ คลิ๊ก Go to console และทำการ Login ให้เรียบร้อย

มาดูกันที่หัวข้อ Intent หรือ จุดประสงค์ กันนะคะ ตามรูปภาพข้างต้นนี้ สร้าง Intent ขึ้นมา โดยการกด Create intent แล้วสร้างจุดประสงค์ในการทำงานของบอทเราโดยแยกออกไว้เป็นหมวดหมู่

  • ทักทาย
  • การรับออเดอร์
  • การชำระเงิน
  • ขอบคุณ

หากเราต้องการให้บอทของเราทำงานแบบรูปแบบไหน มีฟังก์ชั่นอย่างไร ให้เราสร้างได้ตามใจชอบเลยค่ะ หลังจากสร้างแล้ว อย่าลืมกด Save ด้วยนะคะ

เรามาดูภายใน Intent กันดีกว่าว่ามีอะไรบ้าง

นี่คือหัวข้อ Welcome หรือ การทักทายของบอทนะคะ

Training phrases หรือ วลีการฝึกอบรม จะเป็นเหมือนการฝึกบอทของเรา โดยการยกตัวอย่างคำหรือประโยคที่เราคิดว่า user หรือลูกค้าของเราจะใช้ ยิ่งเราเทรนบอทได้มากเท่าไหร่ % error ในการตอบจะยิ่งน้อยลง

Responses หรือ การตอบ ในฟังก์ชั่นนี้ให้เราสร้างประโยคที่ใช้ในการตอบลูกค้าขึ้นมาที่หัวข้อ Text response
จะสร้างกี่ประโยคก็ได้ หากเราสร้างมากกว่าหนึ่งประโยคบอทจะทำการ random ประโยคที่เราสร้างไว้นำไปใช้ในการตอบ

ให้ทำตามขั้นตอนข้างต้นนี้ใน Intent แต่ละอัน

เนื่องจากบอทไก่บินเป็นบอทสั่งอาหาร การจะรับออเดอร์แต่ละอย่างจะต้องมีการกำหนดคำหรือประเภทของอาหาร เพื่อให้บอทตอบได้ตรงคำถาม เรามาดูกันที่ภาพข้างล่างนี้เลยค่ะ

เราได้สร้าง Entities ขึ้นมาเป็นหัวข้อที่ร้านเรากำหนดไว้

  • Menu (เมนู)
  • Body of Kai (ส่วนของไก่)

ยกตัวอย่างหัวข้อ Menu หรือก็คือเมนูที่ร้านเราจะขาย

สร้าง Key word เมนูของเราตามภาพข้างต้นนี้ ในหนึ่งคำจะใส่หลายๆ แท็กก็ได้ เผื่อลูกค้าพิมพ์มาไม่เต็มคำ

หลังจากที่เราสร้าง Key word ของเราเสร็จแล้ว กด Save จากนั้นให้เราไปเทรนบอทที่ Intent อีกรอบ

พิมพ์ประโยคที่คิดว่า user จะสั่งแล้วใส่ key word ของเราลงไปในประโยคด้วย จากนั้นให้ทำการ Train บอทของเรา

ในการ Train บอท ให้เรากดที่รูปเฟือง ไปที่ ML Setting จากนั้นกด Train

บอทของเราจะถูกเทรน แล้วผลที่ได้จะออกมาเป็นแบบนี้

นี่คือผลลัพธ์ที่ได้

บอทจะตอบกลับโดยการใช้ประโยคใน Intent หมวด order ที่เรากำหนดไว้


เรามาดูกันที่เทคนิคกันต่อเลยดีกว่าค่ะ

เทคนิคที่จะมาสอนในวันนี้คือ การใส่ Sticker ลงในแชทบอท ของเรา

เข้าไปที่เว็บไซต์ Line Developers ไปที่ Documents

จากนั้นให้คลิ๊กที่ Messaging API

ไปที่หัวข้อ Concepts และเลือก Messages

เลื่อนลงมาจนเจอ Message types

ในหัวข้อนี้จะมีประเภทของข้อความที่เราต้องการให้แสดงใน Line

วันนี้เราจะสอนการใส่ Sticker เพราะฉะนั้นให้คลิ๊กไปที่หัวข้อ Sticker message

เข้าไปที่ Sticker list ดูว่ามีสติ๊กเกอร์อะไรให้ใช้บ้าง

เมื่อเราเลือกสติ๊กเกอร์ที่เราต้องการได้แล้ว เราจะมาเข้าสู่วิธีการใส่เลยนะคะ กดไปที่หน้า Sticker message

ทำการ Copy โค้ดที่เขาให้แล้วกลับไปที่ Dialogflow

กด ADD RESPONSES และกด Cumtom payload จะขึ้นมาเป็นช่องว่างให้ใส่โค้ดดังนี้

วางโค้ดที่เราได้ลงไปในช่องว่าง ให้ได้หน้าตาแบบนนี้

กลับไปที่ Sticker list เลือกสติ๊กเกอร์ที่เราต้องการ

วันนี้เราเลือกใช้ 119

กลับมาที่โค้ดของเราต่อ

สิ่งที่เราจะต้องเปลี่ยนมีเพียง 2 อย่างคือ packageId และ stickerId

การที่เราจะรู้ว่าควรใส่เลขอะไรให้สังเกตุจาก 2 ช่องแรกของสติ๊กเกอร์นั้น

พอใส่ครบแล้ว จะออกมาหน้าตาแบบนี้

กด Save แค่นี้ก็เรียบร้อยแล้วค่ะ


เราถึงขั้นตอนสุดท้ายแล้วค่ะ

นั่นก็คือ วิธีการเชื่อมต่อกับ Line App

มาเริ่มกันเล้ยย !!

เข้า Login Line Developers ก่อนเลยค่ะ

กด Create New Provider และใส่ข้อมูลบอทของเราให้ครบ

จะได้ออกมาแบบนี้ ให้เรากดเข้าไปในช่องที่เราสร้างไว้เลยค่ะ

แล้วกลับไปที่ Dialogflow กด Integrations

เลื่อนเปิดใช้งาน Line

จะขึ้นเป็นหน้านี้ขึ้นมา ให้เรากลับไปที่ช่องที่เราสร้างไว้ นำข้อมูลในนั้นมาใส่ในช่องให้ครบ

Channel Access Token ให้กด Issue ใน Line Developers

จะขึ้นเป็นหน้านี้ กด Issue แล้ว copy ตัวอักษรยาวๆที่ได้มาใส่ในช่องของ Dialogflow

กด START เพื่อเริ่มทำงาน

ในช่องบอทที่เราได้สร้างไว้ใน Line Developers ให้เปลี่ยนหัวข้อดังนี้ เป็น

Enabled

  • Use webhooks
  • Allow bot to join group chats
  • Greeting messages

Disabled

  • Auto-reply messages

เมื่อเสร็จสิ้นหมดทุกอย่างแล้ว เลื่อนไปด้านล่างสุดจะมี QR Code ให้เราแอดบอทของเรา

ทำการแอดบอทของเราไป จะได้ออกมาเป็นแบบนี้


เรามาดูบอทที่เราได้กันเลยค่ะ ♥

 

THANK YOU !


BY

นางสาวสุปรียา สุกุ

รหัสนักศึกษา 1610900266

 

  •  
  •  
  •  
  •  
  •  
  •  
SUPRIYA SUKU on sabfacebookSUPRIYA SUKU on sabinstagram
SUPRIYA SUKU
at GlurGeek.Com
ชื่อนางสาวสุปรียา สุกุ ชื่อเล่น ฟาง
กำลังศึกษาอยู่ที่มหาวิทยาลัยกรุงเทพ
คณะวิศวกรรมศาสตร์ สาขาคอมพิวเตอร์และหุ่นยนต์ ชั้นปีที่ 1
งานอดิเรกชอบร้องเพลง เล่นกีต้าร์ และดูหนังมากๆ
ชอบอะไรใหม่ๆ ชอบทำในสิ่งที่ไม่เคยทำ
ชอบอ่านบทความเกี่ยวกับสุขภาพเป็นชีวิตจิตใจ

Leave a Reply