KV ক্যাশ রাউটিং: অপ্রয়োজনীয় LLM প্রিফিল কাজ কমান

যখন আপনার LLM ট্রাফিক জুড়ে পুনরাবৃত্ত প্রম্পট প্রিফিক্সগুলি বারবার প্রদর্শিত হয়, তখন KV ক্যাশ রাউটিং গুরুত্বপূর্ণ হয়ে ওঠে। সঠিক অনুরোধ সঠিক রিপ্লিকায় পৌঁছালে, সার্ভিং ইঞ্জিন ক্যাশ করা অ্যাটেনশন স্টেট পুনরায় ব্যবহার করতে পারে, একই প্রিফিল টোকেন বারবার পুনরায় গণনা করার পরিবর্তে।.
এটি একটি অবকাঠামো বিশদ মনে হতে পারে, তবে এটি দ্রুত একটি পণ্য সমস্যায় পরিণত হয়। দীর্ঘ সিস্টেম প্রম্পট, RAG প্রসঙ্গ, ফিউ-শট উদাহরণ এবং মাল্টি-টার্ন চ্যাট ইতিহাস প্রিফিল কাজকে ব্যয়বহুল করে তুলতে পারে। যখন প্রতিটি রিপ্লিকা একই প্রিফিক্স পুনরায় গণনা করে, তখন দলগুলি লেটেন্সি, GPU সময় এবং ক্ষমতা পরিকল্পনায় মূল্য প্রদান করে।.
ShareAI ডেভেলপারদের জন্য ১৫০+ মডেলের জন্য একটি API, মার্কেটপ্লেস দৃশ্যমানতা, রাউটিং এবং ফেইলওভার প্রদান করে। KV ক্যাশ রাউটিং একটি স্তর নিচে, মডেল-সার্ভিং অবকাঠামোর ভিতরে বসে। ShareAI পাঠকদের জন্য উপকারী শিক্ষা সহজ: রাউটিং সিদ্ধান্তগুলি AI স্ট্যাকের প্রতিটি স্তরে গুরুত্বপূর্ণ, মডেল পছন্দ থেকে শুরু করে কোন GPU রিপ্লিকা পুনরাবৃত্ত প্রম্পট পরিচালনা করে তা পর্যন্ত।.
কেন KV ক্যাশ রাউটিং গুরুত্বপূর্ণ
LLM ইনফারেন্সের সময়, একটি মডেল প্রথমে প্রিফিল পর্যায়ে ইনপুট প্রম্পট প্রক্রিয়া করে। এটি একটি কী-ভ্যালু ক্যাশ তৈরি করে, সাধারণত যাকে KV ক্যাশ বলা হয়, যাতে পরে তৈরি হওয়া টোকেনগুলি ইতিমধ্যে প্রক্রিয়াকৃত প্রসঙ্গে ফিরে যেতে পারে।.
প্রিফিক্স ক্যাশিং সার্ভিং ইঞ্জিনগুলিকে সেই ক্যাশ পুনরায় ব্যবহার করতে দেয় যখন একটি পরবর্তী অনুরোধ প্রম্পটের একই শুরু ভাগ করে। vLLM স্বয়ংক্রিয় প্রিফিক্স ক্যাশিং ডকুমেন্টেশন এটি ভাগ করা প্রিফিক্সগুলির জন্য KV ক্যাশ পুনরায় ব্যবহার হিসাবে বর্ণনা করে যাতে নতুন অনুরোধ ভাগ করা অংশের জন্য গণনা এড়াতে পারে।. SGLang প্রিফিক্স ক্যাশিং সাধারণ টোকেন সিকোয়েন্সের জন্য KV ক্যাশ ভাগ করার জন্য একটি সম্পর্কিত ধারণা ব্যবহার করে।.
এটি বিশেষভাবে গুরুত্বপূর্ণ সেই কাজের জন্য যেখানে অনেক অনুরোধ একইভাবে শুরু হয়: বড় সিস্টেম প্রম্পট সহ সাপোর্ট এজেন্ট, পুনরাবৃত্ত ডকুমেন্টেশন অংশ ব্যবহারকারী RAG অ্যাপ্লিকেশন, রিপোজিটরি নির্দেশাবলী সহ কোডিং এজেন্ট, বা চ্যাট পণ্য যা টার্ন জুড়ে কথোপকথনের ইতিহাস বহন করে।.
যেখানে রাউন্ড-রবিন ভেঙে পড়ে
প্রিফিক্স ক্যাশিং একটি রিপ্লিকায় সবচেয়ে সহজ। একই প্রক্রিয়া পুনরাবৃত্ত প্রিফিক্স দেখে এবং যদি মেমরি উপলব্ধ থাকে তবে এর ক্যাশ পুনরায় ব্যবহার করতে পারে। সমস্যা দেখা দেয় যখন পরিষেবাটি অনুভূমিকভাবে স্কেল করে।.
একটি স্ট্যান্ডার্ড রাউন্ড-রবিন লোড ব্যালেন্সারের সাথে, প্রথম অনুরোধটি রিপ্লিকা A-তে ক্যাশ গরম করতে পারে, যখন একই প্রিফিক্স সহ দ্বিতীয় অনুরোধটি রিপ্লিকা B-তে পৌঁছায়। রিপ্লিকা B-তে সেই ক্যাশ করা অবস্থা নেই, তাই এটি একই প্রিফিল কাজ পুনরায় গণনা করে। তৃতীয় অনুরোধটি রিপ্লিকা C-তে যেতে পারে এবং আবার মিস করতে পারে।.
রিপ্লিকার সংখ্যা বাড়ার সাথে সাথে, সরল লোড ব্যালেন্সিং সম্পর্কিত অনুরোধগুলি আরও মেশিন জুড়ে ছড়িয়ে দিতে পারে। মডেল-সার্ভিং বহরটি ভারসাম্যপূর্ণ দেখাতে পারে, তবে প্রিফিক্স ক্যাশ হিট রেট কমে যায়। এটি সেই ফাঁক যা KV ক্যাশ রাউটিং বন্ধ করার চেষ্টা করে।.
তিনটি ব্যবহারিক রাউটিং স্তর
১. সেশন অ্যাফিনিটি
সেশন অ্যাফিনিটি একই ব্যবহারকারী, ওয়ার্কস্পেস, টেন্যান্ট, বা কথোপকথন থেকে ট্রাফিক একই রিপ্লিকায় রাউট করে। এটি মাল্টি-টার্ন চ্যাটের জন্য শুরু করার সবচেয়ে সহজ জায়গা কারণ ফলো-আপ প্রম্পট প্রায়ই পূর্ববর্তী প্রসঙ্গ ভাগ করে।.
এর বিনিময়ে, ব্যবহারকারীর পরিচয় সবসময় প্রম্পটের সাদৃশ্যের মতো নয়। দুইজন ব্যবহারকারী একই দীর্ঘ সিস্টেম প্রম্পট ভাগ করতে পারে এবং তবুও ভিন্ন রিপ্লিকায় রাউট হতে পারে। সেশন অ্যাফিনিটি তখনও বিঘ্নিত হতে পারে যখন রিপ্লিকা যোগ বা সরানো হয়।.
২. প্রিফিক্স-হ্যাশ রাউটিং
প্রিফিক্স-হ্যাশ রাউটিং প্রম্পটটিকেই রাউটিং কী হিসেবে ব্যবহার করে। রাউটার প্রম্পটের স্থিতিশীল শুরু অংশটি হ্যাশ করে এবং মিলে যাওয়া প্রিফিক্সগুলো একই রিপ্লিকায় পাঠায়।.
এটি তখন ভালো কাজ করে যখন পুনরাবৃত্ত সিস্টেম প্রম্পট, ফিউ-শট উদাহরণ, বা শেয়ার করা পুনরুদ্ধার করা প্রসঙ্গ ব্যবহারকারীর পরিচয়ের চেয়ে বেশি গুরুত্বপূর্ণ হয়। কঠিন অংশটি হল প্রিফিক্স সীমানা নির্বাচন করা। যদি হ্যাশে টাইমস্ট্যাম্প, রিকোয়েস্ট আইডি, বা ব্যবহারকারী-নির্দিষ্ট ক্ষেত্র অন্তর্ভুক্ত থাকে, তাহলে রাউটিং কী ভেঙে যায় এবং ক্যাশ পুনঃব্যবহার নষ্ট হয়।.
৩. ক্যাশ-ইভেন্ট-অওয়্যার রাউটিং
সবচেয়ে উন্নত পদ্ধতি ট্র্যাক করে কোন ক্যাশ ব্লক কোন রিপ্লিকায় উপস্থিত আছে, তারপর প্রতিটি অনুরোধকে সেই রিপ্লিকায় রাউট করে যেখানে ক্যাশ ওভারল্যাপ সবচেয়ে ভালো হয়, লোড বিবেচনা করেও। llm-d রাউটার প্রকল্প একটি এন্ডপয়েন্ট পিকার বর্ণনা করে যা রিকোয়েস্ট কোথায় যাবে তা নির্ধারণ করার সময় KV-ক্যাশ লোকালিটি, বর্তমান লোড, এবং অগ্রাধিকার বিবেচনা করে।.
এটি আরও জটিল, তবে এটি উচ্চ-থ্রুপুট ফ্লিটের জন্য সঠিক দিক যেখানে ক্যাশ মিস পরিমাপযোগ্য, ব্যয়বহুল, এবং ঘন ঘন।.
কখন এটি এড়িয়ে চলবেন
KV ক্যাশ রাউটিং জটিলতার জন্য স্বয়ংক্রিয়ভাবে মূল্যবান নয়। এটি দুর্বল ফিট যখন প্রম্পটগুলো ছোট, বেশিরভাগই অনন্য, বা ব্যাচে প্রক্রিয়াজাত করা হয় যেখানে সামান্য পুনরাবৃত্ত কাঠামো থাকে।.
ডকুমেন্ট সারাংশ, সৃজনশীল প্রজন্ম, এককালীন এক্সট্রাকশন, এবং অনেক অ্যাসিঙ্ক্রোনাস ব্যাচ কাজগুলোর যথেষ্ট শেয়ার করা প্রিফিক্স ওভারল্যাপ নাও থাকতে পারে ক্যাশ-অওয়্যার রাউটিং ন্যায্যতা দেওয়ার জন্য। এই ক্ষেত্রে, সাধারণ লোড ব্যালেন্সিং আরও পরিষ্কার হতে পারে।.
ব্যবহারিক পরীক্ষাটি হল পরিমাপ: ক্যাশ হিট রেট, প্রথম টোকেনের সময়, থ্রুপুট, কিউ গভীরতা, GPU মেমরি চাপ এবং সম্পন্ন কাজের প্রতি খরচ। যদি ক্যাশ-অওয়্যার রাউটিং এই সংখ্যাগুলিকে পরিবর্তন না করে, তবে প্রথমে প্রম্পট স্ট্রাকচার ঠিক করুন।.
এটি ShareAI-এর সাথে কীভাবে ফিট করে
ShareAI একটি AI মার্কেটপ্লেস এবং API, আপনার GPU ক্লাস্টারের ভিতরে মডেল-সার্ভিং লোড ব্যালেন্সার নয়। ডেভেলপাররা ShareAI ব্যবহার করে একটি API-এর মাধ্যমে অনেক মডেলে অ্যাক্সেস করে, মার্কেটপ্লেস সিগন্যাল তুলনা করে, অনুরোধ রাউট করে, ব্যবহার পরিচালনা করে এবং যখন একটি রুট অবনতি ঘটে তখন ব্যর্থতা কাটিয়ে ওঠে।.
এটি এখনও KV ক্যাশ রাউটিংকে প্রাসঙ্গিক করে তোলে। যদি আপনি আপনার নিজস্ব ইনফারেন্স স্ট্যাক পরিচালনা করেন, এটি আপনাকে আরও ভাল অবকাঠামো প্রশ্ন জিজ্ঞাসা করতে সাহায্য করে। যদি আপনি হোস্ট করা মডেলগুলি ব্যবহার করেন, এটি আপনাকে মূল্যায়ন করতে সাহায্য করে কেন একই মডেল নাম সহ দুটি রুট বাস্তব কাজের চাপের অধীনে ভিন্নভাবে আচরণ করতে পারে।.
নির্মাতাদের জন্য, এটি মূল্য নির্ধারণের সাথেও সংযুক্ত। একটি অ্যাপ্লিকেশন যার দীর্ঘ প্রম্পট, পুনরাবৃত্ত RAG প্রসঙ্গ, বা এজেন্ট লুপগুলি খুব অসম AI ব্যবহার তৈরি করতে পারে। ShareAI Builder অ্যাপ্লিকেশন মালিকদের ShareAI-এর মাধ্যমে AI ইনফারেন্স ট্রাফিক রাউট করতে, একটি মার্জিন বা সারচার্জ সেট করতে, গ্রাহকদের রাউট করা ব্যবহারের জন্য ShareAI-কে অর্থ প্রদান করতে এবং উত্পন্ন ব্যবহারের উপর ভিত্তি করে মাসিক পেমেন্ট পেতে দেয়। অ্যাপ্লিকেশনটি নিজেই ShareAI-এর বাইরে তৈরি থাকে।.
মডেল নির্বাচন এবং রুট মূল্যায়নের জন্য, শুরু করুন ShareAI মডেল মার্কেটপ্লেস থেকে. । বাস্তবায়নের মৌলিক বিষয়গুলির জন্য, ব্যবহার করুন ShareAI API রেফারেন্স.
KV ক্যাশ রাউটিং চেকলিস্ট
- স্থিতিশীল প্রম্পট সামগ্রী প্রথমে রাখুন: সিস্টেম প্রম্পট, টুল নিয়ম, উদাহরণ এবং পুনরাবৃত্ত প্রসঙ্গ।.
- গতিশীল ক্ষেত্রগুলি পরে সরান: টাইমস্ট্যাম্প, অনুরোধ আইডি, ব্যবহারকারী-নির্দিষ্ট তথ্য এবং এককালীন নির্দেশাবলী।.
- রাউটিং পরিবর্তনের আগে এবং পরে ক্যাশ হিট রেট পরিমাপ করুন।.
- প্রথম টোকেনের সময়, থ্রুপুট, কিউ গভীরতা এবং VRAM চাপ একসাথে পর্যবেক্ষণ করুন।.
- ক্যাশ-ইভেন্ট-অওয়্যার রাউটিং তৈরি করার আগে প্রিফিক্স-হ্যাশ রাউটিং দিয়ে শুরু করুন।.
- একক গ্লোবাল নীতিকে বাধ্য করার পরিবর্তে কাজের চাপ অনুসারে রাউটিং নিয়মগুলি ভাগ করুন।.
- খরচ এবং লেটেন্সি অ্যাপ্লিকেশন স্তরে দৃশ্যমান রাখুন, শুধুমাত্র ইনফারেন্স ক্লাস্টারের ভিতরে নয়।.
প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী
KV ক্যাশ রাউটিং কী?
KV ক্যাশ রাউটিং একটি রাউটিং কৌশল যা পুনরাবৃত্ত প্রম্পট প্রিফিক্স সহ অনুরোধগুলি সেই রিপ্লিকাগুলিতে পাঠায় যেখানে ইতিমধ্যে মিলে যাওয়া KV ক্যাশ থাকার সম্ভাবনা বেশি। এর লক্ষ্য হল অপ্রয়োজনীয় প্রিফিল গণনা কমানো।.
KV ক্যাশ রাউটিং প্রিফিক্স ক্যাশিং থেকে কীভাবে আলাদা?
প্রিফিক্স ক্যাশিং হল মডেল-সার্ভিং ইঞ্জিনের ক্ষমতা যা শেয়ার করা প্রম্পট প্রিফিক্সের জন্য ক্যাশ করা অবস্থা পুনরায় ব্যবহার করে। KV ক্যাশ রাউটিং হল ট্রাফিক-প্লেসমেন্ট কৌশল যা মিলে যাওয়া অনুরোধগুলি সেই স্থানে পৌঁছাতে সাহায্য করে যেখানে সেই ক্যাশ করা অবস্থা ইতিমধ্যে বিদ্যমান।.
রাউন্ড-রবিন রাউটিং প্রিফিক্স ক্যাশিংকে কেন ক্ষতিগ্রস্ত করে?
রাউন্ড-রবিন রাউটিং অনুরোধগুলি রিপ্লিকাগুলির মধ্যে ছড়িয়ে দেয়, জেনে না যে কোন রিপ্লিকায় কোন ক্যাশ করা প্রিফিক্স রয়েছে। একটি পুনরাবৃত্ত প্রম্পট ক্যাশ মিস করতে পারে শুধুমাত্র কারণ এটি একটি ভিন্ন রিপ্লিকায় পৌঁছায়।.
কোন ওয়ার্কলোডগুলি KV ক্যাশ রাউটিং থেকে সবচেয়ে বেশি উপকৃত হয়?
মাল্টি-টার্ন চ্যাট, RAG, কোডিং এজেন্ট, সাপোর্ট এজেন্ট, ফিউ-শট প্রম্পটিং এবং দীর্ঘ শেয়ার করা সিস্টেম প্রম্পট সহ অ্যাপগুলি সবচেয়ে শক্তিশালী প্রার্থী কারণ তারা উল্লেখযোগ্য প্রম্পট প্রিফিক্স পুনরায় ব্যবহার করে।.
একটি দল কখন KV ক্যাশ রাউটিং এড়িয়ে যাবে?
এটি এড়িয়ে যান যখন প্রম্পটগুলি সংক্ষিপ্ত, বেশিরভাগই অনন্য, বা ব্যাচ-ভিত্তিক যেখানে সামান্য পুনরাবৃত্ত কাঠামো রয়েছে। এই ক্ষেত্রে, রাউটিং জটিলতা সামান্য মূল্য যোগ করতে পারে।.
vLLM এবং SGLang কি প্রিফিক্স ক্যাশিং সমর্থন করে?
হ্যাঁ। vLLM স্বয়ংক্রিয় প্রিফিক্স ক্যাশিং নথিভুক্ত করে, এবং SGLang সাধারণ টোকেন সিকোয়েন্স জুড়ে শেয়ার করা KV ক্যাশের জন্য প্রিফিক্স ক্যাশিং নথিভুক্ত করে। যখন একাধিক রিপ্লিকা জড়িত থাকে তখন সার্ভিং ইঞ্জিন এখনও রাউটিং সহায়তা প্রয়োজন।.
KV ক্যাশ রাউটিং কি সেমান্টিক ক্যাশিংয়ের মতো?
না। KV ক্যাশ রাউটিং ইনফারেন্স সার্ভিংয়ের ভিতরে সঠিক বা প্রায়-গঠনমূলক প্রিফিক্স পুনরায় ব্যবহারের সাথে কাজ করে। সেমান্টিক ক্যাশিং অর্থের উপর ভিত্তি করে, সাধারণত এম্বেডিং বা সাদৃশ্য থ্রেশহোল্ড সহ, প্রতিক্রিয়া বা মধ্যবর্তী ফলাফল সংরক্ষণ এবং পুনরায় ব্যবহার করে।.
ShareAI কি KV-ক্যাশ-সচেতন লোড ব্যালেন্সার প্রতিস্থাপন করে?
না। ShareAI হল মডেল অ্যাক্সেস, রাউটিং, ফেইলওভার, ব্যবহার এবং বিলিংয়ের জন্য AI মার্কেটপ্লেস এবং API স্তর। KV-cache-aware রাউটিং হল নিম্ন-স্তরের মডেল-সার্ভিং অবকাঠামো যা ইনফারেন্স রিপ্লিকা পরিচালনা করা দলগুলোর জন্য।.
নির্মাতারা কীভাবে KV ক্যাশ রাউটিং সম্পর্কে চিন্তা করবেন?
নির্মাতারা ক্যাশ আচরণকে AI-ভারী অ্যাপগুলোর মধ্যে একটি খরচ চালক হিসাবে বিবেচনা করা উচিত। যদি তাদের অ্যাপ্লিকেশনের ব্যবহারে অসমতা থাকে, ShareAI সেই AI ট্রাফিক রাউট এবং অর্থায়নে সাহায্য করতে পারে যখন অ্যাপটি ShareAI-এর বাইরে নির্মিত এবং মালিকানাধীন থাকে।.
রাউটিং পরিবর্তনের আগে দলগুলো কী পরিমাপ করা উচিত?
ক্যাশ হিট রেট, প্রথম টোকেনের সময়, থ্রুপুট, কিউ গভীরতা, VRAM চাপ, প্রতি কাজের খরচ এবং আউটপুট গুণমান পরিমাপ করুন। রাউটিং পরিবর্তনগুলো কাজের চাপ উন্নত করা উচিত, শুধুমাত্র ড্যাশবোর্ড নয়।.
KV ক্যাশ রাউটিং কি AI API খরচ কমাতে পারে?
এটি দলগুলোর জন্য অবকাঠামো খরচ কমাতে পারে যারা নিজেরাই মডেল পরিবেশন করে কারণ কম অতিরিক্ত প্রিফিল কাজ GPU দক্ষতা উন্নত করতে পারে। হোস্টেড API-গুলোর জন্য, প্রভাব নির্ভর করে যে প্রদানকারী সেই সঞ্চয়গুলোকে মূল্য বা কর্মক্ষমতায় প্রকাশ করে কিনা।.