Skip to content
โมเดลและงานวิจัย

ช่วงบริบท

context length · context limit

กล่าวโดยย่อ

ช่วงบริบทคือจำนวนโทเคนสูงสุดที่โมเดลสามารถประมวลผลได้ในคำขอหนึ่งครั้ง มันประกอบด้วยคำสั่งระบบ ตัวอย่างเครื่องมือ ประวัติการสนทนา เอกสารที่แนบมา และผลลัพธ์ที่สร้างขึ้น สิ่งที่อยู่นอกเหนือจากช่วงนี้จะมองไม่เห็นโดยโมเดล

หน้าต่างบริบท (context window) เป็นขีดจำกัดที่ตายตัว และเป็น งบประมาณที่ใช้ร่วมกัน ทุกอย่างแข่งขันกันเพื่อพื้นที่เดียวกัน: คำแนะนำของระบบ, สคีมาของเครื่องมือ, การสนทนาที่ผ่านมา, ข้อความที่ดึงมา, ไฟล์ที่แนบมา, และการตอบสนองที่กำลังสร้างขึ้น

รายการสุดท้ายนี้ทำให้หลายคนประหลาดใจ อินพุตที่ยาวมากอาจเหลือพื้นที่ไม่เพียงพอสำหรับการตอบที่ยาว ทำให้ผลลัพธ์หยุดกลางประโยคโดยไม่มีเหตุผลที่ชัดเจน

บริบทที่ยาวก็เสื่อมถอยไม่สม่ำเสมอเช่นกัน การวิจัยเกี่ยวกับพฤติกรรมของบริบทที่ยาวพบว่าเส้นโค้งความแม่นยำเป็นรูปตัว U: ข้อเท็จจริงที่อยู่ต้นและท้ายของอินพุตที่ยาวจะถูกเรียกคืนได้น่าเชื่อถือมากกว่าข้อเท็จจริงที่อยู่ตรงกลาง กฎการปฏิบัติที่ตามมาโดยตรงคือ: คำแนะนำต้องมาก่อน คำถามปัจจุบันต้องอยู่ท้ายสุด และไม่มีการเว้นวรรค

ค่าใช้จ่ายก็ติดตามงบประมาณเดียวกัน API แชทส่วนใหญ่จะส่งการสนทนาทั้งหมดใหม่ทุกครั้ง ดังนั้นเธรดที่ยาวจะแพงขึ้นเร็วกว่าจำนวนข้อความที่แสดง การแคชพรอมต์ ช่วยลดราคาของส่วนนำหน้าที่ไม่เปลี่ยนแปลง แต่เฉพาะเมื่อส่วนนำหน้านั้นเหมือนกันทุกไบต์ระหว่างคำขอ

วิธีแก้ไขทั่วไปสำหรับการชนขีดจำกัดไม่ใช่หน้าต่างที่ใหญ่ขึ้น แต่เป็นการ ดึงข้อมูล: ดึงข้อความไม่กี่ข้อความที่เกี่ยวข้องกับคำถามและส่งข้อความเหล่านั้น

คำถามที่พบบ่อย

การมีช่วงบริบทที่กว้างขึ้นทำให้คำตอบดีขึ้นหรือไม่?
ไม่ใช่โดยอัตโนมัติ โมเดลจะดึงข้อมูลที่อยู่ใกล้เริ่มต้นและปลายของข้อมูลอินพุตยาวได้ดีกว่าข้อมูลในส่วนกลาง ดังนั้นความสำคัญจึงมีน้ำหนักมากกว่าปริมาณ
เมื่อการสนทนาเกินขอบเขตจะเกิดอะไรขึ้น?
แอปพลิเคชันต้องทิ้ง, สรุป, หรือส่งออกการสนทนาที่เก่า โมเดลไม่สามารถมองเห็นอะไรที่อยู่นอกหน้าต่าง และจะไม่แจ้งเตือนคุณว่าได้ลบสิ่งใดไป

ดูเพิ่มเติม

อัปเดตล่าสุด 22 ส.ค. 2569

อ่านในภาษา