মূল লেখায় যাও
AI Engineering
English

Part ১০

খরচ আর Performance Optimization

Model cascading, semantic / output / prompt caching, batch API, distillation, LLMLingua-ধরনের prompt compression, প্রতিটা feature-এর জন্য token budget, আর model gateway (LiteLLM, Portkey, OpenRouter)। এই পাঁচ স্তরের stack মান না কমিয়ে LLM-এর খরচ 5–50 গুণ কমাতে পারে। প্রতিটি section দুই ভাবে লেখা: engineer-এর জন্য technical version (code আর diagram সহ), আর সাধারণ পাঠকের জন্য সহজ ভাষায় ব্যাখ্যা (উপমা সহ)। প্রতিটি topic-এর শেষে বাংলা ব্যাখ্যাও আছে।

১টি section · ৩০টি source · তিনভাবে ব্যাখ্যা

01

খরচ আর performance optimisation

LLM-এর বিল ব্যবহারের সাথে বাড়ে। মান না কমিয়ে খরচ 5–50 গুণ কমানোর তিনটা উপায় আছে: cascade (সস্তা model থেকে দামি model-এ পাঠানো), cache (semantic, prefix, output), আর compress (prompt compression, distillation)।

অনুশীলন · ৪টি task

যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini

অনুশীলন কীভাবে করবে
  • নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
  • একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
  • Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
  • AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
  • শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।

Task ১

সহজ request সস্তা model-এ পাঠাও

এটা কেন দরকার

তুমি যখন একটা support chatbot বানাবে, তার বেশিরভাগ প্রশ্নই সহজ হবে। সবগুলোর উত্তর যদি বড় আর দামি model দেয়, তাহলে অনেক বেশি খরচ হয়। Router সহজ প্রশ্ন সস্তা model-এ আর কঠিন প্রশ্ন বড় model-এ পাঠায়।

  1. ধাপ ১
    নতুন chat

    এই prompt টা copy করো, paste করে Enter চাপো। AI 10টা customer request-এর জন্য router-এর কাজ করবে।

    Prompt
    তুমি একটা customer-support system-এর router। প্রতিটা request যায় SMALL model-এ (cost 1 credit) অথবা LARGE model-এ (cost 20 credit)। সহজ request-এ SMALL ব্যবহার করো। যে request-এ লম্বা চিন্তা, code, বা অনেক ধাপ লাগে, তাতে LARGE ব্যবহার করো।
    প্রতিটা request-এর জন্য লেখো: নম্বর, SMALL বা LARGE, আর সর্বোচ্চ ৬ শব্দের একটা কারণ।
    
    Requests:
    1. আপনাদের return করার সময়সীমা কত দিন?
    2. আমার order #4471 কোথায়?
    3. Bangla-তে "thank you" এর মানে কী?
    4. আমার দুটো order একটা parcel-এ এসেছে। একটা জিনিস নষ্ট। আমি একটা coupon ব্যবহার করেছি, যেটা দুই order-এ refund ভাগ করে দিয়েছে। আমি কত টাকা ফেরত পাব?
    5. Password reset করব কীভাবে?
    6. তিনটা দেশের customer-দের জন্য আমাদের refund policy বদলালে আইনি ঝুঁকিগুলো সংক্ষেপে লেখো।
    7. আপনাদের ফোন নম্বর কত?
    8. এমন একটা Python script লেখো, যেটা আমাদের payment file-এর সাথে bank statement মেলায় আর যেগুলো মেলে না সেগুলো চিহ্নিত করে।
    9. নীল শার্টটা কি M size-এ stock-এ আছে?
    10. Checkout redesign-এর পর আমাদের conversion rate 12% কমল কেন? ব্যাখ্যা করো আর তিনটা test প্রস্তাব করো।

    তুমি দেখবে: 10 লাইনের একটা list। প্রায় 4টা request (লম্বা, অনেক ধাপের গুলো) LARGE-এ যায়, বাকিগুলো SMALL-এ।

    Example উত্তর
    1. SMALL - সহজ policy-র তথ্য
    2. SMALL - order status দেখা
    3. SMALL - ছোট অনুবাদ
    4. LARGE - অনেক ধাপের refund হিসাব
    5. SMALL - সাধারণ how-to
    6. LARGE - আইনি বিশ্লেষণ, তিনটা দেশ
    7. SMALL - নির্দিষ্ট তথ্য
    8. LARGE - code লিখতে হবে
    9. SMALL - সহজ stock check
    10. LARGE - বিশ্লেষণ আর test design

    তোমার উত্তরের ভাষা একটু আলাদা হবে।

  2. ধাপ ২
    একই chat

    LARGE লাইন কয়টা গোনো। তারপর cost হিসাব করো: SMALL-এর সংখ্যা x 1 + LARGE-এর সংখ্যা x 20। এটা 10 x 20 = 200 credit-এর সাথে তুলনা করো।

    তুমি দেখবে: 4টা LARGE আর 6টা SMALL হলে: 6 x 1 + 4 x 20 = 86 credit, আর সবগুলো LARGE-এ গেলে 200 credit। মানে 114 credit বাঁচল, যা 57%।

  3. ধাপ ৩
    নতুন chat

    এই prompt টা copy করো, paste করে Enter চাপো। এবার একটা checker small model-এর লেখা draft উত্তর দেখবে।

    Prompt
    একটা small model একটা draft উত্তর লিখেছে। ঠিক করো draft টা পাঠানোর মতো ভালো কিনা (KEEP), নাকি একটা large model-কে আবার করতে হবে (ESCALATE)। শুধু KEEP বা ESCALATE লেখো, সাথে এক বাক্যে কারণ।
    
    প্রশ্ন: একজন customer 3টা শার্ট কিনেছে, প্রতিটা 450 BDT, আর 1টা টুপি 280 BDT। পুরো order-এ 10% coupon প্রযোজ্য। Delivery খরচ 60 BDT, এতে ছাড় নেই। মোট কত?
    
    Draft উত্তর: শার্টগুলোর দাম 1,350 BDT আর টুপির দাম 280 BDT। Subtotal 1,630 BDT। 10% coupon-এর পর দাম 1,467 BDT। Delivery 60 BDT, তাই মোট 1,527 BDT।

    তুমি দেখবে: কারণসহ KEEP। Draft ঠিক: 3 x 450 = 1,350, সাথে 280 = 1,630, 10% (163) বাদ দিলে 1,467, সাথে 60 = 1,527।

    Example উত্তর
    KEEP। Draft জিনিসগুলো ঠিকভাবে যোগ করেছে (1,630 BDT), 10% ছাড় দিয়েছে (1,467 BDT), আর ছাড়ের পরে 60 BDT delivery যোগ করেছে, তাই 1,527 BDT ঠিক।

    তোমার উত্তরের ভাষা একটু আলাদা হবে।

