สร้างเครื่องมือจัดกำหนดการนัดหมายด้วย Dialogflow

สร้างเครื่องมือจัดกำหนดการนัดหมายด้วย Dialogflow

เกี่ยวกับ Codelab นี้

subjectอัปเดตล่าสุดเมื่อ ต.ค. 8, 2020
account_circleเขียนโดย Joanna Smith

1 ก่อนเริ่มต้น

คงจะดีไม่น้อยหากคุณมีสิทธิ์เข้าถึงเครื่องมือจัดตารางเวลานัดหมายที่สำนักงานแพทย์ กรมการขนส่งทางบก หรืออู่ซ่อม

ใน Codelab นี้ คุณจะได้สร้างแชทบอทอย่างง่ายด้วย Dialogflow และผสานรวมกับเว็บผ่านการผสานรวมแบบคลิกเดียว

แบบฝึกหัดจะเรียงตามลำดับต่อไปนี้

  1. สร้าง Agent ของ Dialogflow
  2. สร้างความตั้งใจ
  3. ทดสอบแชทบ็อต
  4. เปิดใช้การผสานรวมเว็บ

ข้อกำหนดเบื้องต้น

ก่อนที่จะดำเนินการต่อ คุณต้องเข้าใจแนวคิดและโครงสร้างพื้นฐานของ Dialogflow ซึ่งคุณสามารถดูได้จากวิดีโอต่อไปนี้ในเส้นทางสร้างแชทบอทด้วย Dialogflow

สิ่งที่คุณจะได้เรียนรู้

  • วิธีสร้าง Agent ของ Dialogflow
  • วิธีสร้าง Intent ในเอเจนต์
  • วิธีสร้างวลีการฝึกในความตั้งใจ
  • วิธีสร้างคำตอบในความตั้งใจ
  • วิธีทดสอบ Agent ของ Dialogflow
  • วิธีตั้งค่าการผสานรวมเว็บ

สิ่งที่คุณจะสร้าง

  • แชทบอทโดยการสร้าง Agent ใน Dialogflow

สิ่งที่คุณต้องมี

  • เบราว์เซอร์และอีเมลสำหรับเข้าสู่ระบบคอนโซล Dialogflow

2 สร้างตัวแทน Dialogflow

  1. ไปที่คอนโซล Dialogflow
  2. ลงชื่อเข้าใช้ หากเป็นผู้ใช้ครั้งแรก ให้ใช้อีเมลเพื่อลงชื่อสมัครใช้
  3. ยอมรับข้อกำหนดและเงื่อนไข แล้วคุณจะอยู่ในคอนโซล Dialogflow
  4. หากต้องการสร้างเอเจนต์** ให้คลิก d9e90c93fc779808.png เลื่อนไปที่ด้านล่างของเมนู แล้วคลิก**สร้างเอเจนต์ใหม่**

3b3f9677e2a26d93.png

  1. ป้อน "AppointmentScheduler" เป็นชื่อตัวแทน
  2. คลิกสร้าง

Dialogflow จะสร้าง Intent เริ่มต้น 2 รายการต่อไปนี้เป็นส่วนหนึ่งของ Agent

  • เจตนาต้อนรับเริ่มต้นจะทักทายผู้ใช้
  • เจตนาสำรองเริ่มต้นจะดักจับคำถามทั้งหมดที่บ็อตไม่เข้าใจ

เพียงเท่านี้ คุณก็สร้างบ็อตที่ใช้งานได้ซึ่งทักทายผู้ใช้

ทดสอบเอเจนต์

ในคอนโซล Dialogflow ให้ค้นหาแผงทดสอบที่มีลักษณะดังนี้

3323d1bfe318688a.png

หากต้องการทดสอบเอเจนต์ ให้พิมพ์ "สวัสดี" ในส่วนที่ระบุว่าลองเลย ตัวแทนควรตอบกลับด้วยคำทักทายเริ่มต้นที่กำหนดไว้ใน Intent ต้อนรับเริ่มต้น ควรมีข้อความว่า "สวัสดี คุณต้องการความช่วยเหลือในเรื่องใด คุณสามารถแก้ไขคำตอบได้

5dd38f7a78d0ef69.png

ตอนนี้หากคุณป้อน "นัดหมาย" เอเจนต์จะไม่รู้ว่าจะทำอะไร จึงเริ่ม Intent สำรองเริ่มต้น นั่นเป็นเพราะคุณยังไม่ได้สร้างความตั้งใจเพื่อดักจับคำถามนั้นๆ

3975613778643272.png

3 สร้างความตั้งใจ

  1. หากต้องการสร้างเจตนา ให้คลิกเจตนา > สร้างเจตนา ป้อน "กำหนดเวลานัดหมาย" เป็นชื่อความตั้งใจ

f4fdcdfc62c76c91.png

  1. คลิกวลีการฝึก แล้วป้อนวลีต่อไปนี้
  2. กำหนดการนัดหมายวันพุธเวลา 14:00 น.
  3. ต้องการนัดหมายเวลา 16:00 น. ของวันพรุ่งนี้
  4. ฉันอยากนัดเวลาตอนบ่าย 3 วันอังคาร

