মূল লেখায় যান
পার্ট ৭ ৩ মিনিট পড়া

ইনফারেন্স (মডেল চালানো)

মডেল কীভাবে চালাবেন: API ব্যবহার করবেন, নাকি নিজে হোস্ট করবেন। আরও শিখবেন কীভাবে এটা দ্রুত আর সস্তা করা যায় (কোয়ান্টাইজেশন, ক্যাশিং, ব্যাচিং), GPU-র খরচের হিসাব, আর বড় হোস্টিং প্রোভাইডারগুলো।

কুইজে যান
এই পাতায়

ইনফারেন্স: সার্ভার, কোয়ান্টাইজেশন আর প্রোভাইডার

প্রতিটা LLM কলের দুই দিক: আপনার পাঠানো রিকোয়েস্ট, আর সেটা যে ইনফারেন্স সামলায়। বেশিরভাগ টিম শুরুতে ভাড়া নেয় (Together, Fireworks, Groq, Cerebras, Replicate, AWS Bedrock)। ব্যবহার যথেষ্ট বাড়লে তারা vLLM, TGI, SGLang, Ollama বা llama.cpp দিয়ে নিজে হোস্ট করে। তখন অপ্টিমাইজেশনের একদম নতুন শব্দভান্ডার শিখতে হয়: KV ক্যাশ, প্রিফিক্স ক্যাশিং, স্পেকুলেটিভ ডিকোডিং, কন্টিনিউয়াস ব্যাচিং।

অনুশীলন · ৪টি টাস্ক

যেকোনো ফ্রি AI চ্যাট খুলুন: ChatGPT · Claude · Gemini

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

টাস্ক ১

ঠিক করুন: হোস্টেড API, না সেলফ-হোস্ট

এটা কেন দরকার