এইমাত্র কী হলো

Cascade মানে আগে সস্তা model দিয়ে চেষ্টা করা, আর দরকার হলেই শুধু দামি model ব্যবহার করা। এখানে 10টার মধ্যে 6টা request সস্তা model-এ গেছে, তাই cost 200 থেকে 86 credit-এ নেমেছে। দ্বিতীয় prompt-এ অন্য অর্ধেকটা দেখলে: একটা check, যে ঠিক করে সস্তা model-এর draft যথেষ্ট ভালো কিনা। ভুল KEEP মানে customer-এর কাছে খারাপ উত্তর যায়। ভুল ESCALATE মানে 20 credit নষ্ট।

কাজ শেষ, যখন তোমার কাছে একটা router list, প্রায় 86 credit-এর cost (200-এর বিপরীতে), আর একটা KEEP বা ESCALATE সিদ্ধান্ত আছে।

নিজেকে যাচাই করোপ্রতিটা request বড় model-এ পাঠানোর চেয়ে cascade-এ cost কম হয় কেন?উত্তর দেখো

বেশিরভাগ request সহজ, তাই সস্তা model সেগুলো প্রতিটা 1 credit-এ উত্তর দেয়। শুধু কঠিনগুলো 20 credit-এর বড় model-এ যায়, তাই প্রতি request-এর গড় cost কমে যায়।

আরেকটু কঠিন করে দেখোDraft বদলে লেখো: Delivery-সহ subtotal 1,690 BDT। 10% coupon-এর পর মোট 1,521 BDT। এখানে ভুল করে delivery-তেও ছাড় দেওয়া হয়েছে। Checker কি এখন ESCALATE বলে?