ขณะป้อนวลี คุณจะเห็นว่าระบบจะระบุเวลาและวันที่เป็นเอนทิตีของระบบ @sys.date และ @sys.time โดยอัตโนมัติ

916f91a707dfc80a.png

  1. เลื่อนไปที่คำตอบ แล้วป้อน "คุณพร้อมแล้ว เจอกันนะ" เป็นคำตอบ หรือจะทำให้ดูน่าสนใจยิ่งขึ้นโดยป้อนว่า "คุณพร้อมแล้วสำหรับวันที่ $date เวลา $time แล้วพบกัน" (เครื่องหมายดอลลาร์($) ที่นี่ช่วยให้คุณเข้าถึงค่าเอนทิตีได้) คลิกเพิ่มคำตอบ

c1bc071b31817b56.png

  1. คลิกบันทึกและทดสอบเอเจนต์ด้วยคำสั่ง "นัดหมายเวลา 16:00 น. ในวันพฤหัสบดี" คุณจะได้รับการตอบกลับพร้อมวันที่และเวลาที่ถูกต้องตามที่คาดไว้

การเติมช่อง

ตอนนี้ลองทดสอบ "นัดหมาย" ซึ่งไม่เฉพาะเจาะจงมากนักและคุณไม่ได้จัดการสถานการณ์นั้น ดังนั้นควรให้ Intent สำรองเริ่มต้นเป็นผู้จัดการ คุณสามารถใช้สิ่งที่เรียกว่าการเติมช่องเพื่อรองรับการสนทนาดังกล่าว

การป้อนข้อมูลในช่องช่วยให้คุณออกแบบโฟลว์การสนทนาสำหรับการรวบรวมค่าพารามิเตอร์ในเจตนาเดียวได้ ซึ่งจะมีประโยชน์เมื่อการดำเนินการไม่สามารถทําให้เสร็จสมบูรณ์ได้หากไม่มีชุดค่าพารามิเตอร์ที่เฉพาะเจาะจง

จากนั้นตั้งค่าการเติมช่อง

  1. คลิกการดำเนินการและพารามิเตอร์ สร้างเอนทิตีตามที่จำเป็น แล้ว Dialogflow จะถามวันที่และเวลาก่อนที่จะตอบ
  2. สำหรับเวลา ให้ป้อน "คุณต้องการเข้ามาเวลาใด"
  3. สำหรับวันที่ ให้ป้อน "วันที่เท่าไหร่"
  4. คลิกบันทึก

d5bbdb4adb6ddfbe.png

4 ทดสอบแชทบ็อต

ตอนนี้ควรตั้งค่า Dialogflow แล้ว ป้อนการสนทนาต่อไปนี้ในคอนโซล Dialogflow ตรงที่ระบุว่าลองเลย

  1. ผู้ใช้: "สวัสดี"
  2. ผู้ใช้: "นัดหมาย"
  3. แชทบ็อต: "วันที่เท่าไหร่"
  4. ผู้ใช้: "23 พฤษภาคม"
  5. แชทบอท: "คุณสะดวกเข้ามาเวลาไหน"
  6. ผู้ใช้: "10 โมงเช้า"
  7. แชทบอท: "คุณพร้อมแล้วสำหรับวันที่ 23-05-2019 เวลา 10:00:00 น. แล้วพบกัน"

5 เปิดใช้การผสานรวมเว็บด้วยคลิกเดียว

Dialogflow มีการผสานรวมหลายประเภทสำหรับแชทบอทของคุณ ดูตัวอย่างอินเทอร์เฟซผู้ใช้บนเว็บสำหรับแชทบอท

คลิกการผสานรวมในคอนโซล Dialogflow

เปิดใช้ Web Demo

27b74328cc705181.png

คลิก URL เพื่อเปิดการสาธิตบนเว็บ d389ab871032c565.png

เริ่มใช้อินเทอร์เฟซแชทโดยพิมพ์ในช่องที่ระบุว่าถามอะไรหน่อย ใช้การสนทนาต่อไปนี้

  1. ป้อน "สวัสดี" แล้วแชทบอทควรตอบกลับเหมือนเดิม
  2. ป้อน "นัดหมายเวลา 16:00 น. พรุ่งนี้" แล้วแชทบอทควรตอบกลับโดยยืนยันการนัดหมาย

6 ล้างข้อมูล

หากคุณวางแผนที่จะทำ Codelab อื่นๆ ที่เกี่ยวข้องกับ Dialogflow ให้ข้ามส่วนนี้ไปก่อนและกลับมาทำในภายหลัง

ลบเอเจนต์ Dialogflow

  • คลิก fe9c61cc27fb9f2e.png ข้างเอเจนต์ที่มีอยู่

79eb93054b2bb876.png

  1. ในแท็บทั่วไป ให้เลื่อนไปที่ด้านล่างแล้วคลิกลบเอเจนต์นี้
  2. พิมพ์ลบในกล่องโต้ตอบที่ปรากฏขึ้น แล้วคลิกลบ

7 ขอแสดงความยินดี

คุณสร้างแชทบ็อตและตอนนี้คุณเป็นนักพัฒนาแชทบ็อตแล้ว

ดูข้อมูลเพิ่มเติม

ดูแหล่งข้อมูลอื่นๆ ของ Dialogflow