Skip to content
Tayakorn

Context Engineering Handbook

LEVEL 0 · ปูพื้นจากศูนย์

โทเคนกับกำแพง — นับให้เป็นก่อนบริหารเป็น

พี่จะบริหารทรัพยากรอะไรก็ตาม ต้องวัดมันได้ก่อน — และหน่วยวัดของหน้าต่างบริบทคือ โทเคน

3.1 โทเคนไม่ใช่ตัวอักษร และไม่ใช่คำ

token (อ่านว่า "โทเคน") คือชิ้นข้อความที่โมเดลตัดออกมาเป็นหน่วยประมวลผล — ไม่ตรงกับตัวอักษร ไม่ตรงกับคำ และไม่ตรงกับอะไรที่มนุษย์นับได้ด้วยตาเปล่า · คำอังกฤษสั้น ๆ ที่พบบ่อยมักเป็นหนึ่งโทเคน ส่วนคำยาวหรือคำแปลกถูกหั่นเป็นหลายชิ้น

3.2 อย่าเดา — ถามระบบ

มีเครื่องมือนับโทเคนให้ใช้ตรง ๆ ไม่ต้องประมาณเอาเอง:

from anthropic import Anthropic

client = Anthropic()
resp = client.messages.count_tokens(
    model="claude-opus-5",
    messages=[{"role": "user", "content": open("CLAUDE.md").read()}],
)
print(resp.input_tokens)

ตัวเลขที่ได้ขึ้นกับข้อความและรุ่นโมเดล — ประเด็นของบทนี้ไม่ใช่ตัวเลข แต่คือ ถาม อย่าเดา

3.3 กำแพงวันนี้อยู่ตรงไหน

รุ่นหลักในตระกูลปัจจุบัน (Opus 5, Sonnet 5, Fable 5) มีหน้าต่าง หนึ่งล้านโทเคน ส่วนรุ่นเล็กอย่าง Haiku 4.5 อยู่ที่สองแสนโทเคน

ฟังดูเยอะจนน่าจะจบปัญหาไปแล้ว — ซึ่งไม่จบครับ และเหตุผลอยู่ในบทที่ 4 กับบทที่ 10 ทั้งสองบท

3.4 เพดานขาออกก็นับด้วย

มีอีกตัวที่คนลืมบ่อย: เพดานความยาวคำตอบ (max_tokens) — และบนรุ่นใหม่ เพดานนี้นับรวมส่วนที่โมเดลใช้คิดในใจด้วย ไม่ได้นับแค่ข้อความที่เราเห็น

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

Read the full book