Task ২

Cache থেকে আসা ভুল উত্তর ধরো

এটা কেন দরকার

তুমি যখন একটা chatbot বানাবে, অনেক user একই প্রশ্ন আলাদা আলাদা কথায় করবে। Cache পুরোনো উত্তর আবার ব্যবহার করে খরচ বাঁচাতে পারে। কিন্তু প্রশ্নটা শুধু দেখতে একই হলে আর উত্তর আসলে আলাদা হলে, user ভুল উত্তর পায়।

  1. ধাপ ১
    নতুন chat

    এই prompt টা copy করো, paste করে Enter চাপো। এতে 6 জোড়া প্রশ্ন আছে। AI অনুমান করবে পুরোনো উত্তর নতুন প্রশ্নে এখনও মানায় কিনা।

    Prompt
    Semantic cache পুরোনো প্রশ্নের উত্তর জমিয়ে রাখে। নতুন প্রশ্ন পুরোনো প্রশ্নের খুব কাছাকাছি দেখালে সে জমানো উত্তরটাই ফেরত দেয়।
    প্রতিটা জোড়ার জন্য লেখো: 0 থেকে 1-এর মধ্যে একটা similarity score (তোমার সেরা অনুমান), HIT বা MISS (score 0.9-এর বেশি হলে HIT), আর পুরোনো উত্তরটা নতুন প্রশ্নের জন্য CORRECT হবে নাকি WRONG।
    প্রতিটা জোড়ার জন্য ছোট এক লাইনে উত্তর দাও।
    
    জোড়া (পুরোনো প্রশ্ন | নতুন প্রশ্ন):
    1. আমি আমার password reset করব কীভাবে? | আমি কীভাবে আমার password reset করতে পারি?
    2. Order 1001-এর refund-এর অবস্থা কী? | Order 1002-এর refund-এর অবস্থা কী?
    3. আপনাদের return policy কী? | জিনিস ফেরত পাঠাতে আমার কত সময় আছে?
    4. আজ ঢাকার আবহাওয়া কেমন? | কাল ঢাকার আবহাওয়া কেমন?
    5. আমার subscription cancel করুন। | আমার subscription cancel করবেন না।
    6. রাতে আপনারা কয়টায় বন্ধ করেন? | সন্ধ্যায় আপনারা কখন দোকান বন্ধ করেন?

    তুমি দেখবে: 6টা ছোট লাইন। Pair 2, 4 আর 5 সাধারণত বেশি score (HIT) পায় আর WRONG চিহ্ন পায়। Score এক chat থেকে আরেক chat-এ আলাদা হয়।

    Example উত্তর
    1. 0.97 HIT CORRECT
    2. 0.96 HIT WRONG (অন্য order)
    3. 0.78 MISS CORRECT
    4. 0.94 HIT WRONG (আজ আর কাল আলাদা)
    5. 0.93 HIT WRONG (উল্টো মানে)
    6. 0.80 MISS CORRECT

    তোমার উত্তরের ভাষা একটু আলাদা হবে।

  2. ধাপ ২
    একই chat

    কোন pair-গুলো HIT আর WRONG দুটোই, সেগুলোর নম্বর লিখে রাখো। প্রতিটা pair-এ কী বদলেছে, নিজের ভাষায় লেখো।

    তুমি দেখবে: সাধারণত pair 2, 4 আর 5: আলাদা order নম্বর, আজ বনাম কাল, আর cancel করুন বনাম cancel করবেন না।

  3. ধাপ ৩
    নতুন chat

    এই prompt টা copy করো, paste করে Enter চাপো। AI এমন নিয়ম লিখবে, যা ভুল cache hit আটকায়।

    Prompt
    আমি একটা support chatbot-এর জন্য semantic cache চালাই। আমাকে 4টা ছোট নিয়ম দাও, যেগুলো ঠিক করে কখন cache-এর উত্তর ব্যবহার করা যাবে না, similarity score খুব বেশি হলেও। প্রতিটা নিয়মের জন্য একটা করে উদাহরণ প্রশ্ন-জোড়া দাও। প্রতিটা নিয়ম এক বাক্যে লেখো।

    তুমি দেখবে: 4টা ছোট নিয়ম, যেমন: আলাদা ID, সময়ের শব্দ, নেতিবাচক কথা (না), বা ব্যক্তিগত তথ্য থাকলে cache ব্যবহার করবে না।

    Example উত্তর
    1. ID বা সংখ্যা আলাদা হলে উত্তর আবার ব্যবহার কোরো না। উদাহরণ: order 1001 | order 1002।
    2. সময়ের শব্দ আলাদা হলে উত্তর আবার ব্যবহার কোরো না। উদাহরণ: আজ | কাল।
    3. একটা প্রশ্নে নেতিবাচক কথা থাকলে উত্তর আবার ব্যবহার কোরো না। উদাহরণ: cancel করুন | cancel করবেন না।
    4. ব্যক্তিগত তথ্য থাকা উত্তর আবার ব্যবহার কোরো না। উদাহরণ: আমার balance কত?

    তোমার উত্তরের ভাষা একটু আলাদা হবে।

