১২টি প্রশ্নের একটি পরীক্ষায় দেখা গেছে যে, সাতটি স্কিমা বিশিষ্ট Model Context Protocol (MCP)-এর তুলনায় Bash wrapper-গুলো বেশি টোকেন খরচ করেছে, যা প্রমাণ করে যে শেল (shell) কোনো সস্তা শর্টকাট নয় যেমনটি অনেক ইঞ্জিনিয়ার মনে করেন। টোকেন ব্যবহারের পরিমাণ সরাসরি বড় আকারের লার্জ-ল্যাঙ্গুয়েজ-মডেল (LLM) এজেন্টগুলোর খরচের সাথে সম্পর্কিত।
সেই পরীক্ষা যা প্রচলিত ধারণা বদলে দিয়েছে
একজন ডেভেলপার একটি LLM এজেন্ট কীভাবে জাহাজের তথ্য সংগ্রহ করতে পারে তার চারটি পদ্ধতি পরিমাপ করেছেন:
- MCP – Model Context Protocol-এর মাধ্যমে হোস্ট করা সাতটি টুল স্কিমা।
- Bash + curl (cold) – কোনো অতিরিক্ত প্রম্পট ছাড়াই একটি র (raw) শেল কল।
- Bash + curl (warm) – একই শেল কল এবং সাথে নিরাপদ ব্যবহারের নির্দেশিকা হিসেবে সিস্টেম প্রম্পট।
- Dedicated CLI tool – একটি নির্দিষ্ট কাজের জন্য তৈরি কমান্ড-লাইন ইন্টারফেস।
চারটি পদ্ধতিই ১২টি প্রশ্নের একটি কথোপকথনের মাধ্যমে চালানো হয়েছে। টোকেন খরচ, যা API বিল নির্ধারণ করে, তা ছিল নিম্নরূপ:
- MCP: 109,779 টোকেন
- Bash + curl (cold): 158,021 টোকেন
- Bash + curl (warm): 178,577 টোকেন
ডেডিকেটেড CLI টুলের সংখ্যা প্রকাশ করা হয়নি, তবে দুটি Bash ভেরিয়েন্ট ইতিমধ্যেই MCP-এর চেয়ে বেশি খরচ করেছে।
কেন প্রোটোকলের চেয়ে শেল বেশি খরচ করেছে
প্রতিটি Bash টুলের জন্য প্রায় 2,700 টোকেন "harness prompts"-এর প্রয়োজন ছিল – যা এজেন্টকে নির্দেশ দেয় কীভাবে নিরাপদে শেল কল করতে হয়, আউটপুট পার্স করতে হয় এবং ত্রুটি (error) মোকাবিলা করতে হয়। শুধুমাত্র এই প্রম্পটগুলোর টোকেন ওজন সাতটি MCP স্কিমার সম্মিলিত মোট টোকেন ওজনের চেয়েও বেশি।
খরচ কেবল প্রাথমিক কলের মধ্যেই সীমাবদ্ধ নয়। প্রোডাকশনে একই এজেন্ট স্টার্টআপের সময় 11টি MCP সার্ভার প্রি-লোড করেছিল, যা প্রথম ব্যবহারকারীর প্রশ্ন আসার আগেই 19,800 টোকেন খরচ করে ফেলেছিল। এরপর, প্রতিটি টার্নে এজেন্ট প্রতিটি সার্ভার থেকে প্রতিটি স্কিমা পুনরায় পড়ছিল, ফলে "এখন কয়টা বাজে?" এর মতো একটি সাধারণ অনুরোধের জন্যও অন্যান্য প্রতিটি টুলের বর্ণনার টোকেন মূল্য দিতে হচ্ছিল।
ইগার লোডিং-এর (eager loading) লুকানো খরচ
যখন একটি LLM এজেন্ট প্রতিটি টার্নে প্রতিটি টুল সার্ভার eagerly লোড করে, তখন টোকেন বিল নাটকীয়ভাবে বেড়ে যায়। পরীক্ষাটি দেখিয়েছে যে, Bash ব্যবহারের "আসল" খরচ শেল কমান্ডটি নয়, বরং এর চারপাশের কনটেক্সট (context), যা প্রতিবার মডেলের কাছে পাঠাতে হয়।
- Fixed-cost tools (MCP স্কিমা) প্রতিটি টার্নে একটি অনুমানযোগ্য টোকেন ওভারহেড যোগ করে।
- Dynamic payloads (curl রেসপন্স) একটি ক্রমবর্ধমান ঋণের মতো কাজ করে যা কথোপকথনের দৈর্ঘ্য এবং ডেটার আকারের সাথে বৃদ্ধি পায়।
সুতরাং, একটি শেল যা উপর থেকে "ফ্রি" বা বিনামূল্যে মনে হয়, তা আসলে একটি বড় এবং পরিবর্তনশীল টোকেন ট্যাক্স আরোপ করে।
এআই (AI) ইঞ্জিনিয়ারদের পরবর্তী পদক্ষেপ কী হওয়া উচিত
- Lazy loading গ্রহণ করুন। একটি টুল সার্ভার কেবল তখনই লোড করুন যখন তার স্কিমাটি আসলে প্রয়োজন হয়, এবং প্রতিবার পুনরায় পড়ার পরিবর্তে এটিকে টার্নগুলোর মধ্যে মেমরিতে রাখুন।
- টুল স্কিমাকে প্রতি টার্নের একটি নির্দিষ্ট খরচ হিসেবে বিবেচনা করুন। শেল কমান্ড বিনামূল্যে বলে ধরে না নিয়ে, MCP ডেফিনিশনের জানা আকারের ওপর ভিত্তি করে টোকেন বাজেট পরিকল্পনা করুন।
- “shell = cheap” বা শেল সস্তা—এই ধারণাটি পুনরায় মূল্যায়ন করুন। কোনো ডিজাইনে চূড়ান্তভাবে যাওয়ার আগে প্রতিটি টুল পাথের টোকেন ব্যবহার প্রোফাইল করুন।
- ছোট মডেলগুলোর জন্য সুসংগঠিত (shaped) টুল ব্যবহার করুন। সীমিত কনটেক্সট উইন্ডো থাকা সত্ত্বেও, সুসংজ্ঞায়িত স্কিমাগুলো রিজনিং (reasoning), ইউনিট কনভার্সন এবং এরর হ্যান্ডলিং উন্নত করে।
মূল কথা হলো: প্রোটোকল ডিজাইন নয়, বরং টোকেন ইকোনমিক্স খরচ নির্ধারণ করে। টুল সার্ভার কখন এবং কীভাবে লোড করা হবে তা নিয়ন্ত্রণ করার মাধ্যমে একটি কথোপকথন থেকে হাজার হাজার টোকেন বাঁচানো সম্ভব, যা সরাসরি অপারেশনাল খরচ কমিয়ে দেয়।
Source: https://dev.to/clarkbw--/enabling-bash-costs-more-context-than-seven-mcp-tool-schemas-2h82
