প্রযুক্তিগত গাইড

ক্রমাগত ব্যাচিং

ক্রমাগত ব্যাচিং হল একটি পরিবেশন কৌশল যা একটি সম্পূর্ণ স্থির ব্যাচ শেষ হওয়ার জন্য অপেক্ষা করার পরিবর্তে একটি চলমান ব্যাচ টোকেন-বাই-টোকেন থেকে অনুরোধ যোগ করে এবং সরিয়ে দেয়।

ওভারভিউ

ক্রমাগত ব্যাচিং হল একটি পরিবেশন কৌশল যা একটি সম্পূর্ণ স্থির ব্যাচ শেষ হওয়ার জন্য অপেক্ষা করার পরিবর্তে একটি চলমান ব্যাচ টোকেন-বাই-টোকেন থেকে অনুরোধ যোগ করে এবং সরিয়ে দেয়। এটি GPU কে ​​ক্রমাগত ব্যস্ত রাখে এবং একটি AI মডেল একবারে কতজন ব্যবহারকারীকে পরিবেশন করতে পারে তা দ্রুত বৃদ্ধি করে।

কন্টিনিউয়াস ব্যাচিং হল একটি প্রযুক্তিগত বিল্ডিং ব্লক যা মডেলের গুণমান, পরিকাঠামোর খরচ, লেটেন্সি এবং স্কেলে নির্ভরযোগ্যতাকে প্রভাবিত করে।

গভীর ডুব

একটি ব্যাচে একসাথে অনেক অনুরোধ প্রসেস করলে GPU গুলি দ্রুততম হয়। নিষ্পাপ দৃষ্টিভঙ্গি, স্ট্যাটিক ব্যাচিং, অনুরোধের একটি নির্দিষ্ট সেটকে গোষ্ঠীভুক্ত করে, সেগুলিকে সম্পূর্ণ করার জন্য চালায়, তারপর পরবর্তী ব্যাচ শুরু করে। সমস্যা: ল্যাঙ্গুয়েজ মডেলের আউটপুটগুলি দৈর্ঘ্যে ব্যাপকভাবে পরিবর্তিত হয়, তাই ছোট অনুরোধগুলি তাড়াতাড়ি শেষ হয়ে যায় এবং ব্যাচটি দীর্ঘতম সময়ের জন্য অপেক্ষা করার সময় তাদের স্লটগুলি নিষ্ক্রিয় থাকে, GPU চক্র নষ্ট করে এবং নতুন আগমনে বিলম্ব করে। ক্রমাগত ব্যাচিং (যাকে ইন-ফ্লাইট বা পুনরাবৃত্তি-স্তরের ব্যাচিংও বলা হয়, যা Orca কাগজ দ্বারা জনপ্রিয় এবং vLLM, TensorRT-LLM, এবং TGI তে ব্যবহৃত হয়) একটি একক ডিকোডিং ধাপের গ্রানুলিটিতে কাজ করে। প্রতিটি টোকেন তৈরি হওয়ার পরে, সমাপ্ত ক্রমগুলি ব্যাচ থেকে প্রস্থান করে এবং নতুনভাবে আসা অনুরোধগুলি অবিলম্বে স্লট করা হয়। এটি ব্যাচকে পূর্ণ রাখে এবং GPU-কে স্যাচুরেটেড রাখে, অপেক্ষাকৃত ব্যবহারকারীদের জন্য অপেক্ষাকৃত কম বিলম্বের সাথে প্রায়শই থ্রুপুটকে কয়েকবার বাড়িয়ে দেয়।

প্রযুক্তিগত অন্তর্দৃষ্টি