এইমাত্র কী হলো

Semantic cache প্রশ্নের হুবহু শব্দ নয়, মানে তুলনা করে। Pair 1, 3 আর 6-এ শুধু শব্দ বদলেছে, তাই পুরোনো উত্তর ঠিক, আর সেটা আবার ব্যবহার করলে টাকা বাঁচে। Pair 2, 4 আর 5-এ ছোট একটা জিনিস বদলেছে, তাই পুরোনো উত্তর ভুল। এখানে AI শুধু score অনুমান করেছে। আসল cache সেটা মাপে embedding দিয়ে, যা লেখাকে সংখ্যায় বদলে দেয়।

কাজ শেষ, যখন তোমার কাছে HIT আর WRONG pair-গুলোর list (সাধারণত 2, 4 আর 5) আছে, আর সেগুলো আটকানোর 4টা নিয়ম আছে।

নিজেকে যাচাই করোCache-এর উত্তর ফেরত দেওয়ার জন্য বেশি similarity score কেন যথেষ্ট নয়?উত্তর দেখো

Order নম্বর, দিন, বা না শব্দের মতো ছোট বদলও ঠিক উত্তর বদলে দিতে পারে। শব্দ প্রায় একই থাকে, তাই score বেশি থাকে। বাড়তি নিয়ম আর কড়া threshold ভুল hit-এর ঝুঁকি কমায়।

আরেকটু কঠিন করে দেখোদুটো নতুন pair লেখো: একটা নিরাপদ HIT, যেখানে শব্দ একেবারে আলাদা, আর একটা ভুল HIT, যেখানে শব্দ প্রায় একই। পরীক্ষা করতে ধাপ ১-এর prompt-এ বসাও।

Task ৩

লম্বা লেখা ছোট করো আর test করো

এটা কেন দরকার

