Bash wrappers ใช้โทเคนมากกว่า Model Context Protocol (MCP) แบบเจ็ดสกีมา (seven-schema) ในการทดสอบด้วยคำถาม 12 ข้อ ซึ่งแสดงให้เห็นว่า shell ไม่ใช่ทางลัดราคาถูกอย่างที่วิศวกรหลายคนคิด การใช้โทเคนส่งผลโดยตรงต่อต้นทุนสำหรับเอเจนต์ Large Language Model (LLM) ที่ทำงานในระดับสเกลใหญ่

การทดลองที่พลิกความคาดหมาย

นักพัฒนาได้ทำการวัดผล 4 วิธีที่เอเจนต์ LLM สามารถดึงข้อมูลเรือได้:

  • MCP – สกีมาเครื่องมือ (tool schemas) 7 ชุดที่โฮสต์ผ่าน Model Context Protocol
  • Bash + curl (cold) – การเรียกใช้ shell แบบดิบโดยไม่มีการใส่ prompt เพิ่มเติม
  • Bash + curl (warm) – การเรียกใช้ shell แบบเดิมแต่เพิ่ม system prompts เพื่อแนะนำการใช้งานอย่างปลอดภัย
  • Dedicated CLI tool – เครื่องมือ command-line interface ที่สร้างขึ้นมาเพื่อวัตถุประสงค์เฉพาะ

ทั้ง 4 วิธีถูกทดสอบผ่านการสนทนา 12 คำถาม ผลการใช้โทเคนซึ่งเป็นตัวกำหนดค่าใช้จ่าย API มีดังนี้:

  • MCP: 109,779 โทเคน
  • Bash + curl (cold): 158,021 โทเคน
  • Bash + curl (warm): 178,577 โทเคน

ไม่มีการเปิดเผยตัวเลขของ dedicated CLI tool แต่เพียงแค่สองรูปแบบของ Bash ก็ใช้จ่ายมากกว่า MCP ไปแล้ว

ทำไม shell ถึงมีต้นทุนสูงกว่าโปรโตคอล

เครื่องมือ Bash แต่ละตัวต้องใช้ “harness prompts” ประมาณ 2,700 โทเคน ซึ่งก็คือคำแนะนำที่บอกเอเจนต์ว่าต้องเรียกใช้ shell อย่างไรให้ปลอดภัย, วิธีการ parse ผลลัพธ์ และการจัดการข้อผิดพลาด ลำพังแค่ prompt เหล่านี้ก็มีน้ำหนักโทเคนรวมกันมากกว่าสกีมาทั้ง 7 ชุดของ MCP เสียอีก

ต้นทุนไม่ได้มีแค่การเรียกใช้ครั้งแรก ในสภาพแวดล้อมการใช้งานจริง (production) เอเจนต์ตัวเดียวกันนี้ได้โหลด 11 MCP servers ไว้ล่วงหน้าตั้งแต่เริ่มทำงาน ซึ่งใช้ไปถึง 19,800 โทเคน ก่อนที่คำถามแรกจากผู้ใช้จะมาถึงเสียอีก นอกจากนี้ ในทุกๆ รอบการสนทนา เอเจนต์จะอ่านสกีมาใหม่จากทุกเซิร์ฟเวอร์ ดังนั้นแม้แต่คำถามง่ายๆ อย่าง “ตอนนี้กี่โมงแล้ว?” ก็ยังต้องจ่ายราคาโทเคนเท่ากับคำอธิบายของเครื่องมืออื่นๆ ทั้งหมด

การสูญเสียที่ซ่อนอยู่จากการทำ eager loading

เมื่อเอเจนต์ LLM ทำการโหลด tool server ทุกตัวแบบ eager loading ในทุกๆ รอบการสนทนา ค่าใช้จ่ายโทเคนจะพุ่งสูงขึ้นอย่างมหาศาล การทดลองแสดงให้เห็นว่าต้นทุน "ที่แท้จริง" ของการใช้ Bash ไม่ใช่ตัวคำสั่ง shell เอง แต่เป็นบริบท (context) รอบข้างที่ต้องถูกส่งไปยังโมเดลในทุกๆ ครั้ง

  • เครื่องมือที่มีต้นทุนคงที่ (MCP schemas) จะเพิ่ม overhead ของโทเคนในแต่ละรอบที่คาดการณ์ได้
  • Dynamic payloads (การตอบกลับจาก curl) จะเพิ่มหนี้ที่พอกพูนขึ้นตามความยาวของการสนทนาและขนาดของข้อมูล

ดังนั้น shell ที่ดูเหมือนจะ "ฟรี" ในเบื้องต้น แท้จริงแล้วกลับเป็นการเรียกเก็บภาษีโทเคนในอัตราที่สูงกว่าและผันแปรได้

สิ่งที่วิศวกร AI ควรทำต่อไป

  • ใช้ lazy loading: โหลด tool server เฉพาะเมื่อจำเป็นต้องใช้สกีมาของมันจริงๆ และเก็บไว้ในหน่วยความจำตลอดการสนทนาแทนที่จะอ่านใหม่ทุกครั้ง
  • มองว่าสกีมาเครื่องมือเป็นค่าใช้จ่ายคงที่ต่อรอบ: วางแผนงบประมาณโทเคนโดยอิงจากขนาดที่ทราบกันดีของคำจำกัดความ MCP แทนที่จะทึกทักเอาเองว่าคำสั่ง shell นั้นฟรี
  • ประเมินสมมติฐาน “shell = ถูก” ใหม่: ทำการวัดผล (profile) การใช้โทเคนสำหรับแต่ละเส้นทางการใช้เครื่องมือ ก่อนที่จะตัดสินใจเลือกใช้ในการออกแบบ
  • ใช้เครื่องมือที่มีโครงสร้างชัดเจน (shaped tools) กับโมเดลขนาดเล็ก: แม้จะมี context window ที่จำกัด แต่สกีมาที่กำหนดไว้อย่างดีจะช่วยปรับปรุงการใช้เหตุผล, การแปลงหน่วย และการจัดการข้อผิดพลาด

สรุปสั้นๆ คือ: เศรษฐศาสตร์ของโทเคน (token economics) ไม่ใช่การออกแบบโปรโตคอลที่เป็นตัวกำหนดต้นทุน การจัดการว่าควรโหลด tool server เมื่อใดและอย่างไร สามารถช่วยลดจำนวนโทเคนในการสนทนาได้เป็นหมื่นๆ โทเคน ซึ่งจะช่วยลดค่าใช้จ่ายในการดำเนินงานโดยตรง

ที่มา: https://dev.to/clarkbw--/enabling-bash-costs-more-context-than-seven-mcp-tool-schemas-2h82