KV క్యాష్ రౌటింగ్: అదనపు LLM ప్రీఫిల్ పనిని తగ్గించండి

మీ LLM ట్రాఫిక్ అంతటా పునరావృతమైన ప్రాంప్ట్ ప్రిఫిక్స్లు కనిపిస్తుంటే KV క్యాష్ రౌటింగ్ ముఖ్యమవుతుంది. సరైన అభ్యర్థన సరైన ప్రతిరూపంపై పడితే, సర్వింగ్ ఇంజిన్ క్యాష్ చేసిన అటెన్షన్ స్టేట్ను తిరిగి ఉపయోగించగలదు, అదే ప్రిఫిల్ టోకెన్లను మళ్లీ మళ్లీ పునఃకలపకుండా.
ఇది ఇన్ఫ్రాస్ట్రక్చర్ వివరంగా అనిపించవచ్చు, కానీ ఇది త్వరగా ఉత్పత్తి సమస్యగా మారుతుంది. దీర్ఘమైన సిస్టమ్ ప్రాంప్ట్లు, RAG కంటెక్స్ట్, ఫ్యూ-షాట్ ఉదాహరణలు, మరియు మల్టీ-టర్న్ చాట్ చరిత్ర ప్రిఫిల్ పనిని ఖర్చుతో కూడినదిగా చేయవచ్చు. ప్రతి ప్రతిరూపం అదే ప్రిఫిక్స్ను పునఃకలపినప్పుడు, జట్లు లేటెన్సీ, GPU సమయం, మరియు సామర్థ్య ప్రణాళికలో చెల్లిస్తాయి.
ShareAI డెవలపర్లకు 150+ మోడళ్ల కోసం ఒక API, మార్కెట్ప్లేస్ విజిబిలిటీ, రౌటింగ్, మరియు ఫెయిలోవర్ను అందిస్తుంది. KV క్యాష్ రౌటింగ్ ఒక పొర దిగువన, మోడల్-సర్వింగ్ ఇన్ఫ్రాస్ట్రక్చర్లో ఉంటుంది. ShareAI పాఠకుల కోసం ఉపయోగకరమైన టేక్వే సింపుల్: AI స్టాక్లో ప్రతి పొర వద్ద రౌటింగ్ నిర్ణయాలు ముఖ్యమైనవి, మోడల్ ఎంపిక నుండి పునరావృతమైన ప్రాంప్ట్ను నిర్వహించే GPU ప్రతిరూపం వరకు.
ఎందుకు KV క్యాష్ రౌటింగ్ ముఖ్యమైనది
LLM ఇన్ఫరెన్స్ సమయంలో, ఒక మోడల్ మొదట ప్రిఫిల్ దశలో ఇన్పుట్ ప్రాంప్ట్ను ప్రాసెస్ చేస్తుంది. ఇది ఒక కీ-వాల్యూ క్యాష్ను నిర్మిస్తుంది, సాధారణంగా KV క్యాష్ అని పిలుస్తారు, తద్వారా తరువాత జనరేట్ చేసిన టోకెన్లు ఇప్పటికే ప్రాసెస్ చేసిన కంటెక్స్ట్ను తిరిగి చూడగలవు.
ప్రిఫిక్స్ క్యాషింగ్ సర్వింగ్ ఇంజిన్లకు ఆ క్యాష్ను తిరిగి ఉపయోగించడానికి అనుమతిస్తుంది, ఒక తరువాత అభ్యర్థన ప్రాంప్ట్ యొక్క అదే ప్రారంభాన్ని పంచుకుంటే. vLLM ఆటోమేటిక్ ప్రిఫిక్స్ క్యాషింగ్ డాక్యుమెంటేషన్ ఇది పంచుకున్న ప్రిఫిక్స్ల కోసం KV క్యాష్ను తిరిగి ఉపయోగించడం ద్వారా కొత్త అభ్యర్థన పంచుకున్న భాగం కోసం లెక్కింపు తప్పించగలదని వివరిస్తుంది. SGLang ప్రిఫిక్స్ క్యాషింగ్ సాధారణ టోకెన్ సీక్వెన్స్ల కోసం KV క్యాష్ను పంచుకోవడానికి సంబంధిత ఆలోచనను ఉపయోగిస్తుంది.
ఇది అనేక అభ్యర్థనలు ఒకే విధంగా ప్రారంభమయ్యే వర్క్లోడ్ల కోసం ప్రత్యేకంగా ముఖ్యమైనది: పెద్ద సిస్టమ్ ప్రాంప్ట్తో సపోర్ట్ ఏజెంట్లు, పునరావృతమైన డాక్యుమెంటేషన్ చంక్లను ఉపయోగించే RAG అప్లికేషన్లు, రిపోజిటరీ సూచనలతో కోడింగ్ ఏజెంట్లు, లేదా చాట్ ఉత్పత్తులు చర్చ చరిత్రను టర్న్లలో తీసుకువెళ్తాయి.
రౌండ్-రోబిన్ ఎక్కడ విఫలమవుతుంది
ప్రిఫిక్స్ క్యాషింగ్ ఒక ప్రతిరూపంపై సులభంగా ఉంటుంది. అదే ప్రాసెస్ పునరావృతమైన ప్రిఫిక్స్ను చూస్తుంది మరియు మెమరీ అందుబాటులో ఉంటే దాని క్యాష్ను తిరిగి ఉపయోగించగలదు. సేవ హారిజాంటల్గా స్కేల్ అవుతున్నప్పుడు సమస్య కనిపిస్తుంది.
ఒక ప్రామాణిక రౌండ్-రోబిన్ లోడ్ బాలెన్సర్తో, అభ్యర్థన ఒకటి ప్రతిరూపం A పై క్యాష్ను వేడి చేస్తుంది, అదే ప్రిఫిక్స్తో అభ్యర్థన రెండు ప్రతిరూపం B పై పడుతుంది. ప్రతిరూపం B ఆ క్యాష్ చేసిన స్థితిని కలిగి ఉండదు, కాబట్టి ఇది అదే ప్రిఫిల్ పనిని పునఃకలుపుతుంది. అభ్యర్థన మూడు ప్రతిరూపం C పై వెళ్తుంది మరియు మళ్లీ మిస్ అవుతుంది.
ప్రతిరూపం సంఖ్య పెరిగే కొద్దీ, సాదాసీదా లోడ్ బాలెన్సింగ్ సంబంధిత అభ్యర్థనలను మరిన్ని యంత్రాలపై విస్తరించగలదు. మోడల్-సర్వింగ్ ఫ్లీట్ సమతుల్యంగా కనిపించవచ్చు, కానీ ప్రిఫిక్స్ క్యాష్ హిట్ రేటు తగ్గుతుంది. KV క్యాష్ రౌటింగ్ మూసివేయడానికి ప్రయత్నించే అంతరాన్ని ఇది.
మూడు ప్రాక్టికల్ రౌటింగ్ స్థాయిలు
1. సెషన్ అఫినిటీ
సెషన్ అఫినిటీ ఒకే యూజర్, వర్క్స్పేస్, టెనెంట్ లేదా సంభాషణ నుండి ట్రాఫిక్ను అదే రిప్లికాకు రూట్ చేస్తుంది. ఇది బహు-మలుపు చాట్ కోసం ప్రారంభించడానికి సరళమైన స్థలం, ఎందుకంటే ఫాలో-అప్ ప్రాంప్ట్లు తరచుగా మునుపటి సందర్భాన్ని పంచుకుంటాయి.
వ్యాపారం ఏమిటంటే, యూజర్ ఐడెంటిటీ ఎల్లప్పుడూ ప్రాంప్ట్ సారూప్యతతో సమానం కాదు. ఇద్దరు యూజర్లు ఒకే దీర్ఘమైన సిస్టమ్ ప్రాంప్ట్ను పంచుకోవచ్చు మరియు ఇంకా వేర్వేరు రిప్లికాలకు రూట్ చేయబడవచ్చు. రిప్లికాలు జోడించబడినప్పుడు లేదా తొలగించబడినప్పుడు సెషన్ అఫినిటీ కూడా భంగం చెందవచ్చు.
2. ప్రిఫిక్స్-హాష్ రౌటింగ్
ప్రిఫిక్స్-హాష్ రౌటింగ్ రూటింగ్ కీగా ప్రాంప్ట్ను ఉపయోగిస్తుంది. రౌటర్ ప్రాంప్ట్ యొక్క స్థిరమైన ప్రారంభాన్ని హాష్ చేసి, సరిపోలే ప్రిఫిక్స్లను అదే రిప్లికాకు పంపుతుంది.
ఇది పునరావృతమైన సిస్టమ్ ప్రాంప్ట్లు, కొన్ని-షాట్ ఉదాహరణలు లేదా పంచుకున్న రిట్రీవ్ చేసిన సందర్భం యూజర్ ఐడెంటిటీ కంటే ఎక్కువ ప్రాముఖ్యత కలిగి ఉన్నప్పుడు మెరుగ్గా పనిచేస్తుంది. కఠినమైన భాగం ప్రిఫిక్స్ సరిహద్దును ఎంచుకోవడం. హాష్లో టైమ్స్టాంప్, రిక్వెస్ట్ ID లేదా యూజర్-స్పెసిఫిక్ ఫీల్డ్ ఉంటే, రూటింగ్ కీ విభజన చెందుతుంది మరియు క్యాష్ పునర్వినియోగం విఫలమవుతుంది.
3. క్యాష్-ఈవెంట్-అవేర్ రౌటింగ్
అత్యంత ఆధునిక విధానం ఏ క్యాష్ బ్లాక్లు ఏ రిప్లికాలో నివసిస్తున్నాయో ట్రాక్ చేస్తుంది, ఆపై లోడ్ను పరిగణనలోకి తీసుకుంటూ ఉత్తమ క్యాష్ ఓవర్ల్యాప్ ఉన్న రిప్లికాకు ప్రతి అభ్యర్థనను రూట్ చేస్తుంది. 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 క్యాష్ రౌటింగ్ చెక్లిస్ట్
- స్థిరమైన ప్రాంప్ట్ కంటెంట్ను ముందుగా ఉంచండి: సిస్టమ్ ప్రాంప్ట్, టూల్ రూల్స్, ఉదాహరణలు, మరియు పునరావృత కంటెక్స్ట్.
- డైనమిక్ ఫీల్డ్స్ను తరువాత ఉంచండి: టైమ్స్టాంప్స్, రిక్వెస్ట్ IDs, యూజర్-స్పెసిఫిక్ ఫాక్ట్స్, మరియు వన్-ఆఫ్ ఇన్స్ట్రక్షన్స్.
- రౌటింగ్ మార్పుల ముందు మరియు తర్వాత క్యాష్ హిట్ రేట్ను కొలవండి.
- టైమ్ టు ఫస్ట్ టోకెన్, త్రూపుట్, క్యూయూ డెప్త్, మరియు 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ల కోసం, ప్రొవైడర్ ఆ పొదుపులను ధర లేదా పనితీరులో ఎక్స్పోజ్ చేస్తుందా అనే దాని మీద ప్రభావం ఆధారపడి ఉంటుంది.