การลดต้นทุนการวิเคราะห์เจาะลึก
วิธีประเมินค่าใช้จ่ายของ AI agent
ทำไมบิลของ agent จึงถูกครอบงำด้วย input tokens สูตรที่คุณรันได้ก่อนที่ agent จะทำงาน ตัวอย่าง 30 ขั้นตอนที่คำนวณจริง และเจ็ดวิธีลดค่าใช้จ่าย

ในหน้านี้
AI agent ไม่ได้ส่งคำขอเพียงครั้งเดียว — แต่ส่งหลายสิบครั้ง และทุกขั้นตอนจะส่งบทสนทนาที่โตขึ้นซ้ำอีกครั้ง นั่นคือเหตุผลที่ค่าใช้จ่ายของ agent ถูกครอบงำด้วย input tokens และเป็นเหตุผลที่สัญชาตญาณ "ราคาต่อคำตอบ" จากแอปแชทใช้ไม่ได้ นี่คือวิธีประเมินค่าใช้จ่ายก่อนที่ agent จะทำงาน และเงินไปอยู่ที่ไหนจริง ๆ
สูตร#
ค่าใช้จ่ายของหนึ่งคำขอคือ input tokens คูณราคา input บวก output tokens คูณราคา output ราคาถูกคิดต่อล้าน tokens:
request_cost = input_tokens / 1,000,000 × input_price
+ output_tokens / 1,000,000 × output_priceค่าใช้จ่ายของงานคือผลรวมของทุกคำขอที่ agent ส่งในขณะแก้ปัญหา
ทำไม agent จึงเน้น input#
ในทุกขั้นตอน agent ส่งให้โมเดล:
- system prompt และคำจำกัดความของเครื่องมือ
- ประวัติทั้งหมดจนถึงตอนนี้ — ข้อความก่อนหน้า คำตอบก่อนหน้าของโมเดล และผลลัพธ์จากเครื่องมือ (เนื้อหาไฟล์ เอาต์พุตคำสั่ง ผลการค้นหา)
- คำสั่งใหม่
โมเดลมักตอบด้วยข้อความสั้น ๆ หรือการเรียกเครื่องมือ จากนั้นผลลัพธ์จากเครื่องมือจะถูกต่อท้ายประวัติ และขั้นตอนถัดไปจะส่งทุกอย่างซ้ำอีกครั้ง ดังนั้น input ของแต่ละขั้นตอนจึงเพิ่มขึ้น ในขณะที่ output ยังคงน้อย
ตัวอย่างที่คำนวณจริง#
เงื่อนไข (สมมติฐาน — แทนที่ด้วยตัวเลขจาก agent ของคุณ):
- system prompt และคำจำกัดความของเครื่องมือ: 6,000 tokens
- แต่ละขั้นตอนเพิ่ม 1,500 tokens ของผลลัพธ์จากเครื่องมือ และ 500 tokens ของเอาต์พุตโมเดลลงในประวัติ
- งานใช้ 30 ขั้นตอน
- โมเดล: DeepSeek-V4-Flash ที่ $0.0221 ต่อ 1M input tokens และ $0.10 ต่อ 1M output tokens (ราคาปัจจุบัน)
input ของขั้นตอนที่ n คือ 6,000 + (n − 1) × 2,000 tokens ตลอด 30 ขั้นตอน:
- input รวม: 30 × 6,000 + 2,000 × (0 + 1 + … + 29) = 180,000 + 870,000 = 1,050,000 tokens
- output รวม: 30 × 500 = 15,000 tokens
- ค่าใช้จ่าย: 1.05 × $0.0221 + 0.015 × $0.10 ≈ $0.0247 ต่องาน
input คิดเป็น 98.6% ของ tokens และเกือบทั้งหมดของค่าใช้จ่าย ระดับที่ input ครอบงำขึ้นอยู่กับสถานการณ์: คำตอบยาว ไฟล์ที่สร้างขึ้น และโมเดลที่ใช้การให้เหตุผลจะเพิ่มสัดส่วน output ในขณะที่ประวัติที่ถูกตัดทอนและเอาต์พุตเครื่องมือสั้น ๆ จะลดสัดส่วน input
งานเดียวกันบนทุกโมเดลที่ราคาปัจจุบัน โดยมีราคาอ้างอิงของ OpenRouter สำหรับการเปรียบเทียบ:
| โมเดล | Input $/1M | Output $/1M | ค่าใช้จ่าย | OpenRouter |
|---|---|---|---|---|
| GLM-5.3-Flash | $0.027 | $0.08 | $0.0296 | $0.0534 |
| DeepSeek-V4-Flash | $0.0221 | $0.10 | $0.0247 | $0.0264 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.0548 | $0.333 |
1,050,000 โทเค็นอินพุตและ 15,000 โทเค็นเอาต์พุตรวมทั้งหมด ราคาต่อ 1M โทเค็นเป็นราคาปัจจุบันและเปลี่ยนแปลงไปพร้อมกับอัตราค่าบริการของเรา คอลัมน์ OpenRouter แสดงราคาอ้างอิงสำหรับปริมาณงานเดียวกัน
ประเมินด้วยโค้ด#
การคำนวณเดียวกันในรูปแบบฟังก์ชัน — เปลี่ยนสมมติฐานและราคา:
def estimate(steps, base_tokens, tool_tokens, out_tokens, price_in, price_out):
"""Token totals and cost of one agent task. Prices: $ per 1M tokens."""
grow = tool_tokens + out_tokens # what each step adds to the history
total_in = steps * base_tokens + grow * steps * (steps - 1) // 2
total_out = steps * out_tokens
cost = (total_in * price_in + total_out * price_out) / 1_000_000
return total_in, total_out, round(cost, 5)
# example rates, $ per 1M tokens — put in the current ones from the pricing table below
print(estimate(30, 6_000, 1_500, 500, price_in=0.10, price_out=0.40))
# (1050000, 15000, 0.111)สังเกตพจน์กำลังสอง: การเพิ่มจำนวนขั้นตอนเป็นสองเท่าจะทำให้ input เพิ่มขึ้นประมาณสี่เท่า เซสชันยาว ๆ แพงขึ้นไม่ใช่เพราะขั้นตอนใดขั้นตอนหนึ่ง แต่เพราะทุกขั้นตอนพาประวัติทั้งหมดไปด้วย
วัดแทนการเดา#
ทุกการตอบกลับมี usage. (input) และ usage. (output) บันทึกค่าเหล่านี้สำหรับแต่ละขั้นตอนของงานจริง คูณด้วยอัตราปัจจุบัน แล้วคุณจะได้ค่าใช้จ่ายจริง แดชบอร์ดยังแสดงการใช้งานตามโมเดลและตามวัน
อัตราปัจจุบัน — ข้อมูลเดียวกับบนหน้าราคา:
| โมเดล | บริบท | Input $/1M | Output $/1M | OpenRouter เข้า | OpenRouter ออก |
|---|---|---|---|---|---|
| GLM-5.3-Flash reasoning ไม่พร้อมใช้งานชั่วคราว | 390K | $0.027 | $0.08 | $0.048 | $0.20 |
| DeepSeek-V4-Flash ไม่พร้อมใช้งานชั่วคราว | 380K | $0.0221 | $0.10 | $0.016 | $0.64 |
| MiniMax-M2.7 ไม่พร้อมใช้งานชั่วคราว | 200K | $0.05 | $0.15 | $0.30 | $1.20 |
ราคาเป็น USD ต่อ 1 ล้านโทเค็น ตัวเลขของ OpenRouter แสดงไว้เพื่อเปรียบเทียบและอาจมีการเปลี่ยนแปลง
เจ็ดวิธีลดค่าใช้จ่าย#
- เริ่มงานใหม่สำหรับงานที่ไม่เกี่ยวข้อง เซสชันใหม่จะไม่พาประวัติของเซสชันก่อนหน้าไปด้วย
- ให้ agent รับส่วนย่อย ไม่ใช่ไฟล์ทั้งไฟล์ ฟังก์ชันและผู้เรียกใช้ แทนที่จะเป็นโมดูล 3,000 บรรทัด
- ตัดทอนเอาต์พุตเครื่องมือ บันทึกยาว ๆ และเอาต์พุตคำสั่งจะอยู่ในประวัติไปตลอดเซสชันที่เหลือ — จำกัดมัน เช่นด้วย
| tail -n 50 - สรุปเซสชันยาว ๆ agent หลายตัวสามารถย่อประวัติได้ ใช้มันก่อนที่บริบทจะยาว
- จำกัดความยาวคำตอบ ด้วย
max_tokensในจุดที่ไม่ต้องการคำตอบยาว - ใช้โมเดลที่เหมาะสมกับขั้นตอน ขั้นตอนroutine ไม่จำเป็นต้องใช้โมเดลที่ให้เหตุผล
- เก็บงบประมาณแบบเติมเงิน ยอดคงเหลือเป็นแบบเติมเงิน: เมื่อหมด คำขอจะหยุดด้วย HTTP 402 แทนที่จะสร้างบิลแบบเปิด-ended
หากต้องการดูว่า workload เดียวกันเปรียบเทียบข้ามโมเดลและกับ OpenRouter อย่างไร ให้ใช้การเปรียบเทียบค่าใช้จ่ายบนหน้าแรก



