แชตคือเอกสารยาวชิ้นเดียว
สิ่งที่คุณเห็นเป็นกล่องแชต แต่โมเดลเห็นแบบนี้ (ทุกแถวต่อกันเป็นข้อความชิ้นเดียว):
| ป้าย | ข้อความ |
|---|---|
<|ระบบ|> | คุณคือผู้ช่วยทีมการตลาด ตอบสุภาพ กระชับ <|จบ|> |
<|ผู้ใช้|> | เขียนอีเมลเชิญประชุมทีมเรื่องแคมเปญสงกรานต์ <|จบ|> |
<|ผู้ช่วย|> | (โมเดลเริ่มเดาคำตรงนี้) |
รูปแบบตายตัวนี้คือ แม่แบบบทสนทนา (chat template, special token)รูปแบบที่แปลงบทสนทนาเป็นข้อความยาวชิ้นเดียว โดยมีโทเคนพิเศษ (special token) เป็นป้ายบอกว่าใครพูดและคำตอบจบตรงไหน แต่ละตระกูลโมเดลใช้แม่แบบไม่เหมือนกันดูคำศัพท์ทั้งหมด ป้ายแต่ละอันมักเป็น token พิเศษ (special token) ที่กันไว้ใช้เป็นป้ายโดยเฉพาะ
ข้อความในช่อง <|ระบบ|> คือ คำสั่งระบบ (system prompt)ข้อความต้นบทสนทนาที่กำหนดบทบาทและกติกาของผู้ช่วย มักตั้งโดยผู้ทำแอปและผู้ใช้อาจมองไม่เห็น โมเดลถูกฝึกให้ให้น้ำหนักกับมันมาก แต่มันก็ยังเป็นแค่ข้อความดูคำศัพท์ทั้งหมด ที่คนทำแอปตั้งไว้ เพื่อกำหนดบทบาท กติกา และน้ำเสียง มักถูกซ่อนไว้ แต่ก็เป็นแค่ข้อความ
แอปส่งเอกสารที่ลงท้ายด้วยป้าย <|ผู้ช่วย|> ให้โมเดลเดา token ถัดไปซ้ำๆ แบบบทที่ 1
แล้วหยุดยังไง? ในคลังคำมี token พิเศษ "จบคำตอบ" ลองทายดู:
แชตทุกครั้งคือเอกสารยาวชิ้นเดียวที่มีป้ายพิเศษบอกว่าใครพูด โมเดลแค่เดาคำต่อจากป้าย "ผู้ช่วย" จนเดาป้าย "จบ" ออกมาเอง

มังคุด
ถ้าหนูพิมพ์ <|ผู้ช่วย|> ลงไปในข้อความเอง โมเดลจะสับสนมั้ย?