আপনার চ্যাটবট জনপ্রিয় হলে কেউ একসময় প্রশ্ন করবে: আমরা কি হোস্টেড API-তে টাকা দিতে থাকব, না নিজেদের GPU-তে মডেল চালাব? উত্তর দেওয়ার আগে খরচের অঙ্ক কষতে হবে।

  1. ধাপ ১
    নতুন চ্যাট

    এই প্রম্পটটা কপি করুন, পেস্ট করে Enter চাপুন। এটা দুই অপশনের মাসিক খরচ জানতে চায়।

    প্রম্পট
    Scenario (সব সংখ্যা বানানো):
    ShopLink নামে একটা ছোট কোম্পানি একটা customer-support chatbot চালায়। প্রতি মাসে সেটা 2 billion token ব্যবহার করে।
    
    Option 1, hosted API: প্রতি 1 million token-এ 0.50 USD।
    Option 2, self-host: প্রতি ঘণ্টায় 3 USD দরে 2টা GPU ভাড়া, মাসে 730 ঘণ্টা, সাথে অর্ধেক সময়ের একজন ML engineer, মাসে 3,000 USD। বিদ্যুৎ আর storage-এর ছোট খরচ ধরবে না।
    
    কাজ:
    1. প্রতিটা option-এর মাসিক খরচ বের করো। হিসাব দেখাও।
    2. Break-even বের করো: মাসে কত token হলে দুটো option-এর খরচ সমান হয়?
    একটা ছোট table দিয়ে উত্তর দাও, তারপর এক বাক্যে বলো এখন কোনটা সস্তা।

    আপনি দেখবেন: হোস্টেডে মাসে প্রায় ১,০০০ USD লাগে। সেলফ-হোস্টে প্রায় ৭,৩৮০ USD। ব্রেক-ইভেন মাসে প্রায় ১৪.৮ বিলিয়ন টোকেন। ২ বিলিয়ন টোকেনে হোস্টেড সস্তা।

    উদাহরণ উত্তর
    Hosted: 2,000 million token × 0.50 USD = মাসে 1,000 USD।
    Self-host: GPU 2 × 3 × 730 = 4,380 USD, সাথে engineer 3,000 USD = মাসে 7,380 USD।
    Break-even: 7,380 ÷ 0.50 = 14,760 million token, অর্থাৎ মাসে প্রায় 14.8 billion।
    2 billion token-এ hosted API সস্তা।

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

  2. ধাপ ২
    একই চ্যাট

    একটা সংখ্যা নিজে ক্যালকুলেটরে মিলিয়ে দেখুন: ২ × ৩ × ৭৩০। উত্তরের GPU খরচের সাথে মেলান।

    আপনি দেখবেন: ৪,৩৮০ USD। এটা মডেলের উত্তরের GPU খরচের সাথে মেলে।

  3. ধাপ ৩
    একই চ্যাট

    এই প্রম্পটটা কপি করুন, একই চ্যাটে পেস্ট করে Enter চাপুন। কোম্পানি বড় হয়েছে, আর একটা প্রাইভেসি নিয়ম এসেছে।

    প্রম্পট
    এবার অবস্থা বদলেছে। ShopLink-এর ব্যবহার বেড়ে মাসে 20 billion token হয়েছে। একজন নতুন customer আরও বলেছে, chat-এর লেখা কখনো ShopLink-এর নিজের server-এর বাইরে যেতে পারবে না। আগের দামই ধরো। ধরে নাও ওই 2টা GPU-ই এই load সামলাতে পারে। এখন তুমি কী recommend করবে, আর কেন? দুই option-এর মাসিক খরচ দাও, আর 120 শব্দের কম লিখে উত্তর দাও।

    আপনি দেখবেন: হোস্টেডে এখন প্রায় ১০,০০০ USD। সেলফ-হোস্ট থাকে ৭,৩৮০ USD। বেশিরভাগ মডেল খরচ আর প্রাইভেসি, দুই কারণেই সেলফ-হোস্ট সুপারিশ করে।

    উদাহরণ উত্তর
    আমি self-host recommend করব।
    Hosted: 20,000 million token × 0.50 USD = মাসে 10,000 USD।
    Self-host: মাসে 7,380 USD, আগের মতোই।
    এখন self-host সস্তা, আর এতে chat-এর লেখা ShopLink-এর নিজের server-এই থাকে, যা নতুন customer চেয়েছে।

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

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

টোকেন বাড়লে হোস্টেড API-র খরচও বাড়ে (টোকেন হলো লেখার ছোট একটা টুকরো, প্রায় একটা শব্দের মতো)। সেলফ-হোস্টে খরচ স্থির: GPU আর একজন ইঞ্জিনিয়ার, ট্রাফিক যা-ই হোক। ২ বিলিয়ন টোকেনে এই স্থির খরচ অনেক বড়। ২০ বিলিয়ন টোকেনে সেটা API-র বিলের চেয়ে ছোট। প্রাইভেসির নিয়মও আপনাকে সেলফ-হোস্ট করতে বাধ্য করতে পারে।

কাজ শেষ, যখন আপনার কাছে দুই অবস্থার জন্য দুই অপশনের মাসিক খরচ আছে, আর GPU খরচ আপনি নিজে হাতে মিলিয়েছেন।

নিজেকে যাচাই করুনবেশিরভাগ টিম প্রথমে হোস্টেড API দিয়ে শুরু করে, পরে সেলফ-হোস্টে যায় কেন?উত্তর দেখুন

হোস্টেড API দিয়ে দ্রুত শুরু করা যায়, আর লোড সামলানো ভেন্ডরের কাজ। সেলফ-হোস্টে স্থির খরচ আছে, তাই এটা লাভজনক হয় শুধু যখন টোকেনের বিল অনেক বড়, অথবা প্রাইভেসি বা পুরো নিয়ন্ত্রণ দরকার।

আরেকটু কঠিন করে দেখুন