তুমি যখন লম্বা document নিয়ে একটা chatbot বানাবে, AI-কে পাঠানো প্রতিটা শব্দের জন্য তোমাকে টাকা দিতে হবে। ফাঁকা শব্দ কেটে দিলে খরচ কমে। কিন্তু ছোট লেখাটা যে একই উত্তর দেয়, সেটা তোমাকে যাচাই করতে হবে।

  1. ধাপ ১
    নতুন chat

    এই prompt টা copy করো, paste করে Enter চাপো। 3টা উত্তর লিখে রাখো। এটা তোমার baseline।

    Prompt
    শুধু context ব্যবহার করে তিনটা প্রশ্নের উত্তর দাও।
    
    Context:
    Padma Mart বেছে নেওয়ার জন্য ধন্যবাদ। আমাদের shipping policy নিয়ে জানাতে পেরে আমরা খুব খুশি। সাধারণভাবে, কাজের দিনে দুপুর 2টার আগে দেওয়া order সাধারণত সেদিনই packing হয়, আর দুপুর 2টার পরে দেওয়া order সাধারণত পরের কাজের দিনে packing হয়। দয়া করে মনে রাখবেন, আমরা শুক্রবার আর সরকারি ছুটির দিনে কাজ করি না। ঢাকার ভেতরে delivery সাধারণত এক থেকে দুই দিন লাগে, আর অন্য শহরে সাধারণত তিন থেকে পাঁচ দিন লাগে। ঢাকার ভেতরে shipping খরচ 60 BDT, আর অন্য শহরে shipping খরচ 120 BDT। আমরা আরও জানাতে পেরে খুশি যে 2,000 BDT-র বেশি order-এ শুধু ঢাকার ভেতরে shipping ফ্রি। আপনি বাসায় না থাকলে আমাদের courier parcel দুইবার পৌঁছে দেওয়ার চেষ্টা করবে, আর দ্বিতীয়বার ব্যর্থ হলে parcel আমাদের warehouse-এ ফিরে আসে। আমাদের সাথে কেনাকাটা উপভোগ করবেন, এই আশা করি!
    
    প্রশ্ন:
    1. 1,500 BDT-র একটা order চট্টগ্রামে পাঠাতে shipping কত?
    2. বৃহস্পতিবার বিকেল 3টায় দেওয়া order কবে packing হয়?
    3. Courier কয়বার delivery-র চেষ্টা করে?

    তুমি দেখবে: তিনটা উত্তর: shipping 120 BDT, packing হবে শনিবার, আর 2 বার delivery চেষ্টা।

    Example উত্তর
    1. 120 BDT। অন্য শহরে shipping 120 BDT, আর ফ্রি shipping শুধু ঢাকার ভেতরে 2,000 BDT-র বেশি order-এ।
    2. শনিবার। বৃহস্পতিবার 2টার পরে দেওয়া order পরের কাজের দিনে packing হয়, আর শুক্রবার কাজের দিন নয়।
    3. 2 বার।

    তোমার উত্তরের ভাষা একটু আলাদা হবে।

  2. ধাপ ২
    নতুন chat

    এই prompt টা copy করো, paste করে Enter চাপো। তারপর AI-র দেওয়া ছোট লেখাটা copy করো।

    Prompt
    নিচের লেখাটা তার দৈর্ঘ্যের প্রায় এক-তৃতীয়াংশে ছোট করো। ফাঁকা শব্দ আর শুভেচ্ছা বাদ দাও। প্রতিটা সংখ্যা, দাম, সময় আর নিয়ম রাখো। ছোট note-এর মতো বাক্যাংশ ব্যবহার করো। শুধু ছোট করা লেখাটা পাঠাও।
    
    লেখা:
    Padma Mart বেছে নেওয়ার জন্য ধন্যবাদ। আমাদের shipping policy নিয়ে জানাতে পেরে আমরা খুব খুশি। সাধারণভাবে, কাজের দিনে দুপুর 2টার আগে দেওয়া order সাধারণত সেদিনই packing হয়, আর দুপুর 2টার পরে দেওয়া order সাধারণত পরের কাজের দিনে packing হয়। দয়া করে মনে রাখবেন, আমরা শুক্রবার আর সরকারি ছুটির দিনে কাজ করি না। ঢাকার ভেতরে delivery সাধারণত এক থেকে দুই দিন লাগে, আর অন্য শহরে সাধারণত তিন থেকে পাঁচ দিন লাগে। ঢাকার ভেতরে shipping খরচ 60 BDT, আর অন্য শহরে shipping খরচ 120 BDT। আমরা আরও জানাতে পেরে খুশি যে 2,000 BDT-র বেশি order-এ শুধু ঢাকার ভেতরে shipping ফ্রি। আপনি বাসায় না থাকলে আমাদের courier parcel দুইবার পৌঁছে দেওয়ার চেষ্টা করবে, আর দ্বিতীয়বার ব্যর্থ হলে parcel আমাদের warehouse-এ ফিরে আসে। আমাদের সাথে কেনাকাটা উপভোগ করবেন, এই আশা করি!

    তুমি দেখবে: Note-এর মতো অনেক ছোট একটা লেখা, মূল লেখার প্রায় এক-তৃতীয়াংশ থেকে অর্ধেক, কিন্তু সব সংখ্যা আছে।

    Example উত্তর
    Padma Mart shipping। কাজের দিনে দুপুর 2টার আগে order: একই দিনে packing। 2টার পরে: পরের কাজের দিনে। শুক্রবার, সরকারি ছুটিতে কাজ বন্ধ। Delivery: ঢাকা 1-2 দিন, অন্য শহর 3-5 দিন। Shipping: ঢাকা 60 BDT, অন্য শহর 120 BDT। ফ্রি shipping: শুধু ঢাকা, 2,000 BDT-র বেশি order। Courier 2 বার চেষ্টা করে, তারপর parcel warehouse-এ ফেরত।

    তোমার উত্তরের ভাষা একটু আলাদা হবে।

  3. ধাপ ৩
    নতুন chat

    এই prompt টা copy করে paste করো। "এখানে তোমার ছোট করা লেখা paste করো" লাইনটার জায়গায় ধাপ ২-এর ছোট লেখাটা বসাও। তারপর Enter চাপো।

    Prompt
    শুধু context ব্যবহার করে তিনটা প্রশ্নের উত্তর দাও।
    
    Context:
    এখানে তোমার ছোট করা লেখা paste করো
    
    প্রশ্ন:
    1. 1,500 BDT-র একটা order চট্টগ্রামে পাঠাতে shipping কত?
    2. বৃহস্পতিবার বিকেল 3টায় দেওয়া order কবে packing হয়?
    3. Courier কয়বার delivery-র চেষ্টা করে?

    তুমি দেখবে: আবার তিনটা উত্তর। ধাপ ১-এর সাথে মেলার কথা: 120 BDT, শনিবার, আর 2 বার।

    Example উত্তর
    1. 120 BDT। অন্য শহরে shipping 120 BDT, আর ফ্রি shipping শুধু ঢাকার ভেতরে 2,000 BDT-র বেশি order-এ।
    2. শনিবার। বৃহস্পতিবার 2টার পরে দেওয়া order পরের কাজের দিনে packing হয়, আর শুক্রবার কাজের দিন নয়।
    3. 2 বার।

    তোমার উত্তরের ভাষা একটু আলাদা হবে।

  4. ধাপ ৪
    একই chat

    তিনটা উত্তর ধাপ ১-এর সাথে মেলাও। যে উত্তর আলাদা, সেটা লিখে রাখো।

    তুমি দেখবে: প্রায়ই তিনটা উত্তরই এক হয়। একটা আলাদা হলে বুঝবে ছোট লেখায় একটা তথ্য হারিয়ে গেছে।

