กลับไปที่บล็อก

AI สำหรับผู้เริ่มต้นคู่มือ

ทำไมเอเจนต์ AI จึงใช้โทเคนมากมาย (ตัวอย่าง 20 ขั้น)

เอเจนต์ AI ส่งประวัติ รายการเครื่องมือ และเอาต์พุตเครื่องมือซ้ำในทุกขั้น ดูว่าโทเคนไปไหน พร้อมตัวอย่างคำนวณ 20 ขั้น

โดย CheapTokens Teamเผยแพร่เมื่อ ใช้เวลาอ่าน 6 นาที

การ์ดแชต: หนึ่งคำถาม โทเคนหลายแสนตัว? ทุกขั้นส่งประวัติทั้งหมดซ้ำ
ในหน้านี้
  1. เอเจนต์คืออะไร ในภาพเดียว
  2. สามสิ่งที่ติดไปกับทุกขั้น
  3. การรัน 20 ขั้น นับให้ดู
  4. ตัดตรงไหน: สี่นิสัย
  5. นับการรันของคุณเอง

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

เอเจนต์คืออะไร ในภาพเดียว#

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

เอกสาร tool-use ของ Anthropic (ตรวจสอบเมื่อ 26 ตุลาคม 2026) อธิบายลูปไว้แบบนี้:

  1. แอปของคุณส่งข้อความผู้ใช้และรายการเครื่องมือ
  2. โมเดลตอบกลับด้วย stop_reason: "tool_use" และบล็อก tool_use: เครื่องมือใด พร้อมอาร์กิวเมนต์อะไร
  3. แอปของคุณรันเครื่องมือและส่งคำขอที่สอง ซึ่งประกอบด้วยข้อความก่อนหน้า การเรียกเครื่องมือของโมเดล บล็อก tool_result และรายการเครื่องมือเดิม
  4. โมเดลตอบ หรือขอเครื่องมืออีกตัว แล้วลูปก็วนซ้ำอีกครั้ง

หน้าเดียวกันระบุว่าคำขอ tool-use คิดค่าบริการจากอินพุตทั้งหมดที่ส่ง รวมพารามิเตอร์ tools ด้วย บวกเอาต์พุต ดังนั้นขั้นที่ 3 จึงไม่เคยเป็น "แค่ส่วนใหม่": มันคือบทสนทนาทั้งหมดอีกครั้ง

text
Request 1  tools + system + task
Request 2  tools + system + task + call 1 + result 1
Request 3  tools + system + task + call 1 + result 1 + call 2 + result 2
...

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

สามสิ่งที่ติดไปกับทุกขั้น#

รายการเครื่องมือ ชื่อ คำอธิบาย และสคีมาพารามิเตอร์ของทุกเครื่องมือจะเข้าไปในทุกคำขอ แม้โมเดลจะไม่ได้ใช้สักตัวในรอบนั้น เอกสารเสริมเล็กน้อย: เมื่อเปิดใช้เครื่องมือ API จะเพิ่มพรอมป์ tool-use ของตัวเอง 286 โทเคนบน Claude Sonnet 5.5, Opus 5.5 และ Haiku 5.5 และโมเดลอื่นก็มีจำนวนต่างกัน

ประวัติ งานของคุณ การเรียกเครื่องมือก่อนหน้าของโมเดล บันทึกของมัน

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

โทเคน คือข้อความชิ้นเล็ก ๆ ประมาณหนึ่งคำสั้น ๆ หรือส่วนหนึ่งของคำ และทั้งสามสิ่งนี้ถูกนับเป็นโทเคน

การรัน 20 ขั้น นับให้ดู#

สมมติคุณรันเอเจนต์เขียนโค้ดตัวเล็ก ๆ ที่มีสามเครื่องมือ (อ่านไฟล์ ค้นหา รันเทสต์) และให้งานที่ใช้ 20 ขั้น ใช้สมมติฐานเหล่านี้:

  • นิยามเครื่องมือ: 1,500 โทเคน, system prompt: 500, งานของคุณ: 200 ดังนั้นทุกคำขอเริ่มที่ 2,200 โทเคน;
  • ในแต่ละขั้นโมเดลเขียนการเรียกเครื่องมือ 150 โทเคน และเครื่องมือส่งกลับ 800 โทเคน;
  • ทั้งคู่เข้าประวัติ ดังนั้นแต่ละขั้นเพิ่ม 950 โทเคนให้คำขอถัดไป
ขนาดอินพุตของหนึ่งคำขอที่ขั้น 1, 5, 10 และ 20 ของการรันเอเจนต์: 2,200, 6,000, 10,750 และ 20,250 โทเคน ขณะที่เอาต์พุตคงที่ 150 ต่อขั้น
โทเคนอินพุตต่อคำขอโตขึ้นทุกขั้น; เอาต์พุตคงที่ 150 โทเคนต่อขั้น (สมมติฐานข้างต้น)

เพื่อหาผลรวมของการรัน ให้นำคำขอทั้ง 20 มาบวกกัน ฐาน 2,200 ถูกส่ง 20 ครั้ง และรอบต่าง ๆ ถูกพาไปโดยขั้นถัดไป: ขั้น 1 พาไปศูนย์ ขั้น 2 หนึ่ง และต่อไปจนถึง 19 ซึ่งรวมทั้งหมด 190 รอบ