প্রথম প্রম্পটে একটা সংখ্যা বদলান, যেমন হোস্টেডের দাম ১ মিলিয়ন টোকেনে ৫ USD করুন। আগে আন্দাজ করুন: ব্রেক-ইভেন কি বাড়বে, না কমবে? তারপর মডেলকে দিয়ে মিলিয়ে দেখুন।

টাস্ক ২

১৬, ৮, ৪ বিটে মডেলের মেমরি হিসাব করুন

এটা কেন দরকার

একটা মডেল চালানোর জন্য বাছার সময় প্রথম প্রশ্ন: এটা কি আমার GPU বা ল্যাপটপের মেমরিতে ধরবে? ১৪০ GB-এর ফাইল ডাউনলোড করার আগেই একটা সহজ হিসাবে কয়েক সেকেন্ডে এর উত্তর পাওয়া যায়।

  1. ধাপ ১
    নতুন চ্যাট

    এই প্রম্পটটা কপি করুন, পেস্ট করে Enter চাপুন। মডেল ৭০ বিলিয়ন প্যারামিটারের মডেলের জন্য একটা মেমরি টেবিল বানাবে।

    প্রম্পট
    একটা language model-এর 70 billion parameter আছে। এই নিয়মটা ব্যবহার করো: weight-এর memory (GB) = billion-এ parameter সংখ্যা × প্রতি weight-এর bit ÷ 8।
    
    16-bit, 8-bit আর 4-bit-এ weight-এর memory-র একটা table বানাও। তারপর বলো এর মধ্যে কোনগুলো 80 GB memory-র একটা GPU-তে ধরে। শেষে এক বাক্যে বলো, weight ছাড়া server-এর run করার সময় আর কী ধরনের memory লাগে।

    আপনি দেখবেন: 16-বিটে ১৪০ GB, 8-বিটে ৭০ GB, 4-বিটে ৩৫ GB। ৮০ GB-তে শুধু 8-বিট আর 4-বিট ধরে, আর 8-বিটে জায়গা খুব কম থাকে।

    উদাহরণ উত্তর
    Weight memory = 70 × bit ÷ 8
    16-bit: 70 × 16 ÷ 8 = 140 GB
    8-bit: 70 × 8 ÷ 8 = 70 GB
    4-bit: 70 × 4 ÷ 8 = 35 GB
    80 GB-র একটা GPU-তে ধরে: 8-bit (তবে জায়গা খুব কম বাকি থাকে) আর 4-bit। 16-bit ধরে না।
    Weight ছাড়াও server-এর KV cache-এর জন্য memory লাগে, যা এ পর্যন্ত পড়া লেখার model-এর স্বল্পমেয়াদি স্মৃতি।

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

  2. ধাপ ২
    একই চ্যাট

    এই প্রম্পটটা কপি করুন, একই চ্যাটে পেস্ট করে Enter চাপুন। এবার লক্ষ্য ৮ GB খালি জায়গার একটা ল্যাপটপ।

    প্রম্পট
    আমি আমার laptop-এ 8 billion parameter-এর একটা model চালাতে চাই। Laptop-এ 16 GB RAM আছে, তার প্রায় 8 GB model-এর জন্য খালি। একই নিয়ম ব্যবহার করে বলো, কোন precision (16-bit, 8-bit, না 4-bit) আমি ব্যবহার করতে পারব? প্রতিটার memory দাও। তারপর সবচেয়ে ছোট precision ব্যবহারের একটা ঝুঁকি বলো।

    আপনি দেখবেন: ৮B মডেল: ১৬ GB, ৮ GB, ৪ GB। শুধু 4-বিট আরামে ধরে। 8-বিট পুরো ৮ GB নিয়ে নেয়, তাই সেটা খুব টানাটানি।

    উদাহরণ উত্তর
    16-bit: 8 × 16 ÷ 8 = 16 GB। অনেক বড়।
    8-bit: 8 × 8 ÷ 8 = 8 GB। তোমার পুরো খালি memory লাগবে, তাই খুব টানাটানি।
    4-bit: 8 × 4 ÷ 8 = 4 GB। এটা ধরে।
    4-bit ব্যবহার করো। একটা ঝুঁকি: উত্তরের মান একটু খারাপ হতে পারে, যেমন কঠিন প্রশ্নে ভুল বাড়তে পারে।

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

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

