ศัตรูตัวร้าย: “Context Rot” และ “Lost in the Middle”
ความเข้าใจผิดที่พบบ่อยคือ “ยิ่ง Context Window ใหญ่ ยิ่งยัดข้อมูลได้มาก AI ก็ยิ่งฉลาด” แต่ความจริงตรงกันข้าม งานวิจัย Context Rot ของ Chroma ที่ทดสอบโมเดลแนวหน้า 18 ตัว (GPT-4.1, Claude 4, Gemini 2.5, Qwen3) พบว่าประสิทธิภาพเริ่มไม่น่าเชื่อถือเมื่อ input ยาวขึ้น และดิ่งลง ตั้งแต่ก่อน Context Window จะเต็มด้วยซ้ำ[1]
สอดคล้องกับงานคลาสสิกของ Stanford ชื่อ Lost in the Middle ที่ชี้ว่า LLM ดึงข้อมูลได้ดีเฉพาะ “ต้น” และ “ท้าย” ของบริบท (เส้นโค้งรูปตัว U) แต่ข้อมูลสำคัญที่อยู่ “ตรงกลาง” เอกสารยาว ๆ ประสิทธิภาพจะดิ่งลง[2] เป้าหมายจริงจึงคือ ส่งชุด Token ที่สัญญาณชัดที่สุดในจำนวนน้อยที่สุด (High Signal, Low Noise)
กฎข้อแรก: Budget by Fill %
อย่ามอง Token เป็นตัวเลขดิบ แต่ให้มองเป็น เปอร์เซ็นต์พื้นที่ที่ใช้ (Fill %) แล้วคุมเชิงรุกตามโซนสี[3]
- Green (0–40%): บันทึกประวัติและการเรียกเครื่องมือตามปกติ
- Yellow (41–60%): เริ่มสแกนส่วนเกินและย่อใจความแบบเลือกจุด (Selective Summarization)
- Red (> 60%): บังคับล้างและบีบอัดเชิงรุก (Active Eviction & Compression) ก่อนประสิทธิภาพเริ่มตก
5 กับดัก Context ที่ต้องเลี่ยง (Anti-patterns)
ในระบบจริงมักพลาดในการจัดการ Context อยู่ 5 รูปแบบหลัก ซึ่งแก้ได้ตรงจุดดังนี้[4]
|
อาการพัง |
เกิดอะไรขึ้น |
วิธีแก้ |
|
1. Kitchen Sink |
ยัดเอกสารทั้งหมดเข้า Context เผื่อ AI ได้ใช้ |
ใช้ RAG ดึงเฉพาะ Chunk ที่เกี่ยวข้อง ณ เทิร์นนั้น |
|
2. Replay |
ส่งประวัติการคุยทั้งหมดกลับไปทุกเทิร์น |
สรุป (Summarization) ประเด็นเก่าให้เหลือใจความสั้น |
|
3. Broadcaster |
ส่ง Context ชุดเดียวกันให้ Agent ทุกตัว |
ทำ Routing ส่งเฉพาะข้อมูลที่แต่ละบทบาทต้องใช้ |
|
4. Hoarder |
ไม่เคยลบข้อมูลเก่าทิ้งตลอด Session |
ตั้ง Eviction Policy ลบผลลัพธ์/ประวัติที่ไม่ใช้แล้ว |
|
5. Recomputer |
ประมวลผล/ดึงข้อมูลซ้ำใหม่ทุกเทิร์น |
ทำ Caching เก็บผลที่เคยหาไว้ ลดภาระและ Token |
เรียนรู้จากสาย Coding Agent
โค้ดคือห้องทดลองที่ดีที่สุด เพราะโครงสร้างชัดและวัดแพ้–ชนะได้ในไม่กี่วินาทีผ่าน Test Suite เทคนิคที่นำมาปรับใช้ได้[5]
• ไฟล์นำทาง (AGENTS.md): สรุปโครงสร้างระบบ กฎที่ห้ามละเมิด และเป้าหมายไว้ในไฟล์เดียว เป็น “สมองส่วนกลาง” ที่ใช้พื้นที่น้อยแต่ทรงพลัง
• Sandbox Tool Output: แทนที่จะเท Logs พันบรรทัดลง Context ก็ใช้สคริปต์ดึงเฉพาะบรรทัดที่ Error ลด Token ได้ถึง ~95–99%
วัดผลอย่างไรว่าเวิร์คจริง
อย่าวัดแค่ Accuracy เพราะระบบที่แม่นแต่กิน Token มหาศาลก็ใช้จริงไม่ได้ ให้ดูสมดุล 4 ตัวชี้วัดพร้อมกัน: Recall Rate (หลังบีบอัดยังจำข้อมูลสำคัญได้ไหม), Tokens per Task (ยิ่งน้อยยิ่งประหยัดต้นทุน), Latency (Context บวมทำให้ตอบช้าลง) และ Task Success Rate (อัตราสำเร็จต้องไม่ลดหลังจัดระเบียบข้อมูล)[6]
บทสรุป
Context Engineering ภาคปฏิบัติไม่ใช่ศิลปะที่ใช้สัญชาตญาณ แต่คือวิศวกรรมที่ต้อง วัดผล → หาจุดบกพร่อง → แก้ด้วยโครงสร้างข้อมูลที่เหมาะสม → วัดผลซ้ำ เมื่อคุมการไหลของข้อมูลได้และรักษาพื้นที่ทำงานของ AI ให้สะอาด ผลลัพธ์คือ Agent ที่แม่นขึ้น ประหยัดต้นทุน (API Costs) และเร็วขึ้นอย่างชัดเจนครับ
อ้างอิง
[1] Hong, K., Troynikov, A., & Huber, J. (2025). Context Rot: How Increasing Input Tokens Impacts LLM Performance. Chroma. https://www.trychroma.com/research/context-rot
[2] Liu, N. F., et al. (2024). Lost in the Middle: How Language Models Use Long Contexts. TACL 12, 157–173. https://arxiv.org/abs/2307.03172
[3] fundesk.io (2026). Context Engineering for AI Coding Agents: 9 Techniques for 2026. https://www.fundesk.io/context-engineering-techniques-ai-coding-agents-2026
[4] ivern.ai (2026). AI Agent Context Engineering: Complete Guide to Context Window Optimization. https://ivern.ai/blog/ai-agent-context-engineering-complete-guide-2026
[5] Sourcegraph (2026). Context Engineering: A Practical Guide for AI Agents. https://sourcegraph.com/blog/context-engineering
[6] mem0.ai (2026). State of AI Agent Memory 2026. https://mem0.ai/blog/state-of-ai-agent-memory-2026