এইমাত্র কী হলো

AI-কে তুমি যে token (শব্দের ছোট টুকরো) পাঠাও, তার জন্যই টাকা দিতে হয়। শুভেচ্ছা আর ফাঁকা শব্দ token খরচ করে, কিন্তু কোনো তথ্য যোগ করে না। ছোট লেখায় সব সংখ্যা আর নিয়ম ছিল, তাই কম খরচে AI একই উত্তর দিয়েছে। ছোট করার পর সবসময় এই test চালাও। একটা তথ্য হারালে AI ভুল উত্তর দেবে।

কাজ শেষ, যখন তোমার কাছে 3টা উত্তরের দুটো সেট আছে, আর তুমি জানো সেগুলো মিলেছে কিনা।

নিজেকে যাচাই করোPrompt ছোট করলে টাকা বাঁচে কেন, আর এরপর কী যাচাই করতে হবে?উত্তর দেখো

Cost নির্ভর করে তুমি কয়টা token পাঠাও তার ওপর। ফাঁকা লেখা token খরচ করে কিন্তু তথ্য যোগ করে না, তাই সেটা বাদ দিলে টাকা বাঁচে। এরপর যাচাই করো AI একই উত্তর দিচ্ছে কিনা, কারণ একটা তথ্য হারালে উত্তর ভুল হয়।

আরেকটু কঠিন করে দেখোদৈর্ঘ্যের এক-ষষ্ঠাংশে ছোট করতে বলো। ধাপ ৩ আবার চালাও। কত ছোট করলে প্রথম তথ্য হারিয়ে যায়?

Task ৪

খুঁজে বের করো কোন feature budget ভাঙবে

এটা কেন দরকার