একটা মডেল আসলে অনেক বড় একটা সংখ্যার তালিকা, যাকে বলে ওয়েট। ১৬ বিটে প্রতিটা সংখ্যা ২ বাইট নেয়। কোয়ান্টাইজেশন প্রতিটা সংখ্যা কম বিটে (৮ বা ৪) রাখে, তাই মডেলের ২ থেকে ৪ গুণ কম মেমরি লাগে। দাম হলো মানে সামান্য কমতি। ওয়েটই পুরো মেমরি না: সার্ভারের KV ক্যাশের জন্যও মেমরি লাগে (এ পর্যন্ত পড়া লেখার স্বল্পমেয়াদি স্মৃতি)।

কাজ শেষ, যখন আপনার কাছে ৭০B মডেলের মেমরি টেবিল (১৪০, ৭০, ৩৫ GB) আর ৮B মডেলের টেবিল (১৬, ৮, ৪ GB) আছে।

নিজেকে যাচাই করুনকোয়ান্টাইজেশন কী বদলায়, আর তার ট্রেড-অফ কী?উত্তর দেখুন

এটা ওয়েটকে কম বিটে রাখে, যেমন 16-এর বদলে ৪, তাই মডেলের প্রায় ২ থেকে ৪ গুণ কম মেমরি লাগে আর সেটা দ্রুত চলে। বেশিরভাগ কাজে এর দাম হলো মানে সামান্য কমতি।

আরেকটু কঠিন করে দেখুন

মডেলকে বলুন একই মডেলের 16-বিট আর 4-বিট ভার্সন তুলনা করার জন্য ৫টা প্রশ্নের একটা টেস্ট বানাতে। কোন ধরনের প্রশ্নে মানের পতন আগে ধরা পড়বে?

টাস্ক ৩

প্রিফিক্স ক্যাশিংয়ে কত সাশ্রয়, হিসাব করুন

এটা কেন দরকার