মূল স্থানান্তর হল সম্পূর্ণ অনুরোধ ব্যাচ করা থেকে পৃথক পুনরাবৃত্তি ব্যাচ করা। প্রতিটি ডিকোড ধাপে সময়সূচী সক্রিয় সেট তৈরি করে: এটি সমস্ত ইন-ফ্লাইট সিকোয়েন্সের উপর একটি ফরোয়ার্ড পাস চালায়, প্রতিটি একটি টোকেন নির্গত করে, সিকোয়েন্সের শেষের টোকেন বা দৈর্ঘ্যের সীমাতে আঘাতকারী যেকোনকে উচ্ছেদ করে এবং মুক্ত স্লটগুলি পূরণ করার জন্য সারিবদ্ধ অনুরোধগুলি স্বীকার করে। PagedAttention-এর নমনীয় KV মেমরির সাথে এটিকে পেয়ার করার ফলে সিকোয়েন্সগুলি ঢোকানো এবং অপসারণ করা মিড-ফ্লাইট সস্তা হয়ে যায়, যেহেতু প্রতিটি সিকোয়েন্সের ক্যাশে স্বাধীন ব্লকে থাকে।

ক্রমাগত ব্যাচিং আয়ত্ত করা

ক্রমাগত ব্যাচিং হল একটি পরিবেশন কৌশল যা একটি সম্পূর্ণ স্থির ব্যাচ শেষ হওয়ার জন্য অপেক্ষা করার পরিবর্তে একটি চলমান ব্যাচ টোকেন-বাই-টোকেন থেকে অনুরোধ যোগ করে এবং সরিয়ে দেয়। এটি GPU কে ​​ক্রমাগত ব্যস্ত রাখে এবং একটি AI মডেল একবারে কতজন ব্যবহারকারীকে পরিবেশন করতে পারে তা দ্রুত বৃদ্ধি করে। কন্টিনিউয়াস ব্যাচিং হল একটি প্রযুক্তিগত বিল্ডিং ব্লক যা মডেলের গুণমান, পরিকাঠামোর খরচ, লেটেন্সি এবং স্কেলে নির্ভরযোগ্যতাকে প্রভাবিত করে। গভীর বোঝাপড়া তৈরি করতে, একটি অপারেটিং মডেল হিসাবে অবিচ্ছিন্ন ব্যাচিংকে বিবেচনা করুন, একটি একক বৈশিষ্ট্য নয়: পছন্দসই ফলাফলগুলি সংজ্ঞায়িত করুন, অনুমানগুলি স্পষ্ট করুন এবং সিস্টেমটি নির্ভরযোগ্যভাবে কী করতে পারে তা এখনও বিশেষজ্ঞের বিচারের প্রয়োজন থেকে আলাদা করুন৷

অনুশীলনে, অবিচ্ছিন্ন ব্যাচিং ব্যবহার করে শক্তিশালী দলগুলি নির্ভরযোগ্যতা এবং খরচের বিপরীতে আর্কিটেকচার, ডেটা এবং অবকাঠামো পছন্দকে অপ্টিমাইজ করে। তারা সুস্পষ্ট সাফল্যের মাপকাঠি নথিভুক্ত করে, বাস্তবসম্মত ডেটা এবং কর্মপ্রবাহের বিরুদ্ধে পরীক্ষা করে এবং এককালীন বেঞ্চমার্ক জয়ের পরিবর্তে পর্যবেক্ষিত ব্যর্থতার ধরণগুলির উপর ভিত্তি করে পুনরাবৃত্তি করে। এখানেই তাত্ত্বিক বোঝাপড়া পণ্য, নীতি এবং অপারেশন জুড়ে টেকসই সক্ষমতায় পরিণত হয়।

আর্কিটেকচারের সিদ্ধান্তগুলি বছরের পর বছর ধরে কর্মক্ষমতা এবং অপারেটিং খরচ চালায়। একই সময়ে, একটি বেঞ্চমার্ক অপ্টিমাইজ করা বৃহত্তর সিস্টেম দুর্বলতা আড়াল করতে পারে। সবচেয়ে স্থিতিস্থাপক পদ্ধতি হল প্রশাসনিক শৃঙ্খলার সাথে পরীক্ষার গতিকে একত্রিত করা: পাইলট চালান, প্রমাণ ক্যাপচার করুন, সিদ্ধান্তের লগ প্রকাশ করুন এবং মডেল আচরণ, ব্যবহারকারীর প্রত্যাশা এবং নিয়ন্ত্রক প্রয়োজনীয়তাগুলি বিকশিত হওয়ার সাথে সাথে অবিচ্ছিন্ন সুরক্ষাগুলি আপডেট করুন।

