หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
Microsoft Teams นำเสนอความท้าทายเฉพาะด้านในการปรับใช้สำหรับเอเจนต์ Copilot Studio เนื่องจากสภาพแวดล้อมการสนทนาที่ต่อเนื่อง แตกต่างจากการปรับใช้บนเว็บที่เซสชันรีเซ็ตโดยอัตโนมัติ Teams จะเก็บเธรดสนทนาไว้โดยไม่จำกัดเวลา ซึ่งอาจนำไปสู่บริบทที่ล้าสมัย การหมดอายุของโทเค็น และเนื้อหาที่แคชหมดอายุ
บทความนี้ให้คำแนะนำสำหรับการปรับใช้เอเจนต์ Copilot Studio ใน Teams อย่างมีประสิทธิภาพ คุณจะได้เรียนรู้วิธีบริหารจัดการเซสชันถาวร นำกลยุทธ์แก้ไขข้อบกพร่องมาใช้ และรับรองประสิทธิภาพที่เชื่อถือได้ตลอดวงจรชีวิตการสนทนาที่ขยายออกไป
ข้อควรพิจารณาที่สำคัญที่ครอบคลุม:
- การจัดการวงจรชีวิตของเซสชันและการจัดการสถานะไม่ใช้งาน
- เทคนิคการดีบักสำหรับการสนทนาแบบต่อเนื่อง
- การควบคุมเวอร์ชันและกลยุทธ์การปรับใช้การอัปเดต
- แนวทางการนำไปใช้เฉพาะสำหรับ Teams
ปฏิบัติตามแนวทางเหล่านี้เพื่อสร้างเอเจนต์ที่มีความเสถียรและทำงานอย่างต่อเนื่องในสภาพแวดล้อมของ Teams พร้อมทั้งให้ข้อมูลย้อนกลับที่ชัดเจนแก่ผู้ใช้เกี่ยวกับการเปลี่ยนแปลงสถานะและลักษณะการทำงานของระบบ
เหตุใดการนำไปใช้ Teams จึงแตกต่าง
การสนทนาของ Teams จะคงอยู่ต่อเนื่องหลายวันโดยไม่มีการรีเซ็ตอัตโนมัติ ต่างจากเซสชัน เนื้อหาการคุยผ่านเว็บ เหตุการณ์ ConversationStart จะถูกเรียกใช้เฉพาะครั้งแรกที่มีการเพิ่มเอเจนต์ การติดตั้งแอปใหม่จะไม่ทริกเกอร์เหตุการณ์นี้อีกครั้ง
การคงอยู่ของข้อมูลการสนทนาใน Teams อาจก่อให้เกิดความเสี่ยงหลายประการ:
- บริบทที่ล้าสมัย: ประวัติการสนทนาจะยังคงอยู่จนกว่าจะถูกล้างออก
- การหมดอายุของโทเค็น: ตัวเชื่อมต่ออาจหมดอายุในระหว่างเซสชันที่ยาวนาน
- ขีดจำกัดบริบท: ข้อความที่สะสมอาจเกินขีดจำกัดของโมเดล
- การแคชข้อมูลอัปเดต: ผู้ใช้อาจโต้ตอบกับตรรกะที่ล้าสมัยต่อไป
การจัดการสถานะเชิงรุกและคำแนะนำผู้ใช้ที่ชัดเจนเป็นสิ่งสำคัญ
จัดการวงจรชีวิตของเซสชัน
จัดการวงจรชีวิตของเซสชันด้วยการจัดการช่วงที่ไม่ได้ใช้งาน
ดำเนินการรีเซ็ตเมื่อไม่มีการใช้งาน
สร้างหัวข้อใหม่ และเลือกทริกเกอร์ผู้ใช้ไม่ได้ใช้งานมาระยะหนึ่งแล้ว เพื่อเริ่มกระบวนการรีเซ็ตหลังจากผู้ใช้ไม่มีการใช้งานเป็นเวลาหนึ่ง เรียนรู้เพิ่มเติมใน ทริกเกอร์การไม่ใช้งาน เกี่ยวกับรูปแบบเฉพาะของ Teams รวมถึงตัวแปรป้องกันและรูปแบบการสนทนาแบบถาวร
- เพิ่มทริกเกอร์การไม่ใช้งานและกำหนดระยะเวลาหมดเวลา (เช่น 15 นาที)
- เพิ่มโหนดล้างค่าตัวแปรหนึ่งหรือมากกว่า เพื่อทำการลบตัวแปรเซสชันและประวัติการสนทนาเพื่อป้องกันบริบทล้น
- จบการสนทนาและทำเครื่องหมายเซสชันว่า แก้ไขแล้ว
วิธีนี้ช่วยป้องกันการล้นของบริบทและรับประกันลักษณะการทำงานที่คาดเดาได้เมื่อผู้ใช้กลับมา
ให้คำแนะนำหลังจากรีเซ็ต
หลังจากล้างสถานะแล้ว ให้ส่งข้อความที่อธิบายว่าเกิดอะไรขึ้น ตัวอย่างเช่น: "ดูเหมือนว่าการสนทนาของเราไม่ได้ใช้งาน ดังนั้นฉันจะเคลียร์บริบทก่อนหน้านี้เพื่อความปลอดภัย" กล่าว 'สวัสดี' เพื่อรีสตาร์ต
เนื่องจาก ConversationStart จะทำงานเพียงครั้งเดียว คือเมื่อมีการเพิ่มเอเจนต์เป็นครั้งแรก หัวข้อ การทักทาย จึงกลายเป็นจุดเริ่มต้นของกระบวนการของคุณอย่างมีประสิทธิภาพ การกระตุ้นให้ผู้ใช้พูดว่า "สวัสดี" จะช่วยให้ตรรกะเริ่มต้นระบบของคุณทำงานได้อย่างถูกต้อง
เสนอคำสั่งรีเซ็ตแบบบริการตนเอง
เพิ่มข้อความแจ้งให้ผู้ใช้ทราบว่าพวกเขาสามารถพิมพ์คำสั่งเฉพาะได้: "หากมีปัญหา ลองพิมพ์ /debug clearstate เพื่อรีเฟรชสถานะของฉัน"
คำสั่งนี้บังคับให้รีเซ็ตการสนทนาทั้งหมด:
- ล้างสถานะการสนทนา
- ลบข้อมูลตัวเชื่อมต่อที่แคชไว้
- ตรวจสอบสิทธิ์ตัวเชื่อมต่ออีกครั้ง
- โหลดเอเจนต์เวอร์ชันล่าสุด
ใช้คำสั่งนี้เมื่อ:
- บอทดูเหมือนจะ "ติดอยู่" กับข้อมูลที่ล้าสมัย
- การรับรองความถูกต้องของตัวเชื่อมต่อหมดอายุแล้ว
- หลังจากอัปเดตตรรกะของบอท
- เมื่อพฤติกรรมดูไม่สอดคล้องกัน
เพิ่มความโปร่งใสและปรับปรุงการดีบัก
เพื่อเพิ่มความโปร่งใสและปรับปรุงการดีบักสำหรับเอเจนต์ที่ใช้งานใน Teams ให้ใช้ทริกเกอร์ OnKnowledgeRequested
ใช้ OnKnowledgeRequested เพื่อเปิดเผยการสอบถามที่ถูกเขียนใหม่
Copilot Studio ปรับคำถามของผู้ใช้ใหม่ก่อนที่จะสืบค้นข้อมูล หากคุณเปิดใช้งานตัวทริกเกอร์ OnKnowledgeRequested คุณสามารถทำได้ดังนี้:
- วินิจฉัยเจตนาไม่ตรงกัน
- ทำความเข้าใจวิธีที่การสอบถามถูกปรับแต่งใหม่
- เพิ่มความไว้วางใจของผู้ใช้ในระหว่างการดีบัก
หมายเหตุ
คุณสามารถกำหนดค่าทริกเกอร์ OnKnowledgeRequested ได้เฉพาะในมุมมองโค้ดโดยใช้ YAML เท่านั้น ไม่มีการรองรับเครื่องมือออกแบบการแสดงผลด้วยภาพ
เพิ่มข้อความที่จะแสดงทั้งคำหลักและคำค้นหาเชิงความหมายที่ระบบสร้างขึ้น ตัวอย่างเช่น
kind: AdaptiveDialog
beginDialog:
kind: OnKnowledgeRequested
id: main
actions:
- kind: SendActivity
id: sendActivity_debug
activity: |-
**Debug**: sending this lexical query "{System.KnowledgeSearchQuery}"
**Debug**: sending this semantic query "{System.SearchQuery}"
inputType: {}
outputType: {}
แบบสอบถามนี้ให้การเข้าถึงแบบอ่านอย่างเดียวไปยังแบบสอบถามการค้นหาที่ปรับปรุงแล้ว (การเขียนการสอบถามใหม่) ที่แอปพลิเคชันประสานการทำงานของระบบสร้างขึ้นจากคำถามของผู้ใช้
ประโยชน์:
- ช่วยดีบักปัญหาความไม่ตรงกันของเจตนา
- แสดงให้ผู้ใช้เห็นสิ่งที่เอเจนต์ค้นหา
- สร้างความไว้วางใจในการดำเนินการของเอเจนต์
- ช่วยเหลือผู้พัฒนาในระหว่างการทดสอบ
การควบคุมเวอร์ชันและความเชื่อถือได้ของการอัปเดต
การจัดการเวอร์ชันของเอเจนต์และการรับรองว่าผู้ใช้โต้ตอบกับตรรกะล่าสุดนั้นมีความสำคัญอย่างยิ่งในสภาพแวดล้อมที่ถาวร เช่น Teams
แสดงเวอร์ชันของบอทในคําทักทายหรือหัวข้อที่กำหนดเฉพาะ
ใส่ตัวระบุเวอร์ชันโดยใช้หัวข้อคำทักทายหรือหัวข้อเวอร์ชันเฉพาะ:
Contoso Helpdesk Bot – Version 1.3 (Nov 2025)
อัปเดตค่านี้ทุกครั้งที่เผยแพร่ เพื่อช่วยให้ผู้ใช้และทีมสนับสนุนตรวจสอบได้ว่าเวอร์ชันใดที่กำลังใช้งานอยู่ การอัปเดตเมตาดาต้าาของเวอร์ชันจะรีเฟรชเนื้อหาที่แคชไว้ด้วย การเปลี่ยนชื่อหรือคำอธิบายของเอเจนต์จะกระตุ้นให้ Teams โหลดเป็นการอัปเดตใหม่โดยอัตโนมัติ
เปิดใช้งาน "บังคับเวอร์ชันใหม่ล่าสุด" เมื่อเผยแพร่
การตั้งค่า บังคับเวอร์ชันใหม่ล่าสุด จะช่วยให้ Teams โหลดตรรกะของเอเจนต์ใหม่ล่าสุดในครั้งต่อไปที่ผู้ใช้ส่งข้อความ การตั้งค่านี้ยังช่วยให้เวอร์ชันที่ถูกแคชไว้กลายเป็นโมฆะ อย่างไรก็ตาม การบังคับให้อัปเดตจะขัดจังหวะการสนทนาที่กำลังดำเนินอยู่
ข้อควรคำนึงในการปรับใช้งานเฉพาะสำหรับ Microsoft Teams
Microsoft Teams มีลักษณะการทำงานเฉพาะที่ต้องให้ความสนใจเป็นพิเศษ
กำหนดหัวข้อการทักทายให้เป็นตรรกะการเริ่มต้น
เนื่องจาก ConversationStart จะถูกทริกเกอร์เพียงครั้งเดียว คือในครั้งแรกที่มีการเพิ่มเอเจนต์
- กำหนดตรรกะการเริ่มต้นไว้ในการทักทาย
- เพิ่มคำสั่งที่ชัดเจนในคำอธิบายแอป Teams
- เตือนผู้ใช้: "หลังจากหมดเวลา ให้พิมพ์ 'hello' เพื่อเริ่มการสนทนาใหม่"
เพิ่มประสิทธิภาพทริกเกอร์และสำรอง
ผู้ใช้ Teams โต้ตอบอย่างเป็นธรรมชาติและคาดเดาไม่ได้ ให้แน่ใจว่าบอทของคุณ:
- จัดการรูปแบบการทักทายที่หลากหลาย
- รวมถึงการจัดการอําลา
- มีตัวอย่างการพูดให้เลือกหลายแบบ
- เสนอการตอบสำรองที่เป็นมิตรและเป็นประโยชน์
- ใช้คำหลักเพื่อแนะนำผู้ใช้ไปยังหัวข้อที่เกี่ยวข้อง
- ใช้
OnKnowledgeRequestedเพื่อช่วยวินิจฉัยเจตนาที่ไม่ได้รับการจับคู่ - เปลี่ยนเส้นทางไปยังหัวข้อที่เกี่ยวข้องตามคำหลัก
- ลองพูดใหม่หากบอทติดขัดจริงๆ
ตรวจสอบลักษณะการทำงานของการรับรองความถูกต้องของตัวเชื่อมต่อ
เมื่อคุณใช้ตัวเชื่อมต่อ (ServiceNow, Outlook และอื่นๆ) ให้ทดสอบ:
- ลักษณะการทำงานของการ์ดลงชื่อเข้าใช้เริ่มต้น
- จะเกิดอะไรขึ้นเมื่อโทเค็นหมดอายุ และการต่ออายุโดยอัตโนมัติทำงานอย่างไร
- กระบวนการทำให้โมฆะโดยบังคับและการให้ความยินยอมใหม่ทำงานอย่างไร
เคล็ดลับ
ตัวเชื่อมต่ออาจไม่รีเฟรชโทเค็นในระหว่างเซสชันที่ยาวนาน ใช้รีเซ็ตเมื่อไม่มีการใช้งานหรือ /debug clearstate เพื่อเรียกใช้งาน OAuth ใหม่เมื่อจำเป็น แจ้งคำสั่งนี้ให้ทีมสนับสนุนและผู้ใช้ทราบเพื่อการแก้ไขปัญหาอย่างรวดเร็ว
ทดสอบภายใต้สภาวะจริง
เนื่องจาก Teams เก็บสถานะไว้ระหว่างเซสชัน การทดสอบของคุณควรสะท้อนถึงประสบการณ์ของผู้ใช้จริง:
- ปรับใช้โดยใช้ แสดงเฉพาะฉัน
- ทดสอบสถานการณ์ที่ใช้งานต่อเนื่อง (กลับมาหลังเวลาทำการ)
- เผยแพร่การอัปเดตและตรวจสอบว่าเอเจนต์เปลี่ยนเป็นเวอร์ชันใหม่แล้ว
- ตรวจสอบการแสดงผลของ การ์ดที่ปรับเปลี่ยนได้ ทั้งบนเดสก์ท็อปและอุปกรณ์เคลื่อนที่
- ทดสอบการดำเนินการในบริบทการสนทนาที่หลากหลาย
รายการตรวจสอบการปรับใช้
| เสร็จสมบูรณ์หรือไม่ | งาน |
|---|---|
| ✓ | ทริกเกอร์การไม่ใช้งานที่กำหนดค่าให้ล้างประวัติการสนทนา |
| ✓ | ข้อความที่ส่งถึงผู้ใช้อธิบายการรีเซ็ตและแนะนำการเริ่มต้นใหม่ |
| ✓ |
/debug clearstate จัดทำเป็นเอกสารสำหรับผู้ใช้ |
| ✓ |
OnKnowledgeRequested เปิดใช้งานเพื่อความโปร่งใสระหว่างการพัฒนา |
| ✓ | ตัวระบุเวอร์ชันรวมอยู่ในการตอบ |
| ✓ | บังคับใช้เวอร์ชันใหม่ล่าสุดเมื่อเหมาะสม |
| ✓ | หัวข้อคำทักทายรวมถึงตรรกะการเริ่มต้น |
| ✓ | ลักษณะการทำงานสำรองเป็นมิตรกับผู้ใช้ |
| ✓ | การรับรองความถูกต้องของตัวเชื่อมต่อผ่านการทดสอบการหมดอายุและการต่ออายุ |
| ✓ | การทดสอบใน Teams ภายใต้สภาวะจริงเสร็จสมบูรณ์ |
ประเด็นสำคัญ
- จัดการวงจรชีวิตของเซสชันโดยการกำหนดค่าทริกเกอร์การไม่มีการใช้งานและใช้ตัวเลือกการล้างสถานะตามความเหมาะสม
- ปรับปรุงความโปร่งใสโดยการแสดงกิจกรรมของระบบผ่านการเขียนคิวรีใหม่และข้อความที่เกี่ยวข้องกับสถานะ
- คำนึงถึงลักษณะการทำงานเฉพาะของ Teams เช่น การจัดการคำทักทายด้วยตนเองและการจัดการความจำถาวร
- รักษาความน่าเชื่อถือของเอเจนต์โดยใช้แนวทางการจัดการเวอร์ชันและบังคับอัปเดตเมื่อจำเป็น
- สนับสนุนความเป็นอิสระของผู้ใช้ด้วยการให้คำสั่งการแก้ไขปัญหาแบบบริการตนเองและตัวเลือกการกู้คืนที่มีคำแนะนำ