আপনি যখন একটা সাপোর্ট বট বানাবেন, প্রতিটা রিকোয়েস্টে একই লম্বা ইনস্ট্রাকশন বারবার যায়। সেই টোকেনগুলোর দাম আপনি বারবার দেন। প্রম্পট সঠিক ক্রমে লিখলে ক্যাশিং এই বিল অনেক কমাতে পারে।

  1. ধাপ ১
    নতুন চ্যাট

    আগে আন্দাজ করুন: ক্যাশিং কি খরচের অর্ধেকের বেশি বাঁচাবে? তারপর এই প্রম্পটটা কপি করুন, পেস্ট করে Enter চাপুন।

    প্রম্পট
    একটা support bot দিনে 10,000টা request পায় (সব সংখ্যা বানানো)। প্রতিটা request একই 3,000 token-এর system prompt দিয়ে শুরু হয়। User-এর message আরও 100 token যোগ করে। Input token-এর দাম 1 million-এ 1 USD। Cached input token-এর দাম 1 million-এ 0.10 USD (90% ছাড়)।
    
    দিনের input খরচ বের করো: (1) prefix caching ছাড়া, আর (2) prefix caching-সহ, যেখানে system prompt cache করা। হিসাব দেখাও। তারপর সাশ্রয়টা শতাংশে দাও।

    আপনি দেখবেন: ক্যাশিং ছাড়া: দিনে ৩১ USD। ক্যাশিং-সহ: দিনে ৪ USD। সাশ্রয় প্রায় ৮৭%। আপনি 'অর্ধেকের বেশি' বললে আপনার আন্দাজ ঠিক ছিল।

    উদাহরণ উত্তর
    Caching ছাড়া: 3,100 token × 10,000 = 31 million token × 1 USD = দিনে 31 USD।
    Caching-সহ: cache করা অংশ 3,000 × 10,000 = 30 million token × 0.10 USD = 3 USD। নতুন অংশ 100 × 10,000 = 1 million token × 1 USD = 1 USD। মোট 4 USD।
    সাশ্রয়: 27 USD, প্রায় 87%।

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

  2. ধাপ ২
    একই চ্যাট

    ভাবুন: প্রম্পট আজকের তারিখ আর ইউজারের নাম দিয়ে শুরু হলে কী সমস্যা হবে? তারপর এই প্রম্পটটা কপি করুন, একই চ্যাটে পেস্ট করে Enter চাপুন।

    প্রম্পট
    Team এখন system prompt বদলেছে। প্রথম লাইন হয়েছে: "Today is {current date and time}. The user's name is {name}."। বাকি 3,000 token আগের মতোই আছে। এখন prefix caching ভালো কাজ করছে না। 3টা ছোট বাক্যে কারণটা বুঝিয়ে বলো, আর prompt কীভাবে বদলালে cache আবার কাজ করবে, সেটা দেখাও।

    আপনি দেখবেন: তারিখ আর নাম প্রতিটা রিকোয়েস্টে বদলায়, তাই প্রম্পটের শুরুটা কখনো একই থাকে না। ক্যাশ আর ব্যবহার করা যায় না। সমাধান: স্থির লেখা আগে, বদলানো লেখা শেষে রাখুন।

    উদাহরণ উত্তর
    তারিখ, সময় আর নাম প্রতিটা request-এ বদলায়। Prompt-এর শুরু হুবহু এক থাকলেই শুধু cache কাজ করে, তাই server-কে প্রতিবার শূন্য থেকে কাজ করতে হয়। সমাধান: আগে 3,000 token-এর স্থির অংশ রাখো, তারপর শেষে তারিখ, সময় আর নাম যোগ করো:
    [fixed system prompt]
    Today is {date}. The user's name is {name}.

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

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

সার্ভার আপনার প্রম্পটের শুরুর অংশে অনেক কাজ করে আর সেটা জমিয়ে রাখে। এই জমানো কাজের নাম KV ক্যাশ। প্রিফিক্স ক্যাশিং থাকলে একই লেখা দিয়ে শুরু হওয়া নতুন রিকোয়েস্ট সেটা আবার ব্যবহার করে, আর ওই অংশের জন্য আপনি প্রায় ৯০% কম দেন। কিন্তু মিল হতে হবে প্রথম অক্ষর থেকে হুবহু। উপরের একটা বদলানো লাইনই এটা ভেঙে দেয়।

কাজ শেষ, যখন আপনার কাছে দিনের খরচ ৩১ USD আর ৪ USD আছে, আর স্থির লেখা আগে রাখা একটা নতুন প্রম্পট আছে।

নিজেকে যাচাই করুনপ্রম্পটের সবার জন্য এক রকম অংশ কেন আগে রাখতে হয়?উত্তর দেখুন

প্রম্পটের শুরু হুবহু মিললেই সার্ভার ক্যাশ আবার ব্যবহার করে। শুরুর দিকে কিছু বদলালে পুরো প্রম্পট নতুন মনে হয়, তাই ক্যাশ হিট হয় না।

আরেকটু কঠিন করে দেখুন

দিনে ১০,000-এর বদলে ১,০০০ রিকোয়েস্ট ধরে দেখুন। এখন দিনে কত USD বাঁচে? কখন প্রিফিক্স ক্যাশিংয়ের পেছনে সময় দেওয়া লাভজনক নয়?

টাস্ক ৪

সিম্পটম দেখে ইনফারেন্স মেট্রিক চিনে নিন

এটা কেন দরকার