কৌশলগত প্রভাব

আর্কিটেকচারের সিদ্ধান্তগুলি বছরের পর বছর ধরে কর্মক্ষমতা এবং অপারেটিং খরচ চালায়।

আর্কিটেকচারের সিদ্ধান্তগুলি বছরের পর বছর ধরে কর্মক্ষমতা এবং অপারেটিং খরচ চালায়। উচ্চ-মানের স্থাপনায়, এটি পরিমাপযোগ্য অপারেটিং নিয়ম, মালিকানার সীমানা এবং পুনরাবৃত্ত পর্যালোচনার আচার-অনুষ্ঠানে অনুবাদ করা হয় যাতে দলগুলি অস্পষ্টতার পরিবর্তে আত্মবিশ্বাস বাড়াতে পারে।

কারিগরি শিক্ষা দলগুলোকে সঠিক স্ট্যাক বেছে নিতে সাহায্য করে, শুধু নতুনটি নয়।

কারিগরি শিক্ষা দলগুলোকে সঠিক স্ট্যাক বেছে নিতে সাহায্য করে, শুধু নতুনটি নয়। উচ্চ-মানের স্থাপনায়, এটি পরিমাপযোগ্য অপারেটিং নিয়ম, মালিকানার সীমানা এবং পুনরাবৃত্ত পর্যালোচনার আচার-অনুষ্ঠানে অনুবাদ করা হয় যাতে দলগুলি অস্পষ্টতার পরিবর্তে আত্মবিশ্বাস বাড়াতে পারে।

ভালো ইঞ্জিনিয়ারিং পছন্দ উৎপাদনে নির্ভরযোগ্যতার ঘটনা কমিয়ে দেয়।

ভালো ইঞ্জিনিয়ারিং পছন্দ উৎপাদনে নির্ভরযোগ্যতার ঘটনা কমিয়ে দেয়। উচ্চ-মানের স্থাপনায়, এটি পরিমাপযোগ্য অপারেটিং নিয়ম, মালিকানার সীমানা এবং পুনরাবৃত্ত পর্যালোচনার আচার-অনুষ্ঠানে অনুবাদ করা হয় যাতে দলগুলি অস্পষ্টতার পরিবর্তে আত্মবিশ্বাস বাড়াতে পারে।

ক্রমাগত ব্যাচিং এর ভবিষ্যত

ক্রমাগত ব্যাচিং এখন প্রোডাকশন এলএলএম পরিবেশনে আদর্শ। ভবিষ্যত কাজ সময়সূচীকে পরিমার্জিত করে: কম্পিউট-হেভি প্রিফিল ফেজকে হালকা ডিকোড ফেজ (ডিস্যাগ্রিগেশন), স্থগিত ডিকোডিং এড়াতে খণ্ডিত প্রিফিল, মিশ্র কাজের চাপের জন্য অগ্রাধিকার এবং ন্যায্যতা নীতি এবং অনুমানমূলক ডিকোডিংয়ের সাথে আরও শক্ত সংযোগ যাতে প্রতি ধাপে একাধিক ড্রাফ্ট ভ্যালিডেড টোকেন হয়। লক্ষ্য হল স্বতন্ত্র প্রতিক্রিয়া লেটেন্সি কম এবং অনুমানযোগ্য রেখে প্রতি GPU-প্রতি-সেকেন্ডে সর্বাধিক টোকেন চাপানো।

বাস্তব-বিশ্ব বাস্তবায়ন

একটি চ্যাট এপিআই নতুন আগত ব্যবহারকারীর বার্তাগুলিকে পরবর্তী ব্যাচের জন্য সারিবদ্ধ করার পরিবর্তে অবিলম্বে চলমান ব্যাচে ভর্তি করে

