สรุปส่งต่อแบบมีโครงสร้างเมื่อยกให้คน
แนวคิด
กลางเวิร์กโฟลว์บางครั้ง agent ต้องยกงานให้คนจริงจัดการต่อ เช่น เคสที่ต้องใช้ข้อยกเว้นเชิงนโยบาย จุดนี้คุณภาพของ "สรุปส่งต่อ" เป็นตัวชี้ว่าคนที่รับไม้ต่อจะทำงานได้ราบรื่นหรือต้องเริ่มสืบใหม่ทั้งหมด
สรุปส่งต่อที่ดีต้องมีโครงสร้างและครบประเด็นที่คนปลายทางต้องใช้ตัดสินใจ อย่างน้อยควรมี customer ID, การวิเคราะห์ root cause, จำนวนเงินหรือรายละเอียดที่เกี่ยวข้อง และการกระทำที่แนะนำ เหตุผลที่ต้องครบ เพราะคนที่รับต่อมักไม่มีสิทธิ์เข้าถึงบทสนทนาทั้งหมดที่ agent คุยกับลูกค้ามา สรุปจึงเป็นข้อมูลชุดเดียวที่เขามี
ทำไมสำคัญ
จุดที่พลาดกันบ่อยคือการตัดสินใจว่า "เมื่อไรควรยกให้คน" ไม่ใช่ตอน "ยกอย่างไร" พิจารณ Sample Question ข้อ 3 agent ทำ first-contact resolution ได้ 55 เปอร์เซ็นต์ ต่ำกว่าเป้า 80 เปอร์เซ็นต์ log พบว่ามันยกเคสง่าย ๆ ให้คน เช่น การเปลี่ยนสินค้าชำรุดที่มีหลักฐานภาพชัด แต่กลับพยายามจัดการเคสซับซ้อนที่ต้องใช้ข้อยกเว้นนโยบายด้วยตัวเอง
คำตอบที่ดีที่สุดคือเพิ่มเกณฑ์การยกเคสที่ชัดเจนใน system prompt พร้อมตัวอย่าง few-shot ว่าเมื่อไรควรยก เมื่อไรควรจัดการเอง เพราะรากของปัญหาคือขอบเขตการตัดสินใจที่ไม่ชัด นี่คือการตอบสนองที่ได้สัดส่วนก่อนจะไปเพิ่มโครงสร้างหนัก ๆ
ทางเลือกที่พลาดคือให้ agent รายงานคะแนนความมั่นใจของตัวเองแล้วยกเมื่อต่ำกว่าเกณฑ์ ซึ่งใช้ไม่ได้เพราะโมเดลปรับเทียบความมั่นใจได้แย่ มันมั่นใจผิด ๆ ในเคสยากอยู่แล้ว หรือการฝึก classifier แยกต่างหาก ซึ่ง over-engineer เกินไปทั้งที่ยังไม่ได้ลองปรับ prompt
เมื่อขอบเขตการยกชัดแล้ว จึงมาถึงเรื่องรูปแบบสรุปส่งต่อที่มีโครงสร้างในบทนี้ สองเรื่องนี้เสริมกัน คือ ตัดสินใจยกให้ถูกเคส แล้วส่งต่อด้วยข้อมูลที่ครบ
ตัวอย่าง
{
"customer_id": "cus_8842",
"root_cause": "สินค้าชำรุดจากการขนส่ง เกินวงเงินคืนอัตโนมัติ",
"refund_amount": 1290,
"recommended_action": "อนุมัติคืนเงินเต็มจำนวนโดยผู้มีอำนาจระดับ 2"
}
โครงสร้างนี้ให้พนักงานที่ไม่เห็นบทสนทนาเดิมมีทุกอย่างที่ต้องใช้ตัดสินใจในทันที
เช็คความเข้าใจ
ทำไมสรุปส่งต่อให้คนจึงต้องมีโครงสร้างและครบ เช่น customer ID, root cause, การกระทำที่แนะนำ
วิธีที่ได้สัดส่วนที่สุดในการแก้ปัญหา agent ยกเคสผิดจังหวะ คืออะไร