আপনি যখন নিজের মডেল সার্ভার চালাবেন, ইউজার বলবে "এটা ধীর"। কিন্তু "ধীর" মানে চার রকম হতে পারে। আগে সঠিক মেট্রিক চিনতে হবে, নইলে ভুল ফিক্স বাছবেন।

  1. ধাপ ১
    নতুন চ্যাট

    এই প্রম্পটটা কপি করুন, পেস্ট করে Enter চাপুন। উত্তর পড়ার আগে ৩ নম্বর সিম্পটমের মেট্রিক কী হবে, আন্দাজ করুন।

    প্রম্পট
    আমি একটা LLM inference server চালাই। প্রতিটা symptom-এর জন্য বলো কোন মূল metric খারাপ, আর ১টা সবচেয়ে ভালো fix বাছো।
    
    Metric:
    - TTFT: প্রথম শব্দ দেখা যাওয়া পর্যন্ত সময়।
    - TPS per request: একজন user-এর জন্য শব্দ কত দ্রুত আসে।
    - Aggregate throughput: সব user মিলিয়ে প্রতি সেকেন্ডে মোট token।
    - p99 latency: সবচেয়ে ধীর 1% request-এর সময় কত লাগে।
    
    Fix-এর list থেকে বাছো: prefix caching, continuous batching (server GPU-তে একসাথে অনেক request মিশিয়ে চালায়), speculative decoding (একটা ছোট model শব্দ আন্দাজ করে, বড় model সেগুলো যাচাই করে), ছোট prompt, ছোট বা quantized model, অথবা আরও GPU।
    
    Symptom:
    1. User-রা 20,000 token-এর একটা document পাঠায়। প্রথম শব্দ আসার আগে তারা 6 সেকেন্ড অপেক্ষা করে। এরপর লেখা দ্রুত আসে।
    2. Server-এ মাত্র একজন user থাকলেও লেখা আসে প্রতি সেকেন্ডে 8 token, যা ধীর লাগে।
    3. GPU প্রায় 60% সময় বসে থাকে। Server একটা request পুরোপুরি শেষ করে তারপর পরেরটা শুরু করে। সব user মিলিয়ে প্রতি সেকেন্ডে token কম।
    4. বেশিরভাগ request দ্রুত, কিন্তু queue লম্বা হলে সবচেয়ে ধীর 1% request-এ 40 সেকেন্ড লাগে।
    
    একটা table দিয়ে উত্তর দাও: symptom নম্বর, metric, fix, আর 12 শব্দ বা কম শব্দে কারণ।

    আপনি দেখবেন: ৪ সারির একটা টেবিল। মোটামুটি: ১ হলো TTFT, ২ হলো TPS per request, ৩ হলো অ্যাগ্রিগেট থ্রুপুট, ৪ হলো p99 ল্যাটেন্সি। কিছু সিম্পটমের একাধিক ভালো ফিক্স থাকতে পারে।

    উদাহরণ উত্তর
    1 | TTFT | ছোট prompt | লম্বা prompt-এ প্রথম শব্দ দেরিতে আসে
    2 | TPS per request | speculative decoding | আন্দাজ করা শব্দে এক user-এর stream দ্রুত হয়
    3 | Aggregate throughput | continuous batching | request মিশিয়ে চালায়, GPU বসে থাকে না
    4 | p99 latency | আরও GPU | লম্বা queue ধীরতম request-কে কষ্ট দেয়

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

  2. ধাপ ২
    একই চ্যাট

    এই প্রশ্নটা কপি করুন, একই চ্যাটে পেস্ট করে Enter চাপুন। উত্তরটা টেবিলের সাথে মেলান।

    প্রম্পট
    একটা server-এর aggregate throughput বেশি হয়েও কি একজন user-এর কাছে ধীর লাগতে পারে? ২টা ছোট বাক্যে উত্তর দাও।

    আপনি দেখবেন: হ্যাঁ। থ্রুপুট সব ইউজার মিলিয়ে গোনে, কিন্তু একজন ইউজার শুধু নিজের অপেক্ষা আর নিজের গতি টের পায়।

    উদাহরণ উত্তর
    হ্যাঁ। Throughput সব user-এর token একসাথে গোনে, তাই ব্যস্ত server-এর স্কোর বেশি হতে পারে। তবুও একজন user শুধু প্রথম শব্দের জন্য নিজের অপেক্ষা আর নিজের গতি টের পায়, আর লম্বা queue হলে সেই অপেক্ষা বড় হতে পারে।

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

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