তুমি যখন একটা AI product বানাবে, প্রতিটা feature token খরচ করবে, আর token-এ টাকা লাগে। একটা feature বেহিসাবি চললে পুরো মাসের bill শেষ হয়ে যেতে পারে। প্রতি feature-এর আলাদা budget আর alert তোমাকে আগেই সতর্ক করে।

  1. ধাপ ১
    নতুন chat

    এই prompt টা copy করো, paste করে Enter চাপো। AI 3টা feature-এর জন্য একটা budget table বানাবে।

    Prompt
    একটা company প্রতিটা LLM feature-কে মাসিক token budget দেয়। নিয়ম: budget-এর 80% হলে alert পাঠানো হবে, আর 100% হলে feature-টা throttle করা হবে (ধীর বা বন্ধ করা হবে)।
    আজ 30 দিনের একটা মাসের 12 নম্বর দিনের শেষ। ধরে নাও প্রতিদিনের ব্যবহার একই থাকবে।
    
    Feature | মাসিক budget | এ পর্যন্ত ব্যবহার (12 দিন)
    Chat support | 40,000,000 token | 20,000,000 token
    Document summary | 20,000,000 token | 4,000,000 token
    Search rewrite | 6,000,000 token | 3,600,000 token
    
    একটা table বানাও। প্রতিটা feature-এর জন্য দেখাও:
    1) প্রতিদিন কত token ব্যবহার হয়।
    2) মাসের শেষে কত ব্যবহার হবে, budget-এর শতাংশে।
    3) মাসের কত তারিখে 80% হবে।
    4) মাসের কত তারিখে 100% হবে।
    Feature যদি limit-এর নিচেই থাকে, তাহলে "never" লেখো।

    তুমি দেখবে: 3 সারির একটা table। Search rewrite-এর forecast সবচেয়ে বেশি, প্রায় 150%।

    Example উত্তর
    Feature | প্রতিদিন | মাসের শেষে | 80% দিন | 100% দিন
    Chat support | 1.67M | 125% | 20 তারিখ | 24 তারিখ
    Document summary | 0.33M | 50% | never | never
    Search rewrite | 0.3M | 150% | 16 তারিখ | 20 তারিখ

    তোমার উত্তরের ভাষা একটু আলাদা হবে।

  2. ধাপ ২
    একই chat

    একটা সারি হাতে মেলাও। Search rewrite-এর জন্য: 3,600,000 ÷ 12 = প্রতিদিনের token। তারপর 30 দিয়ে গুণ করো। Table-এর সাথে মেলাও।

    তুমি দেখবে: প্রতিদিন 300,000 token। 300,000 x 30 = 9,000,000 token। এটা 6,000,000 budget-এর 150%। এটা 80% (4,800,000) ছোঁয় 16 তারিখে, আর 100% ছোঁয় 20 তারিখে।

  3. ধাপ ৩
    একই chat

    বাকি দুই সারি এই key-র সাথে মেলাও। কোনো সংখ্যা আলাদা হলে chat-কে আবার হিসাব করতে বলো। Key: Chat support 125%, 20 তারিখ, 24 তারিখ। Document summary 50%, never, never।

    তুমি দেখবে: একই সংখ্যা। Chat support প্রতিদিন 20,000,000 ÷ 12 = প্রায় 1.67M ব্যবহার করে, তাই 1.67M x 30 = 50M, যা 40M-এর 125%।

  4. ধাপ ৪
    একই chat

    এই follow-up প্রশ্নটা copy করো, paste করে Enter চাপো।

    Prompt
    কোন feature-এ সবার আগে ব্যবস্থা নিতে হবে? তার ব্যবহার কমানোর দুটো সস্তা উপায় বলো। 3টা ছোট লাইনে উত্তর দাও।

    তুমি দেখবে: সবার আগে Search rewrite, কারণ তার alert সবার আগে আসে (16 তারিখ)। সাথে দুটো আইডিয়া, যেমন cache বা ছোট prompt।

    Example উত্তর
    Search rewrite-এ সবার আগে ব্যবস্থা নিতে হবে। এটা 16 তারিখে 80% ছোঁয়।
    1. Cache যোগ করো, যাতে একই প্রশ্নে বারবার AI call না হয়।
    2. Prompt ছোট করো, যাতে প্রতি call-এ কম token লাগে।

    তোমার উত্তরের ভাষা একটু আলাদা হবে।

এইমাত্র কী হলো

Forecast মানে প্রতিদিনের ব্যবহার গুণ মাসের দিনসংখ্যা। Budget প্রতিটা feature-কে নিজের আলাদা limit দেয়। 80%-এ alert তোমাকে ব্যবস্থা নেওয়ার সময় দেয়। 100%-এ throttle bill-কে আর বাড়তে দেয় না। খেয়াল করো, সবচেয়ে ছোট budget (Search rewrite) আগে সমস্যায় পড়েছে, যে feature সবচেয়ে বেশি token ব্যবহার করে সেটা নয়।