মিড-ব্যাচের একটি সংক্ষিপ্ত সম্পূর্ণ উত্তর উচ্ছেদ করা এবং এর স্লট ব্যাকফিল করা যাতে GPU দীর্ঘ প্রজন্মের জন্য অপেক্ষা না করে

vLLM-এর PagedAttention-এর সাথে ক্রমাগত ব্যাচিং একত্রিত করা প্রতিটি ডিকোড ধাপে সস্তায় সিকোয়েন্স সন্নিবেশ করা এবং অপসারণ করা

একটি কোড-সম্পূর্ণতা পরিষেবা যা ব্যাচ পূর্ণ রেখে বিস্ফোরিত, পরিবর্তনশীল-দৈর্ঘ্যের ট্র্যাফিকের অধীনে উচ্চ টোকেন-প্রতি-সেকেন্ড বজায় রাখে

বাস্তবায়ন নিদর্শন

অনুশীলনে ক্রমাগত ব্যাচিং

একটি চ্যাট এপিআই নতুন আগত ব্যবহারকারীর বার্তাগুলিকে পরবর্তী ব্যাচের জন্য সারিবদ্ধ করার পরিবর্তে অবিলম্বে চলমান ব্যাচে ভর্তি করে৷

একটি চ্যাট এপিআই নতুন আগত ব্যবহারকারীর বার্তাগুলিকে পরবর্তী ব্যাচের জন্য সারিবদ্ধ করার পরিবর্তে অবিলম্বে চলমান ব্যাচে ভর্তি করে, দলগুলি সাধারণত ভাল ফলাফল পায় যখন তারা সামনের মানের থ্রেশহোল্ডগুলিকে সংজ্ঞায়িত করে, প্রান্তের ক্ষেত্রে একটি মানবিক বৃদ্ধির পথ রাখে এবং সময়ের সাথে সাথে উত্পাদনশীলতা লাভ এবং ত্রুটির খরচ উভয়ই ট্র্যাক করে৷

অনুশীলনে ক্রমাগত ব্যাচিং

একটি সংক্ষিপ্ত সম্পূর্ণ উত্তর মিড-ব্যাচ উচ্ছেদ করা এবং এর স্লট ব্যাকফিল করা যাতে GPU দীর্ঘ প্রজন্মের জন্য অপেক্ষা না করে।

একটি সংক্ষিপ্ত সম্পূর্ণ উত্তর মিড-ব্যাচ উচ্ছেদ করা এবং এর স্লটকে ব্যাকফিল করা যাতে GPU কখনই দীর্ঘ প্রজন্মের জন্য অপেক্ষায় অলস না হয় দলগুলি সাধারণত ভাল ফলাফল পায় যখন তারা সামনের মানের থ্রেশহোল্ডগুলিকে সংজ্ঞায়িত করে, প্রান্তের ক্ষেত্রে একটি মানবিক বৃদ্ধির পথ রাখে এবং সময়ের সাথে সাথে উত্পাদনশীলতা লাভ এবং ত্রুটির খরচ উভয়ই ট্র্যাক করে৷

অনুশীলনে ক্রমাগত ব্যাচিং

vLLM-এর PagedAttention-এর সাথে ক্রমাগত ব্যাচিং একত্রিত করা প্রতিটি ডিকোড ধাপে সস্তায় সিকোয়েন্স সন্নিবেশ করা এবং অপসারণ করা।

vLLM-এর PagedAttention-এর সাথে ক্রমাগত ব্যাচিং-এর সংমিশ্রণ করা প্রতিটি ডিকোড ধাপে সস্তায় সিকোয়েন্সগুলি সন্নিবেশ করা এবং অপসারণ করা দলগুলি সাধারণত ভাল ফলাফল পায় যখন তারা সামনের মানের থ্রেশহোল্ডগুলিকে সংজ্ঞায়িত করে, প্রান্তের ক্ষেত্রে একটি মানবিক বৃদ্ধির পথ রাখে এবং সময়ের সাথে সাথে উত্পাদনশীলতা লাভ এবং ত্রুটির খরচ উভয়ই ট্র্যাক করে৷

