ข้ามไปยังเนื้อหา
Tayakorn
Context Engineering Handbook

Context Engineering Handbook

LEVEL 3 · ระดับสูง

เมื่อ context เป็นพิษ — สี่อาการ และวิธีแยกจากกัน

ทุกคนรู้จักอาการรวม ๆ ว่า "คุยยาวแล้วมันโง่ลง" — แต่คำนี้กว้างเกินกว่าจะแก้อะไรได้ เพราะข้างในมันมีสี่โรคคนละโรค คนละวิธีรักษา

วงการแยกไว้สี่อาการ และการแยกให้ออกคือทั้งหมดของบทนี้

1 · เป็นพิษของผิดหนึ่งชิ้นเข้าไปแล้วอยู่ยาวแก้: เริ่มหน้าต่างใหม่ อย่านั่งแก้ในเดิม2 · เสียสมาธิของถูกทุกชิ้น แต่เยอะเกินไปแก้: บีบอัด แล้วเริ่มจากสรุป3 · สับสนสองชิ้นหน้าตาใกล้กัน แต่คนละเรื่องแก้: เขียนเส้นแบ่ง ไม่ใช่เขียนความรู้เพิ่ม4 · ขัดกันเองสองชิ้นในหน้าต่างบอกคนละอย่างแก้: ลบของเก่า หรือติดสแตมป์กฎหัวแม่มือ: ทุกโทเคนต้องตอบได้ว่ามันอยู่ตรงนั้นทำไม
FIG 10.1 “คุยยาวแล้วโง่ลง” ไม่ใช่โรคเดียว — สี่โรคนี้แก้คนละที่ และอาการ สับสน เป็นโรคเดียวที่แก้ด้วยการเติมข้อมูลไม่ได้เลย

10.1 อาการที่ 1 · เป็นพิษ (poisoning)

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

ของจริงจากเครื่องนี้ — ตอนรันงานหลายสายพร้อมกัน เจอว่า:

Atlassian MCP ตอบกลับหลงสายข้าม session ได้ —
request ไปถูกใบเสมอ แต่ response อาจเป็นของบอร์ดอื่นที่วิ่งพร้อมกัน
→ เขียนเสร็จต้องยืนยันด้วยการอ่านกลับทุกครั้ง และอย่ารีบ "แก้กลับ" ก่อนตรวจ

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

วิธีแก้: ยืนยันด้วยแหล่งใหม่ก่อนลงมือต่อ · ถ้ารู้ตัวว่ามีของผิดเข้าไปแล้ว เริ่มหน้าต่างใหม่ อย่านั่งแก้ในหน้าต่างเดิม เพราะของผิดยังอยู่

10.2 อาการที่ 2 · เสียสมาธิ (distraction)

คืออะไร: ของในหน้าต่างถูกทุกชิ้น แต่เยอะเกินไป · โมเดลเริ่มเกาะประวัติแทนที่จะคิดใหม่ — ทำซ้ำสิ่งที่เคยทำ ทั้งที่โจทย์เปลี่ยนไปแล้ว

สังเกตยังไง: มันเริ่มตอบด้วยรูปแบบเดิมซ้ำ ๆ หรือย้อนไปทำขั้นตอนที่ทำผ่านไปแล้ว

วิธีแก้: บีบอัดตามบทที่ 8 · หรือเริ่มใหม่จากสรุป

10.3 อาการที่ 3 · สับสน (confusion)

คืออะไร: ในหน้าต่างมีของสองชิ้นที่ หน้าตาใกล้กันมากแต่คนละเรื่อง — โมเดลหยิบผิดชิ้น

นี่คืออาการที่แก้ด้วยการ "ให้ข้อมูลเพิ่ม" ไม่ได้ เพราะปัญหาไม่ใช่ข้อมูลไม่พอ แต่คือไม่มีเส้นแบ่ง

ของจริงจากเว็บนี้ — ใน CLAUDE.md มีบรรทัดที่หน้าตาแปลก ๆ อยู่บรรทัดหนึ่ง:

⚠️ อาการหลังหน้าตาเหมือนข้อ `node_modules` ข้างล่างมาก แต่คนละเรื่องคนละวิธีแก้ —
   ถ้าเพิ่งฆ่าเซิร์ฟเวอร์มา ให้ `rm -rf .next` ก่อนเสมอ **อย่าเพิ่งไปรื้อ `node_modules`**

บรรทัดนี้ไม่ได้เพิ่มความรู้ใหม่เลยสักคำ — ความรู้ทั้งสองเรื่องอยู่ในไฟล์นั้นอยู่แล้วทั้งคู่ · สิ่งที่มันเพิ่มคือ เส้นแบ่ง พร้อมสัญญาณว่าจะแยกยังไง ("ถ้าเพิ่งฆ่าเซิร์ฟเวอร์มา")

และมันถูกเขียนขึ้นมาเพราะเคยหยิบผิดมาแล้วจริง ๆ — ไปรื้อของที่ไม่ได้พัง

วิธีแก้: เขียนเส้นแบ่งใส่เข้าไป ไม่ใช่เขียนความรู้เพิ่ม · ถ้าของสองอย่างสับสนกันได้ ให้บอกไปเลยว่าแยกยังไงและอันไหนมาก่อน

10.4 อาการที่ 4 · ขัดกันเอง (clash)

คืออะไร: ในหน้าต่างมีของสองชิ้นที่ บอกคนละอย่าง — กติกาเก่ากับกติกาใหม่ ข้อมูลเวอร์ชันเดือนที่แล้วกับของวันนี้ · โมเดลไม่มีทางรู้ว่าอันไหนชนะ

สังเกตยังไง: มันลังเล ตอบก้ำกึ่ง หรือทำตามอันเก่าโดยไม่บอกว่าทำไม

วิธีแก้: ของเก่าต้องถูกลบ ไม่ใช่แค่ถูกทับ · ถ้าลบไม่ได้ ต้องติดสแตมป์ว่าอันไหนใช้ไม่ได้แล้ว (บทที่ 9)

10.5 ตารางแยกโรค

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

อ่านแบบเต็มเล่ม