কাজ শেষ, যখন তোমার কাছে 3টা forecast-সহ একটা table আছে, আর তুমি জানো Search rewrite 16 তারিখে 80% alert ছোঁয়।

নিজেকে যাচাই করোপুরো company-র জন্য একটা budget না রেখে প্রতি feature-এর আলাদা budget রাখা হয় কেন?উত্তর দেখো

প্রতি feature-এর আলাদা budget থাকলে বোঝা যায় কোন feature টাকা খরচ করছে, আর একটা বেহিসাবি feature পুরো bill শেষ করতে পারে না। 80% alert তোমাকে 100% throttle-এর আগেই ব্যবস্থা নেওয়ার সময় দেয়।

আরেকটু কঠিন করে দেখোধরো একটা cache Search rewrite-এর 40% call কমিয়ে দেয়। Chat-কে নতুন মাস-শেষের forecast আর নতুন alert-এর তারিখ জিজ্ঞেস করো।

ভিডিও দেখো · ৮টি

তথ্যসূত্র

Sources

সব citation মূল paper (arXiv), vendor-এর docs (OpenAI, Anthropic, Google) বা official team blog-এ যায়। প্রতিটি পাতা খুলে citation-এর তথ্য যাচাই করা হয়েছে।

  1. [1]Yao et al., "ReAct: Synergizing Reasoning and Acting in Language Models" (ICLR 2023)
  2. [2]Wei et al., "Plan-and-Execute Agents" / "Chain-of-Thought Prompting Elicits Reasoning in Large Language Models" — NeurIPS 2022
  3. [3]Shinn et al., "Reflexion: Language Agents with Verbal Reinforcement Learning" — NeurIPS 2023
  4. [4]Xu et al., "ReWOO: Decoupling Reasoning from Observations for Efficient Augmented Language Models"
  5. [5]Anthropic Engineering blog — "How we built our multi-agent research system" (2025)
  6. [6]LangGraph — official documentation (LangChain)
  7. [7]Temporal — "Durable Execution for LLM Agents"
  8. [8]Park et al., "Generative Agents: Interactive Simulacra of Human Behavior" — 2023
  9. [9]Anthropic — "Introducing computer use, a new Claude 3.5 Sonnet capability" (Oct 2024)
  10. [10]Anthropic — Tool use / function calling documentation
  11. [11]OpenAI — Function calling guide
  12. [12]Anthropic — Model Context Protocol (MCP) specification
  13. [13]Kwon et al., "Efficient Memory Management for Large Language Model Serving with PagedAttention" — vLLM paper, SOSP 2023
  14. [14]Zheng et al., "SGLang: Efficient Execution of Structured Language Model Programs" — 2023
  15. [15]llama.cpp — open-source GGUF-native inference (ggerganov)
  16. [16]Lin et al., "AWQ: Activation-aware Weight Quantization for LLM Compression and Acceleration" — MLSys 2024
  17. [17]Anthropic — Prompt caching documentation
  18. [18]Zheng et al., "Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena" — NeurIPS 2023
  19. [19]Es et al., "Ragas: Automated Evaluation of Information Retrieval Augmented Language Models" — 2023
  20. [20]Yue et al., "Large Language Model Cascades with Mixture of Thought Representations" — 2024
  21. [21]GPTCache — open-source semantic cache
  22. [22]Guo et al., "DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via RL" — 2025
  23. [23]Jiang et al., "LLMLingua: Compressing Prompts for Accelerated Inference of Large Language Models" — EMNLP 2023
  24. [24]LiteLLM — unified interface for 100+ LLMs
  25. [25]OWASP — "Top 10 for LLM Applications" (LLM01 Prompt Injection, 2025)
  26. [26]Bai et al., "Constitutional AI: Harmlessness from AI Feedback" — Anthropic, 2022
  27. [27]NVIDIA NeMo Guardrails — open-source toolkit
  28. [28]Qwen2-VL Team, "Qwen2-VL: Enhancing Vision-Language Model's Perception of the World at Any Resolution" — 2024
  29. [29]OpenAI — Realtime API documentation
  30. [30]OpenAI — Production best practices guide