অনুশীলনে ক্রমাগত ব্যাচিং

একটি কোড-সম্পূর্ণ পরিষেবা যা ব্যাচ পূর্ণ রেখে বিস্ফোরিত, পরিবর্তনশীল-দৈর্ঘ্যের ট্র্যাফিকের অধীনে উচ্চ টোকেন-প্রতি-সেকেন্ড বজায় রাখে।

একটি কোড-সম্পূর্ণতা পরিষেবা যা ব্যাচ পূর্ণ রেখে পরিবর্তনশীল-দৈর্ঘ্যের ট্র্যাফিকের অধীনে উচ্চ টোকেন-প্রতি-সেকেন্ড বজায় রাখে, দলগুলি সাধারণত ভাল ফলাফল পায় যখন তারা সামনের মানের থ্রেশহোল্ডগুলিকে সংজ্ঞায়িত করে, প্রান্তের ক্ষেত্রে একটি মানবিক বৃদ্ধির পথ রাখে এবং সময়ের সাথে সাথে উত্পাদনশীলতা লাভ এবং ত্রুটির খরচ উভয়ই ট্র্যাক করে৷

ঝুঁকি এবং প্রহরী

!

একটি বেঞ্চমার্ক অপ্টিমাইজ করা বৃহত্তর সিস্টেম দুর্বলতা আড়াল করতে পারে।

!

অবকাঠামো এবং রক্ষণাবেক্ষণের খরচ প্রায়ই অবমূল্যায়ন করা হয়।

!

সিস্টেমগুলি আরও জটিল হওয়ার সাথে সাথে সুরক্ষা এবং পর্যবেক্ষণযোগ্যতার ফাঁক বাড়তে পারে।

বাস্তবায়ন রোডম্যাপ

1

বাস্তবায়নের আগে বিলম্ব, গুণমান এবং খরচের লক্ষ্য নির্ধারণ করুন।

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

2

বাস্তবসম্মত লোড এবং ডেটা অবস্থার অধীনে বেঞ্চমার্ক।

বাস্তবসম্মত লোড এবং ডেটা অবস্থার অধীনে বেঞ্চমার্ক। প্রতিটি পদক্ষেপকে একটি প্রমাণ গেট হিসাবে বিবেচনা করুন: যদি মানদণ্ড পূরণ না হয়, রোলআউট থামান, ব্যবধান বন্ধ করুন এবং শুধুমাত্র তারপর ব্যবহার প্রসারিত করুন।

3

ত্রুটি, প্রবাহ, এবং ব্যবহারকারীর প্রভাবের জন্য যন্ত্র পর্যবেক্ষণ।

ত্রুটি, প্রবাহ, এবং ব্যবহারকারীর প্রভাবের জন্য যন্ত্র পর্যবেক্ষণ। প্রতিটি পদক্ষেপকে একটি প্রমাণ গেট হিসাবে বিবেচনা করুন: যদি মানদণ্ড পূরণ না হয়, রোলআউট থামান, ব্যবধান বন্ধ করুন এবং শুধুমাত্র তারপর ব্যবহার প্রসারিত করুন।

4

স্কেল করার আগে রোলব্যাক এবং ঘটনার প্রতিক্রিয়া পাথ প্রস্তুত করুন।

স্কেল করার আগে রোলব্যাক এবং ঘটনার প্রতিক্রিয়া পাথ প্রস্তুত করুন। প্রতিটি পদক্ষেপকে একটি প্রমাণ গেট হিসাবে বিবেচনা করুন: যদি মানদণ্ড পূরণ না হয়, রোলআউট থামান, ব্যবধান বন্ধ করুন এবং শুধুমাত্র তারপর ব্যবহার প্রসারিত করুন।

অন্বেষণ চালিয়ে যান