เกี่ยวกับ Codelab นี้
1 ก่อนเริ่มต้น
คงจะดีไม่น้อยหากคุณมีสิทธิ์เข้าถึงเครื่องมือจัดตารางเวลานัดหมายที่สำนักงานแพทย์ กรมการขนส่งทางบก หรืออู่ซ่อม
ใน Codelab นี้ คุณจะได้สร้างแชทบอทอย่างง่ายด้วย Dialogflow และผสานรวมกับเว็บผ่านการผสานรวมแบบคลิกเดียว
แบบฝึกหัดจะเรียงตามลำดับต่อไปนี้
- สร้าง Agent ของ Dialogflow
- สร้างความตั้งใจ
- ทดสอบแชทบ็อต
- เปิดใช้การผสานรวมเว็บ
ข้อกำหนดเบื้องต้น
ก่อนที่จะดำเนินการต่อ คุณต้องเข้าใจแนวคิดและโครงสร้างพื้นฐานของ Dialogflow ซึ่งคุณสามารถดูได้จากวิดีโอต่อไปนี้ในเส้นทางสร้างแชทบอทด้วย Dialogflow
สิ่งที่คุณจะได้เรียนรู้
- วิธีสร้าง Agent ของ Dialogflow
- วิธีสร้าง Intent ในเอเจนต์
- วิธีสร้างวลีการฝึกในความตั้งใจ
- วิธีสร้างคำตอบในความตั้งใจ
- วิธีทดสอบ Agent ของ Dialogflow
- วิธีตั้งค่าการผสานรวมเว็บ
สิ่งที่คุณจะสร้าง
- แชทบอทโดยการสร้าง Agent ใน Dialogflow
สิ่งที่คุณต้องมี
- เบราว์เซอร์และอีเมลสำหรับเข้าสู่ระบบคอนโซล Dialogflow
2 สร้างตัวแทน Dialogflow
- ไปที่คอนโซล Dialogflow
- ลงชื่อเข้าใช้ หากเป็นผู้ใช้ครั้งแรก ให้ใช้อีเมลเพื่อลงชื่อสมัครใช้
- ยอมรับข้อกำหนดและเงื่อนไข แล้วคุณจะอยู่ในคอนโซล Dialogflow
- หากต้องการสร้างเอเจนต์** ให้คลิก
เลื่อนไปที่ด้านล่างของเมนู แล้วคลิก**สร้างเอเจนต์ใหม่**
- ป้อน "AppointmentScheduler" เป็นชื่อตัวแทน
- คลิกสร้าง
Dialogflow จะสร้าง Intent เริ่มต้น 2 รายการต่อไปนี้เป็นส่วนหนึ่งของ Agent
- เจตนาต้อนรับเริ่มต้นจะทักทายผู้ใช้
- เจตนาสำรองเริ่มต้นจะดักจับคำถามทั้งหมดที่บ็อตไม่เข้าใจ
เพียงเท่านี้ คุณก็สร้างบ็อตที่ใช้งานได้ซึ่งทักทายผู้ใช้
ทดสอบเอเจนต์
ในคอนโซล Dialogflow ให้ค้นหาแผงทดสอบที่มีลักษณะดังนี้
หากต้องการทดสอบเอเจนต์ ให้พิมพ์ "สวัสดี" ในส่วนที่ระบุว่าลองเลย ตัวแทนควรตอบกลับด้วยคำทักทายเริ่มต้นที่กำหนดไว้ใน Intent ต้อนรับเริ่มต้น ควรมีข้อความว่า "สวัสดี คุณต้องการความช่วยเหลือในเรื่องใด คุณสามารถแก้ไขคำตอบได้
ตอนนี้หากคุณป้อน "นัดหมาย" เอเจนต์จะไม่รู้ว่าจะทำอะไร จึงเริ่ม Intent สำรองเริ่มต้น นั่นเป็นเพราะคุณยังไม่ได้สร้างความตั้งใจเพื่อดักจับคำถามนั้นๆ
3 สร้างความตั้งใจ
- หากต้องการสร้างเจตนา ให้คลิกเจตนา > สร้างเจตนา ป้อน "กำหนดเวลานัดหมาย" เป็นชื่อความตั้งใจ
- คลิกวลีการฝึก แล้วป้อนวลีต่อไปนี้
- กำหนดการนัดหมายวันพุธเวลา 14:00 น.
- ต้องการนัดหมายเวลา 16:00 น. ของวันพรุ่งนี้
- ฉันอยากนัดเวลาตอนบ่าย 3 วันอังคาร
ขณะป้อนวลี คุณจะเห็นว่าระบบจะระบุเวลาและวันที่เป็นเอนทิตีของระบบ @sys.date และ @sys.time โดยอัตโนมัติ
- เลื่อนไปที่คำตอบ แล้วป้อน "คุณพร้อมแล้ว เจอกันนะ" เป็นคำตอบ หรือจะทำให้ดูน่าสนใจยิ่งขึ้นโดยป้อนว่า "คุณพร้อมแล้วสำหรับวันที่ $date เวลา $time แล้วพบกัน" (เครื่องหมายดอลลาร์($) ที่นี่ช่วยให้คุณเข้าถึงค่าเอนทิตีได้) คลิกเพิ่มคำตอบ
- คลิกบันทึกและทดสอบเอเจนต์ด้วยคำสั่ง "นัดหมายเวลา 16:00 น. ในวันพฤหัสบดี" คุณจะได้รับการตอบกลับพร้อมวันที่และเวลาที่ถูกต้องตามที่คาดไว้
การเติมช่อง
ตอนนี้ลองทดสอบ "นัดหมาย" ซึ่งไม่เฉพาะเจาะจงมากนักและคุณไม่ได้จัดการสถานการณ์นั้น ดังนั้นควรให้ Intent สำรองเริ่มต้นเป็นผู้จัดการ คุณสามารถใช้สิ่งที่เรียกว่าการเติมช่องเพื่อรองรับการสนทนาดังกล่าว
การป้อนข้อมูลในช่องช่วยให้คุณออกแบบโฟลว์การสนทนาสำหรับการรวบรวมค่าพารามิเตอร์ในเจตนาเดียวได้ ซึ่งจะมีประโยชน์เมื่อการดำเนินการไม่สามารถทําให้เสร็จสมบูรณ์ได้หากไม่มีชุดค่าพารามิเตอร์ที่เฉพาะเจาะจง
จากนั้นตั้งค่าการเติมช่อง
- คลิกการดำเนินการและพารามิเตอร์ สร้างเอนทิตีตามที่จำเป็น แล้ว Dialogflow จะถามวันที่และเวลาก่อนที่จะตอบ
- สำหรับเวลา ให้ป้อน "คุณต้องการเข้ามาเวลาใด"
- สำหรับวันที่ ให้ป้อน "วันที่เท่าไหร่"
- คลิกบันทึก
4 ทดสอบแชทบ็อต
ตอนนี้ควรตั้งค่า Dialogflow แล้ว ป้อนการสนทนาต่อไปนี้ในคอนโซล Dialogflow ตรงที่ระบุว่าลองเลย
- ผู้ใช้: "สวัสดี"
- ผู้ใช้: "นัดหมาย"
- แชทบ็อต: "วันที่เท่าไหร่"
- ผู้ใช้: "23 พฤษภาคม"
- แชทบอท: "คุณสะดวกเข้ามาเวลาไหน"
- ผู้ใช้: "10 โมงเช้า"
- แชทบอท: "คุณพร้อมแล้วสำหรับวันที่ 23-05-2019 เวลา 10:00:00 น. แล้วพบกัน"
5 เปิดใช้การผสานรวมเว็บด้วยคลิกเดียว
Dialogflow มีการผสานรวมหลายประเภทสำหรับแชทบอทของคุณ ดูตัวอย่างอินเทอร์เฟซผู้ใช้บนเว็บสำหรับแชทบอท
คลิกการผสานรวมในคอนโซล Dialogflow
เปิดใช้ Web Demo
คลิก URL เพื่อเปิดการสาธิตบนเว็บ
เริ่มใช้อินเทอร์เฟซแชทโดยพิมพ์ในช่องที่ระบุว่าถามอะไรหน่อย ใช้การสนทนาต่อไปนี้
- ป้อน "สวัสดี" แล้วแชทบอทควรตอบกลับเหมือนเดิม
- ป้อน "นัดหมายเวลา 16:00 น. พรุ่งนี้" แล้วแชทบอทควรตอบกลับโดยยืนยันการนัดหมาย
6 ล้างข้อมูล
หากคุณวางแผนที่จะทำ Codelab อื่นๆ ที่เกี่ยวข้องกับ Dialogflow ให้ข้ามส่วนนี้ไปก่อนและกลับมาทำในภายหลัง
ลบเอเจนต์ Dialogflow
- คลิก
ข้างเอเจนต์ที่มีอยู่
- ในแท็บทั่วไป ให้เลื่อนไปที่ด้านล่างแล้วคลิกลบเอเจนต์นี้
- พิมพ์ลบในกล่องโต้ตอบที่ปรากฏขึ้น แล้วคลิกลบ
7 ขอแสดงความยินดี
คุณสร้างแชทบ็อตและตอนนี้คุณเป็นนักพัฒนาแชทบ็อตแล้ว
ดูข้อมูลเพิ่มเติม
ดูแหล่งข้อมูลอื่นๆ ของ Dialogflow