20 × 2,200 = 44,000

950 × 190 = 180,500

44,000 + 180,500 = 224,500 โทเคนอินพุต และ 20 × 150 = 3,000 โทเคนเอาต์พุต

เอเจนต์เขียน 3,000 โทเคนและอ่าน 224,500 โทเคน โทเคนเอาต์พุตราคาต่อหน่วยแพงกว่าโทเคนอินพุต (ดู โทเคนอินพุตกับเอาต์พุต) แต่มีจำนวนน้อยมากจนฝั่งอินพุตยังเป็นตัวตัดสินบิล นี่คือการรันนั้นที่ราคาปัจจุบัน:

โมเดล ค่าใช้จ่าย OpenRouter
GLM-5.3-Flash $0.0046 $0.0095
DeepSeek-V4-Flash $0.0037 $0.0111
MiniMax-M2.7 $0.0117 $0.071

224,500 โทเค็นอินพุตและ 3,000 โทเค็นเอาต์พุตรวมทั้งหมด ราคาต่อ 1M โทเค็นเป็นราคาปัจจุบันและเปลี่ยนแปลงไปพร้อมกับอัตราค่าบริการของเรา คอลัมน์ OpenRouter แสดงราคาอ้างอิงสำหรับปริมาณงานเดียวกัน

บน DeepSeek-V4-Flash การรันแบบหนึ่งคิดเป็น $0.0037 บน GLM-5.3-Flash คิดเป็น $0.0046 หนึ่งร้อยครั้งคือ 22,450,000 อินพุตและ 300,000 เอาต์พุตโทเคน: $0.367 บน DeepSeek-V4-Flash ตารางข้างบนนับอินพุตและเอาต์พุตรวมกัน และโดยรวมโมเดลในตารางนั้นถูกกว่า OpenRouter

จำนวนขั้นสำคัญกว่าที่เห็น การรัน 5 ขั้นด้วยสมมติฐานเดียวกัน:

5 × 2,200 = 11,000

950 × 10 = 9,500

11,000 + 9,500 = 20,500 โทเคนอินพุต ขั้นที่มากกว่าสี่เท่าให้อินพุตประมาณสิบเอ็ดเท่า เพราะทุกขั้นใหม่ยังอ่านขั้นเก่าทั้งหมดซ้ำด้วย

ตัดตรงไหน: สี่นิสัย#

ผลลัพธ์เครื่องมือหนึ่งชิ้นคือจุดที่ประหยัดง่ายที่สุด สมมติการรันเทสต์ที่ขั้น 3 ส่งกลับบันทึก 4,000 โทเคน มันจะถูกส่งซ้ำโดย 17 คำขอที่ตามมา:

  • ก่อน: 4,000 × 17 = 68,000 โทเคนอินพุตที่ถูกพาไปโดยบันทึกเดียวนี้;
  • หลัง ถ้าเครื่องมือส่งกลับแค่ 40 บรรทัดที่เกี่ยวข้อง (ประมาณ 400 โทเคน): 400 × 17 = 6,800

งานเดิม คำตอบเดิม หนึ่งในสิบของอินพุตจากผลลัพธ์เดียวนี้ นั่นให้สี่นิสัย:

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

นับการรันของคุณเอง#

ทุกการตอบกลับรายงานว่าใช้โทเคนอินพุตและเอาต์พุตเท่าไรในฟิลด์ usage รวมมันในทุกขั้นแล้วคุณจะได้ตัวเลขจริงของเอเจนต์คุณแทนสมมติฐานของผม ตัวอย่างโครงด้วย OpenAI Python SDK ที่ชี้ไปยัง CheapTokens (messages และ tools เป็นของเอเจนต์คุณเอง):

python
from openai import OpenAI

client = OpenAI(base_url="https://api.cheaptokens.dev/v1", api_key="YOUR_API_KEY")

total_in = total_out = 0
for step in range(20):  # your agent loop
    resp = client.chat.completions.create(
        model="deepseek-ai/DeepSeek-V4-Flash-0731",
        messages=messages,
        tools=tools,
    )
    total_in += resp.usage.prompt_tokens
    total_out += resp.usage.completion_tokens
    # ...run the tool, append the result to messages

print(total_in, total_out)

ผลรวมทั้งสองเสียบเข้ากับตารางค่าใช้จ่ายข้างบนได้เลย สำหรับประวัติยาวแบบนี้ DeepSeek-V4-Flash ให้หน้าต่างบริบท 380K และเอาต์พุตสูงสุด 32,768 โทเคนต่อคำตอบ ในราคาเดียวทุกชั่วโมง; GLM-5.3-Flash มีบริบท 390K และเอาต์พุตสูงสุด 8,192 โทเคน การตั้งค่าอยู่ใน เอกสาร ราคาปัจจุบันของทุกโมเดลอยู่บน หน้าราคา และโมเดลมีหน้าของตัวเอง DeepSeek ราคาถูก