บทที่ 2 · AI เข้าใจความหมายยังไง หน้า 8/12 ~3 นาที

Context window: ความจำระยะสั้นมีขีดจำกัด

ทุกโมเดลมี หน้าต่างบริบท (context window)จำนวน token สูงสุดที่โมเดลมองเห็นได้ในครั้งเดียว นับรวมทั้งคำสั่งและคำตอบดูคำศัพท์ทั้งหมด คือจำนวน โทเคน (token)ชิ้นข้อความที่ AI มองเห็นจริงๆ อาจเป็นทั้งคำ ส่วนของคำ หรือตัวอักษรเดียว แต่ละชิ้นมีเลขประจำตัวดูคำศัพท์ทั้งหมด สูงสุดที่มันเห็นได้ในครั้งเดียว นับรวมทั้งสิ่งที่คุณพิมพ์ ไฟล์ที่แนบ ประวัติแชต และ คำตอบที่มันกำลังเขียน

ส่วนไหนเกิน window = โมเดลไม่เห็นเลย ไม่ใช่ "เห็นลางๆ"

ทำไมถึงขยายไม่ได้ง่ายๆ? จำได้มั้ยว่า กลไกความสนใจ (attention)วิธีที่แต่ละคำเลือกว่าจะ "ฟัง" คำอื่นในประโยคมากน้อยแค่ไหน โดยใช้ softmax แบ่งน้ำหนักให้รวมได้ 100%ดูคำศัพท์ทั้งหมด ให้ทุกคำเทียบกับทุกคำ จำนวนคู่ที่ต้องเทียบจึงโตแบบยกกำลังสอง ():

  • 1,000 token → 1,000,000 คู่
  • 2,000 token → 4,000,000 คู่

ข้อความยาวขึ้น 2 เท่า งานเพิ่ม 4 เท่า

เอกสารยาวแค่ไหน ถึงล้น context window?

สมมติภาษาไทย ~600 token/หน้า A4 (เป็นค่าประมาณ ขึ้นกับภาษาและ tokenizer)

context window:

ล้น 22K token — โมเดลไม่เห็นส่วนนี้เลย (เห็นแค่ 8K จาก 30K)

attention ต้องเทียบทุกคู่ (n²)8K² = 64M คู่
ถ้าข้อความยาวขึ้น 2 เท่า16K² = 256M คู่ยาว 2 เท่า → งาน ×4
สรุปตัวเลข context window (ตารางตัวเลขสำหรับโปรแกรมอ่านหน้าจอ)
รายการค่า
ความยาวเอกสาร50 หน้า
จำนวน token โดยประมาณ30K
context window8K
token ที่โมเดลเห็น8K
token ที่ล้น22K
จำนวนคู่ที่ attention เทียบ64M

ลองเลื่อนความยาวเอกสาร แล้วสลับขนาด window ดูว่าส่วนไหน "ล้น" และจำนวนคู่โตเร็วแค่ไหน

AI เห็นข้อความได้จำกัดในแต่ละครั้ง และยิ่งยาวยิ่งใช้พลังคำนวณมากขึ้นแบบยกกำลังสอง

อยู่ใน window ก็ใช่ว่าจะใช้ได้ดีเท่ากันหมด งานวิจัยของ Liu และคณะ (2023) ชื่อ "Lost in the Middle" ทดลองแล้วพบว่า โมเดลหลายตัวที่ทดสอบใช้ข้อมูลที่อยู่ช่วงกลางของข้อความยาวได้แย่กว่าข้อมูลที่อยู่ต้นหรือท้าย ผลนี้ขึ้นกับโมเดลและงาน รุ่นหลังอาจดีขึ้นแล้ว แต่ยังเป็นข้อควรระวังที่ดี

มังคุด มาสคอตมังคุด

มังคุด

แปลว่าคุยนานๆ มันลืมต้นเรื่องได้ใช่มั้ย?