"ধীর"-এর চারটা চেহারা আছে। TTFT (প্রথম শব্দ আসার সময়) হলো অপেক্ষা। TPS per request হলো এক ইউজারের স্ট্রিমের গতি। অ্যাগ্রিগেট থ্রুপুট হলো সার্ভারের মোট কাজ। p99 ল্যাটেন্সি হলো সবচেয়ে ধীর ১% ইউজারের অপেক্ষা। প্রতিটার ফিক্স আলাদা।

কাজ শেষ, যখন আপনার কাছে ৪টা সিম্পটমের মেট্রিক আর ফিক্স-সহ একটা টেবিল আছে, আর থ্রুপুট বনাম এক ইউজারের অনুভূতি নিয়ে একটা পরিষ্কার উত্তর আছে।

নিজেকে যাচাই করুন২ নম্বর সিম্পটমটা মাত্র একজন ইউজার থাকলেও হয়। কন্টিনিউয়াস ব্যাচিং এটা ঠিক করতে পারে না কেন?উত্তর দেখুন

কন্টিনিউয়াস ব্যাচিং তখনই কাজে লাগে যখন অনেক ইউজার একটা GPU ভাগ করে, তাই এটা মোট থ্রুপুট বাড়ায়। একজন ইউজার থাকলে GPU আগে থেকেই শুধু তার জন্যই কাজ করছে। ওই এক স্ট্রিম দ্রুত করতে ছোট বা কোয়ান্টাইজড মডেল, অথবা স্পেকুলেটিভ ডিকোডিং লাগে।

আরেকটু কঠিন করে দেখুন

৫ নম্বর একটা সিম্পটম বানান, যার দুটো সম্ভাব্য ফিক্স আছে। মডেলকে জিজ্ঞেস করুন কোন ফিক্স আগে চেষ্টা করা উচিত আর কেন। আপনি কি ক্রমটার সাথে একমত?

ভিডিও দেখুন · ৮টি

কুইজ

কী শিখলেন যাচাই করুন। ৫টি প্রশ্ন।

১. রুল অব থাম্ব অনুযায়ী কখন একটি টিমের হোস্টেড API থেকে সেলফ-হোস্টিংয়ে যাওয়া উচিত?

২. PagedAttention আর কন্টিনিউয়াস ব্যাচিংয়ের কারণে এই পার্ট কোন ইনফারেন্স সার্ভারকে থ্রুপুট চ্যাম্পিয়ন বলেছে?

৩. প্রিফিক্স ক্যাশিং কী করে?

৪. স্পেকুলেটিভ ডিকোডিং 2-3 গুণ থ্রুপুট বাড়ায়, কিন্তু আউটপুটের মান কমিয়ে দেয়।

৫. কোয়ান্টাইজেশন মডেলের ওয়েট 16-বিট থেকে 8-বিট বা 4-বিটে নামায়, যাতে মানের সামান্য ক্ষতিতে GPU মেমরি 2-4 গুণ কমে।

মেলাতে সব প্রশ্নের উত্তর দিন।

তথ্যসূত্র

সোর্স

সব সাইটেশন মূল পেপার (arXiv), ভেন্ডরের ডক্স (OpenAI, Anthropic, Google) বা অফিশিয়াল টিম ব্লগে যায়। প্রতিটি পাতা খুলে সাইটেশনের তথ্য যাচাই করা হয়েছে।

  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