ক্রমাগত ব্যাচিং
ক্রমাগত ব্যাচিং হল একটি পরিবেশন কৌশল যা একটি সম্পূর্ণ স্থির ব্যাচ শেষ হওয়ার জন্য অপেক্ষা করার পরিবর্তে একটি চলমান ব্যাচ টোকেন-বাই-টোকেন থেকে অনুরোধ যোগ করে এবং সরিয়ে দেয়।
ওভারভিউ
It keeps the GPU constantly busy and sharply increases how many users an AI model can serve at once.
গভীর ডুব
একটি ব্যাচে একসাথে অনেক অনুরোধ প্রসেস করলে GPU গুলি দ্রুততম হয়। নিষ্পাপ দৃষ্টিভঙ্গি, স্ট্যাটিক ব্যাচিং, অনুরোধের একটি নির্দিষ্ট সেটকে গোষ্ঠীভুক্ত করে, সেগুলিকে সম্পূর্ণ করার জন্য চালায়, তারপর পরবর্তী ব্যাচ শুরু করে। সমস্যা: ল্যাঙ্গুয়েজ মডেলের আউটপুটগুলি দৈর্ঘ্যে ব্যাপকভাবে পরিবর্তিত হয়, তাই ছোট অনুরোধগুলি তাড়াতাড়ি শেষ হয়ে যায় এবং ব্যাচটি দীর্ঘতম সময়ের জন্য অপেক্ষা করার সময় তাদের স্লটগুলি নিষ্ক্রিয় থাকে, GPU চক্র নষ্ট করে এবং নতুন আগমনে বিলম্ব করে। ক্রমাগত ব্যাচিং (যাকে ইন-ফ্লাইট বা পুনরাবৃত্তি-স্তরের ব্যাচিংও বলা হয়, যা Orca কাগজ দ্বারা জনপ্রিয় এবং vLLM, TensorRT-LLM, এবং TGI তে ব্যবহৃত হয়) একটি একক ডিকোডিং ধাপের গ্রানুলিটিতে কাজ করে। প্রতিটি টোকেন তৈরি হওয়ার পরে, সমাপ্ত ক্রমগুলি ব্যাচ থেকে প্রস্থান করে এবং নতুনভাবে আসা অনুরোধগুলি অবিলম্বে স্লট করা হয়। এটি ব্যাচকে পূর্ণ রাখে এবং GPU-কে স্যাচুরেটেড রাখে, অপেক্ষাকৃত ব্যবহারকারীদের জন্য অপেক্ষাকৃত কম বিলম্বের সাথে প্রায়শই থ্রুপুটকে কয়েকবার বাড়িয়ে দেয়।
প্রযুক্তিগত অন্তর্দৃষ্টি
মূল স্থানান্তর হল সম্পূর্ণ অনুরোধ ব্যাচ করা থেকে পৃথক পুনরাবৃত্তি ব্যাচ করা। প্রতিটি ডিকোড ধাপে সময়সূচী সক্রিয় সেট তৈরি করে: এটি সমস্ত ইন-ফ্লাইট সিকোয়েন্সের উপর একটি ফরোয়ার্ড পাস চালায়, প্রতিটি একটি টোকেন নির্গত করে, সিকোয়েন্সের শেষের টোকেন বা দৈর্ঘ্যের সীমাতে আঘাতকারী যেকোনকে উচ্ছেদ করে এবং মুক্ত স্লটগুলি পূরণ করার জন্য সারিবদ্ধ অনুরোধগুলি স্বীকার করে। PagedAttention-এর নমনীয় KV মেমরির সাথে এটিকে পেয়ার করার ফলে সিকোয়েন্সগুলি ঢোকানো এবং অপসারণ করা মিড-ফ্লাইট সস্তা হয়ে যায়, যেহেতু প্রতিটি সিকোয়েন্সের ক্যাশে স্বাধীন ব্লকে থাকে।
কৌশলগত প্রভাব
খরচ ও বাজেট
আর্কিটেকচারের সিদ্ধান্তগুলি বছরের পর বছর ধরে কর্মক্ষমতা এবং অপারেটিং খরচ চালায়।
সুস্পষ্ট সিদ্ধান্ত
কারিগরি শিক্ষা দলগুলোকে সঠিক স্ট্যাক বেছে নিতে সাহায্য করে, শুধু নতুনটি নয়।
মান নিয়ন্ত্রণ
ভালো ইঞ্জিনিয়ারিং পছন্দ উৎপাদনে নির্ভরযোগ্যতার ঘটনা কমিয়ে দেয়।
ক্রমাগত ব্যাচিং এর ভবিষ্যত
ক্রমাগত ব্যাচিং এখন প্রোডাকশন এলএলএম পরিবেশনে আদর্শ। ভবিষ্যত কাজ সময়সূচীকে পরিমার্জিত করে: কম্পিউট-হেভি প্রিফিল ফেজকে হালকা ডিকোড ফেজ (ডিস্যাগ্রিগেশন), স্থগিত ডিকোডিং এড়াতে খণ্ডিত প্রিফিল, মিশ্র কাজের চাপের জন্য অগ্রাধিকার এবং ন্যায্যতা নীতি এবং অনুমানমূলক ডিকোডিংয়ের সাথে আরও শক্ত সংযোগ যাতে প্রতি ধাপে একাধিক ড্রাফ্ট ভ্যালিডেড টোকেন হয়। লক্ষ্য হল স্বতন্ত্র প্রতিক্রিয়া লেটেন্সি কম এবং অনুমানযোগ্য রেখে প্রতি GPU-প্রতি-সেকেন্ডে সর্বাধিক টোকেন চাপানো।
বাস্তব-বিশ্ব বাস্তবায়ন
একটি চ্যাট এপিআই নতুন আগত ব্যবহারকারীর বার্তাগুলিকে পরবর্তী ব্যাচের জন্য সারিবদ্ধ করার পরিবর্তে অবিলম্বে চলমান ব্যাচে ভর্তি করে
মিড-ব্যাচের একটি সংক্ষিপ্ত সম্পূর্ণ উত্তর উচ্ছেদ করা এবং এর স্লট ব্যাকফিল করা যাতে GPU দীর্ঘ প্রজন্মের জন্য অপেক্ষা না করে
vLLM-এর PagedAttention-এর সাথে ক্রমাগত ব্যাচিং একত্রিত করা প্রতিটি ডিকোড ধাপে সস্তায় সিকোয়েন্স সন্নিবেশ করা এবং অপসারণ করা
একটি কোড-সম্পূর্ণতা পরিষেবা যা ব্যাচ পূর্ণ রেখে বিস্ফোরিত, পরিবর্তনশীল-দৈর্ঘ্যের ট্র্যাফিকের অধীনে উচ্চ টোকেন-প্রতি-সেকেন্ড বজায় রাখে
ঝুঁকি এবং প্রহরী
একটি বেঞ্চমার্ক অপ্টিমাইজ করা বৃহত্তর সিস্টেম দুর্বলতা আড়াল করতে পারে।
অবকাঠামো এবং রক্ষণাবেক্ষণের খরচ প্রায়ই অবমূল্যায়ন করা হয়।
সিস্টেমগুলি আরও জটিল হওয়ার সাথে সাথে সুরক্ষা এবং পর্যবেক্ষণযোগ্যতার ফাঁক বাড়তে পারে।
বাস্তবায়ন রোডম্যাপ
বাস্তবায়নের আগে বিলম্ব, গুণমান এবং খরচের লক্ষ্য নির্ধারণ করুন।
বাস্তবসম্মত লোড এবং ডেটা অবস্থার অধীনে বেঞ্চমার্ক।
ত্রুটি, প্রবাহ, এবং ব্যবহারকারীর প্রভাবের জন্য যন্ত্র পর্যবেক্ষণ।
স্কেল করার আগে রোলব্যাক এবং ঘটনার প্রতিক্রিয়া পাথ প্রস্তুত করুন।
অন্বেষণ চালিয়ে যান
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Continuous Batching quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
পরবর্তী গাইড
এমএল ওয়ার্কলোডের জন্য কুবারনেটস
প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী
What is Continuous Batching?
ক্রমাগত ব্যাচিং হল একটি পরিবেশন কৌশল যা একটি সম্পূর্ণ স্থির ব্যাচ শেষ হওয়ার জন্য অপেক্ষা করার পরিবর্তে একটি চলমান ব্যাচ টোকেন-বাই-টোকেন থেকে অনুরোধ যোগ করে এবং সরিয়ে দেয়। এটি GPU কে ক্রমাগত ব্যস্ত রাখে এবং একটি AI মডেল একবারে কতজন ব্যবহারকারীকে পরিবেশন করতে পারে তা দ্রুত বৃদ্ধি করে।
এলএলএম পরিবেশনের জন্য স্ট্যাটিক (স্থির) ব্যাচিংয়ের প্রধান দুর্বলতা কী?
যেহেতু আউটপুট দৈর্ঘ্য পরিবর্তিত হয়, সমাপ্ত সিকোয়েন্সগুলি ধীরতমটি সম্পূর্ণ না হওয়া পর্যন্ত নিষ্ক্রিয় থাকে, GPU চক্র নষ্ট করে এবং নতুন অনুরোধগুলি বিলম্বিত করে।
ক্রমাগত ব্যাচিং কোন গ্রানুলিটিতে অনুরোধ যোগ এবং অপসারণ করে?
ক্রমাগত (পুনরাবৃত্তি-স্তরের) ব্যাচিং প্রতিটি একক ডিকোড পদক্ষেপের পরে সক্রিয় সেট আপডেট করে, তাই এটি সম্পূর্ণ অনুরোধের পরিবর্তে টোকেন-বাই-টোকেন পরিচালনা করে।
ক্রমাগত ব্যাচিংয়ের অধীনে একটি ক্রম মধ্য-ব্যাচ শেষ হলে, এর স্লটের কী হবে?
সমাপ্ত ক্রমগুলি উচ্ছেদ করা হয় এবং অপেক্ষার অনুরোধগুলি অবিলম্বে স্লট করা হয়, ব্যাচ পূর্ণ এবং GPU ব্যস্ত থাকে৷
কোন কৌশলটি স্বাভাবিকভাবে ক্রমাগত ব্যাচিংয়ের সাথে যোগ করে যাতে সিকোয়েন্সগুলি সন্নিবেশ করা/অপসারণ করা সস্তা হয়?
PagedAttention প্রতিটি সিকোয়েন্সের কেভি ক্যাশে স্বাধীন ব্লকে সঞ্চয় করে, তাই একটি সিকোয়েন্স মিড-ফ্লাইট যোগ করা বা অপসারণ করা অন্যদের মেমরিকে বিরক্ত করে না।
পুনরাবৃত্তি-স্তরের (নিরবিচ্ছিন্ন) ব্যাচিং জনপ্রিয় করার জন্য কোন গবেষণাপত্রকে সাধারণত কৃতিত্ব দেওয়া হয়?
Orca পেপারটি পুনরাবৃত্তি-স্তরের সময়সূচী প্রবর্তন করেছে, এবং ধারণাটি vLLM, TGI, এবং TensorRT-LLM-এর মতো সিস্টেম পরিবেশন করে গৃহীত হয়েছিল।