ഊഹങ്ങളിലൂടെ സോണാർ വേഗത്തിലാക്കുന്നു
ഡ്രാഫ്റ്റ് മോഡൽ വെരിഫിക്കേഷൻ വഴി സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗ് സോണാർ LLM-കളുടെ വേഗത കൂട്ടുന്നു
വലിയ ലാംഗ്വേജ് മോഡലുകളുടെ (LLM) ജനറേഷൻ വേഗത വർദ്ധിപ്പിക്കുന്നതിനായി, വേഗതയേറിയതും ചെറുതുമായ ഡ്രാഫ്റ്റ് മോഡൽ ഉപയോഗിച്ച് പൂർത്തീകരണ കാൻഡിഡേറ്റുകൾ നിർമ്മിക്കുകയും, വലിയ ടാർഗെറ്റ് മോഡൽ അവ പരിശോധിക്കുകയും ചെയ്യുന്ന രീതിയാണ് സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗ്. ഈ രീതിപ്രകാരം, ചെലവേറിയ ടാർഗെറ്റ് മോഡൽ ഒരു സമയം ഒറ്റ ടോക്കൺ ഉൽപ്പാദിപ്പിക്കുന്നതിന് പകരം, ഒറ്റ ഘട്ടത്തിൽ ഒന്നിലധികം ടോക്കണുകൾ പുറപ്പെടുവിക്കുന്നു. സോണാർ (Sonar) മോഡലുകളിലെ ഇൻ്റർ-ടോക്കൺ ലേറ്റൻസി കുറയ്ക്കുന്നതിനായി Perplexity-യിൽ നടപ്പിലാക്കിയ വിവിധതരം സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗിൻ്റെ നടപ്പിലാക്കൽ വിശദാംശങ്ങൾ ഞങ്ങൾ ഇവിടെ അവതരിപ്പിക്കുന്നു.
സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗ്
ടോക്കൺ ജനറേഷൻ വേഗത കൂട്ടുന്നതിനായി സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗ് സ്വാഭാവിക ഭാഷകളുടെ ഘടനയും ട്രാൻസ്ഫോർമറുകളുടെ ഓട്ടോ-റിഗ്രസീവ് സ്വഭാവവും പ്രയോജനപ്പെടുത്തുന്നു. Llama-70B പോലുള്ള വലിയ മോഡലുകൾക്ക് Llama-1B പോലുള്ള ചെറിയ മോഡലുകളേക്കാൾ കൂടുതൽ അറിവുണ്ടെങ്കിലും, ചില ലളിതമായ ജോലികളിൽ അവ സമാനമായി പ്രകടനം കാഴ്ചവെക്കുന്നു. ചില പ്രത്യേക സീക്വൻസുകൾ വലിയ ചെലവില്ലാത്ത മോഡലുകൾ നിർമ്മിക്കുന്നതാണ് മികച്ചതെന്നും, സങ്കീർണ്ണമായ പ്രശ്നങ്ങൾ വലിയ മോഡലുകൾക്കായി മാറ്റിവെക്കാമെന്നും ഈ ഓവർലാപ്പ് സൂചിപ്പിക്കുന്നു. ഏത് പൂർത്തീകരണങ്ങളാണ് മികച്ചതെന്നും ചെറിയ മോഡലിൻ്റെ ജനറേഷൻ വലിയ മോഡലിന്റേതുപോലെ നിലവാരമുള്ളതാണോ എന്നും നിർണ്ണയിക്കുക എന്നതാണ് വെല്ലുവിളി.
ഭാഗ്യവശാൽ, LLM-കൾ ഓട്ടോ-റിഗ്രസീവ് ട്രാൻസ്ഫോർമറുകളാണ്: ടോക്കണുകളുടെ ഒരു സീക്വൻസ് നൽകുമ്പോൾ, അവ അടുത്ത ടോക്കണിൻ്റെ പ്രോബബിലിറ്റി ഡിസ്ട്രിബ്യൂഷൻ ഔട്ട്പുട്ട് ചെയ്യുന്നു. കൂടാതെ, ഇൻപുട്ട് സീക്വൻസിലെ ടോക്കണുകളുമായി ബന്ധപ്പെട്ട ഇൻ്റർമീഡിയറ്റ് ഫീച്ചറുകളിൽ നിന്ന് ഉരുത്തിരിഞ്ഞ ലോജിറ്റുകളും, മോഡൽ കൃത്യമായ ആ ടോക്കണുകൾ നൽകാൻ എത്രത്തോളം സാധ്യതയുണ്ടെന്ന് സൂചിപ്പിക്കുന്നു. ഈ സവിശേഷത ഊഹിക്കലിനെ സാധ്യമാക്കുന്നു: ഒരു ഇൻപുട്ട് പ്രിഫിക്സിൽ നിന്ന് ആരംഭിച്ച് ചെറിയൊരു മോഡൽ ടോക്കണുകളുടെ ഒരു സീക്വൻസ് ജനറേറ്റ് ചെയ്യുകയാണെങ്കിൽ, അത് ടാർഗെറ്റ് മോഡലുമായി എത്രത്തോളം പൊരുത്തപ്പെടുന്നു എന്ന് നിർണ്ണയിക്കാൻ വലിയ മോഡലിലൂടെ അത് പ്രവർത്തിപ്പിക്കാം. കാൻഡിഡേറ്റുകളുടെ ഓരോ പ്രിഫിക്സിനും ഒരു പ്രോബബിലിറ്റി സ്കോർ നൽകുകയും, സ്വീകാര്യതാ പരിധിക്ക മുകളിലുള്ള ഏറ്റവും നീളമേറിയത് തിരഞ്ഞെടുക്കുകയും ചെയ്യുന്നു. ഒരു ബോണസ് എന്ന നിലയിൽ, ടാർഗെറ്റ് മോഡൽ സൗജന്യമായി ഒരു തുടർ ടോക്കണും നൽകുന്നു: ഒരു ഡ്രാഫ്റ്റ് മോഡൽ n ടോക്കണുകൾ ജനറേറ്റ് ചെയ്യുകയാണെങ്കിൽ, ഒറ്റ ഘട്ടത്തിൽ n + 1 വരെ പുറപ്പെടുവിക്കാൻ കഴിയും.
ഇൻഫറൻസ് സമയത്ത്, സ്പെക്യുലേറ്റീവ് സാമ്പിൾ പ്രക്രിയയെ ഏകദേശം 4 ഘട്ടങ്ങളായി തിരിക്കാം:
പ്രിഫിൽ (Prefill): കെവി (KV) കാഷ് എൻട്രികൾ പോപ്പുലേറ്റ് ചെയ്യുന്നതിനായി ടാർഗെറ്റ്, ഡ്രാഫ്റ്റ് മോഡലുകൾ രണ്ടും ഇൻപുട്ട് സീക്വൻസിൽ പ്രവർത്തിപ്പിക്കണം. മെഡുസ (Medusa) പോലുള്ള ചില സ്കീമുകൾ പ്രവചനത്തിനായി ലളിതമായ ഡെൻസ് ലെയറുകൾ ഉപയോഗിക്കുമ്പോൾ, ഈ പോസ്റ്റിൽ ഞങ്ങൾ സ്വന്തമായി കെവി കാഷുകൾ ആവശ്യപ്പെടുന്ന ട്രാൻസ്ഫോർമർ അധിഷ്ഠിത ഡ്രാഫ്റ്റുകളിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു.
ഡ്രാഫ്റ്റ് ജനറേഷൻ: നിശ്ചിത എണ്ണം ടോക്കണുകൾ നിർമ്മിക്കുന്നതിനായി ഡ്രാഫ്റ്റ് മോഡൽ ആവർത്തിക്കുന്നു. ഡ്രാഫ്റ്റ് സീക്വൻസ് ലീനിയർ ആകാം അല്ലെങ്കിൽ മോഡലിന് നൽകിയിരിക്കുന്ന ആഴം വരെ ഒരു ട്രീ പോലെയുള്ള ഘടന പര്യവേക്ഷണം ചെയ്യാം (EAGLE, Medusa). ഇവിടെ, ഞങ്ങൾ ലീനിയർ സീക്വൻസുകളിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു.
അംഗീകാരം (Acceptance): ഓരോ ഡ്രാഫ്റ്റ് ടോക്കണുമായി പൊരുത്തപ്പെടുന്ന ലോജിറ്റുകൾ നിർമ്മിച്ച്, ടാർഗെറ്റ് മോഡൽ ഡ്രാഫ്റ്റ് സീക്വൻസിൽ പ്രവർത്തിക്കുന്നു. സ്വീകരിക്കാവുന്ന ഏറ്റവും നീളമേറിയ സീക്വൻസിൻ്റെ നീളം നിർണ്ണയിക്കപ്പെടുന്നു.
ടാർഗെറ്റ് ജനറേഷൻ: ടാർഗെറ്റ് ലോജിറ്റുകൾ ജനറേറ്റുചെയ്തതിനാൽ, പൊരുത്തപ്പെടാത്ത സ്ഥാനത്തോ സീക്വൻസിന്റെ അവസാന ഭാഗത്തോ ഉള്ള ലോജിറ്റുകൾ ഒരു തുടർന്നുള്ള ടോക്കണുമായി പൊരുത്തപ്പെടുന്നു. സീക്വൻസ് അവസാനിപ്പിച്ചുകൊണ്ട് ടാർഗെറ്റിൽ നിന്നുള്ള ശക്തമായ ഒരു ടോക്കൺ നൽകാൻ ഈ ലോജിറ്റുകൾ സാമ്പിൾ ചെയ്യാവുന്നതാണ്.
സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗ് നടപ്പിലാക്കാൻ വിവിധ രീതികൾ არსებობს. ഈ പോസ്റ്റിൽ, ഇൻ-ഹൗസ് 1B മോഡൽ ഉപയോഗിച്ച് സോണാർ മോഡലുകളെ വേഗത്തിലാക്കാൻ ഞങ്ങൾ ഉപയോഗിച്ച സ്കീമുകളിലും, ഡീപ്സീക്കിന്റെ (DeepSeek) അളവിലുള്ള മോഡലുകൾ വേഗത്തിലാക്കാൻ ഞങ്ങൾ നിർമ്മിക്കുന്ന പ്രവചന സംവിധാനങ്ങളിലും ഞങ്ങൾ ശ്രദ്ധ കേന്ദ്രീകരിക്കും.
ടാർഗെറ്റ്-ഡ്രാഫ്റ്റ് (Target-Draft)
കാൻഡിഡേറ്റ് സീക്വൻസുകൾ നിർമ്മിക്കുന്നതിനായി നിലവിലുള്ള ഒരു ചെറിയ LLM-നെ ടാർഗെറ്റ് മോഡലിലേക്ക് ഒരു ഡ്രാഫ്റ്റ് മോഡലായി ജോടിയാക്കിക്കൊണ്ട് സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗ് സാധ്യമാക്കാം. പ്രൊഡക്ഷനിൽ, ടാർഗെറ്റിന്റെ അതേ ഡാറ്റാസെറ്റിൽ ഫൈൻ-ട്യൂൺ ചെയ്ത Llama-1B മോഡൽ ഉപയോഗിച്ച് ഞങ്ങൾ സോണാർ വേഗത്തിലാക്കിയിട്ടുണ്ട്. ഈ സമീപനത്തിന് ആദ്യം മുതൽ ഒരു ഡ്രാഫ്റ്റ് പരിശീലിപ്പിക്കേണ്ട ആവശ്യമില്ലെങ്കിലും, ചെറിയ മോഡൽ ഇപ്പോഴും കാര്യമായ KV കാഷ് ശേഷി ഉപയോഗിക്കുകയും ചെറിയൊരു പ്രിഫിൽ ഓവർഹെഡ് വരുത്തിവെക്കുകയും TTFT വർദ്ധിപ്പിക്കുകയും ചെയ്യുന്നു.
ഈ സ്കീമിന് കീഴിൽ, ഡീകോഡ്-മാത്രം ബാച്ചുകളിൽ മാത്രമാണ് ഡീകോഡർ ഊഹങ്ങൾ നടത്തുന്നത്, പ്രിഫിലിൽ അല്ലെങ്കിൽ മിക്സ്ഡ് പ്രിഫിൽ-ഡീകോഡ് ബാച്ചുകളിൽ സ്റ്റാൻഡേർഡ് സാമ്പിളിംഗ് വഴി ടോക്കണുകൾ ജനറേറ്റ് ചെയ്യുന്നു. പ്രിഫിൽ ഘട്ടത്തിൽ, ഡ്രാഫ്റ്റിന്റെ KV കാഷിൽ പുതുതായി ജനറേറ്റുചെയ്ത ടോക്കൺ പ്രിഫിൽ ചെയ്യുന്നതിനായി ടാർഗെറ്റ് ലോജിറ്റുകൾ ഉടൻ തന്നെ സാമ്പിൾ ചെയ്യപ്പെടുന്നു. ഡ്രാഫ്റ്റ് ഇതുവരെ സാമ്പിൾ ചെയ്തിട്ടില്ല, എന്നാൽ അത് ഉത്പാദിപ്പിക്കുന്ന ലോജിറ്റുകൾ ഡീകോഡ് ഘട്ടത്തിലേക്ക് കൊണ്ടുപോകുന്നു.
ഡീകോഡിൽ, ഡ്രാഫ്റ്റ് മോഡൽ മുന്നോട്ട് കൊണ്ടുപോകുകയും ഓരോ ഘട്ടത്തിലും ടോപ്പ് ടോക്കൺ സാമ്പിൾ ചെയ്യുകയും ചെയ്യുന്നു. ആവശ്യമള്ള ഡ്രാഫ്റ്റ് നീളത്തിൽ എത്തിയതിനുശേഷം, സ്വീകരിച്ച സീക്വൻസ് നീളം സാമ്പിളർ തിരിച്ചറിയുന്ന ലോജിറ്റുകൾ നിർമ്മിക്കുന്നതിനായി ടോക്കണുകൾ ടാർഗെറ്റ് മോഡലിലൂടെ പ്രവർത്തിപ്പിക്കുന്നു. ഡ്രാഫ്റ്റിൽ നിന്നും ടാർഗെറ്റിൽ നിന്നുമുള്ള പൂർണ്ണമായ പ്രോബബിലിറ്റി ഡിസ്ട്രിബ്യൂഷനുകൾ താരതമ്യം ചെയ്തുകൊണ്ടാണ് അംഗീകാരം നിർണ്ണയിക്കുന്നത്. സ്വീകരിച്ച ഡ്രാഫ്റ്റ് സീക്വൻസിനെ തുടർന്ന് ടാർഗെറ്റ് എപ്പോഴും ഒരു കൂട്ടം ലോജിറ്റുകൾ ഔട്ട്പുട്ട് ചെയ്യുന്നതിനാൽ, അധിക ഔട്ട്പുട്ട് നിർമ്മിക്കാൻ അത് സാമ്പിൾ ചെയ്യപ്പെടുന്നു. ഡ്രാഫ്റ്റ് മോഡൽ ഇതുവരെ ആ സ്വീകരിച്ച ടോക്കൺ കണ്ടിട്ടില്ലാത്തതിനാൽ, അടുത്ത ഡീകോഡ് ഘട്ടത്തിനായുള്ള തയ്യാറെടുപ്പിൽ അതിന്റെ അനുബന്ധ KV കാഷ് എൻട്രികൾ പോപ്പുലേറ്റ് ചെയ്യുന്നതിനായി ഇത് വീണ്ടും പ്രവർത്തിപ്പിക്കുകയും ലോജിറ്റുകൾ വീണ്ടും കൊണ്ടുപോകുകയും ചെയ്യുന്നു.
EAGLE
സാധ്യമായ ഡ്രാഫ്റ്റ് ടോക്കണുകളുടെ ട്രീ പോലെയുള്ള ട്രാവേഴ്സലിലൂടെ ജനറേറ്റുചെയ്ത, ഒന്നിലധികം ഡ്രാഫ്റ്റ് സീക്വൻസുകൾ പര്യവേക്ഷണം ചെയ്യുന്ന സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗ് സ്കീമാണ് EAGLE. ലീനിയർ സീക്വൻസിലെ ഏറ്റവും ഉയർന്ന സ്കോറുള്ള ടോക്കൺ പിന്തുടരുന്നതിന് പകരം ഓരോ നോഡിലും Top-K കാൻഡിഡേറ്റുകൾ പരിഗണിച്ച്, ഡ്രാഫ്റ്റ് ടോക്കണുകളുടെ തുടർച്ചയായ എക്സിക്യൂഷനുകൾ ഉപയോഗിച്ച് നിശ്ചിത (EAGLE) അല്ലെങ്കിൽ ഡൈനാമിക് ആകൃതിയിലുള്ള (EAGLE-2) ട്രീ പര്യവേക്ഷണം ചെയ്യപ്പെടുന്നു. തുടർന്ന് സീക്വൻസുകൾ സ്കോർ ചെയ്യുകയും, തുടരുന്നതിനായി അനുയോജ്യമായ ഏറ്റവും നീളമേറിയത് തിരഞ്ഞെടുക്കുകയും, കൂടാതെ ടാർഗെറ്റിൽ നിന്നുള്ള ഒരു അധിക ടോക്കൺ കൂടി ചേർക്കുകയും ചെയ്യുന്നു.
കൂടുതൽ കൃത്യമായ പ്രവചനം നേടുന്നതിന്, ഒരു EAGLE ഡ്രാഫ്റ്റ് മോഡൽ ടോക്കണുകളെ അടിസ്ഥാനമാക്കി മാത്രമല്ല, ടാർഗെറ്റ് മോഡലിന്റെ ടാർഗെറ്റ് ഫീച്ചറുകൾ (അവസാന ലെയർ ഹിഡൻ സ്റ്റേറ്റുകൾ) ഉപയോഗിച്ചും പ്രവചിക്കുന്നു. കുറഞ്ഞ ലേറ്റൻസി ബജറ്റിനുള്ളിൽ അനുയോജ്യമായ കാൻഡിഡേറ്റുകൾ ജനറേറ്റ് ചെയ്യാൻ തക്കവണ്ണം കൃത്യമായ കസ്റ്റം, ചെറിയ ഡ്രാഫ്റ്റ് മോഡലുകളെ പരിശീലിപ്പിക്കേണ്ടതിന്റെ ആവശ്യകതയാണ് EAGLE-ന്റെ ദോഷം. സാധാരണയായി, ഒരു ഡ്രാഫ്റ്റ് മോഡൽ ഒറിജിനൽ മോഡലിന്റെ ഒരു ഡീകോഡർ ലെയറിന് സമാനമായ ഒ एकल ട്രാൻസ്ഫോർമർ ലെയറാണ്, ഇത് അതിന്റെ എംബെഡിംഗുകളിലേക്കും lm_head പ്രൊജക്ഷനുകളിലേക്കും ടൈ ചെയ്തിരിക്കുന്നതിലൂടെ ടാർഗെറ്റുമായി ദൃഢമായി ബന്ധപ്പെട്ടിരിക്കുന്നു. ഇതിന് കുറഞ്ഞ KV കാഷ് ശേഷി ആവശ്യമുള്ളതിനാൽ, EAGLE-ന് കുറഞ്ഞ മെമ്മറി കാൽപ്രിന്റ് ഉണ്ട്.
ടാർഗെറ്റ് മോഡലിലെ ട്രീ പോലെയുള്ള സീക്വൻസുകൾ പരിശോധിക്കുന്നതിന്, കസ്റ്റം അറ്റൻഷൻ മാസ്കുകൾ ഉപയോഗിക്കണം. ദുരന്തവശാൽ, യഥാർത്ഥ ഇൻപുട്ട് നീളങ്ങൾക്ക് მთლიან സീക്വൻസിനായി കസ്റ്റം അറ്റൻഷൻ മാസ്ക് ഉപയോഗിക്കുന്നത് അറ്റൻഷൻ ഗണ്യമായി മന്ദഗതിയിലാക്കുന്നു (50% വരെ), ഇത് ഊഹങ്ങളിലൂടെ നേടാനാകുന്ന ചില വേഗത വർദ്ധനവിനെ ഇല്ലാതാക്കുന്നു. ഈ കാരണം കൊണ്ട് ഞങ്ങൾ പൂർണ്ണ ട്രീ പര്യവേക്ഷണം ഇതുവരെ പ്രൊഡക്ഷനിൽ വിന്യസിച്ചിട്ടില്ല, പകരം DeepSeek-V3 ടെക്നിക്കൽ റിപ്പോർട്ടിൽ അവതരിപ്പിച്ചിരിക്കുന്ന MTP-പോലുള്ള സ്കീമുകൾ വഴിയുള്ള സിംഗിൾ-ടോക്കൺ പ്രവചനത്തിന്റെ പ്രത്യേക കേസിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു.
MTP
പ്രവചനത്തിനായി ടോക്കണുകൾക്കൊപ്പം ഹിഡൻ സ്റ്റേറ്റുകൾ ഉപയോഗിക്കുന്നു എന്നതൊഴിച്ചാൽ, ഈ സ്കീം ഡ്രാഫ്റ്റ്-ടാർഗെറ്റ് ഡീകോഡിംഗിന് സമാനമാണ്. റെഗുലർ ഡ്രാഫ്റ്റ്-ടാർഗെറ്റ് സ്പെക്യുലേഷനുമായി താരതമ്യം ചെയ്യുമ്പോൾ പ്രിഫിൽ, ഡീകോഡ് ഘട്ടങ്ങളിൽ അല്പം കൂടി കൂടുതൽ ജോലി ചെയ്യേണ്ടതുണ്ട്. ഡ്രാഫ്റ്റ് മോഡൽ ടോക്കണുകളും ഹിഡൻ സ്റ്റേറ്റുകളും ഉപയോഗിക്കുന്നു: ടോക്കൺ t_i-യുമായി പൊരുത്തപ്പെടുന്ന ലോജിറ്റുകൾ L_i-ൽ നിന്നാണ് t_{i+1} ടോക്കൺ സാമ്പിൾ ചെയ്യുന്നത്, അവ ഹിഡൻ സ്റ്റേറ്റുകൾ H_i-ൽ നിന്ന് ഉരുത്തിരിഞ്ഞവയാണ്. ഫലമായി, ടാർഗെറ്റ് ഔട്ട്പുട്ട് ചെയ്ത ഹിഡൻ സ്റ്റേറ്റ് വെക്ടറുകളുമായി ബന്ധപ്പെട്ട് ഇൻപുട്ട് ടോക്കൺ ബഫറുകൾ ഒരു ഘട്ടം ഇടത്തേക്ക് മാറ്റേണ്ടതുണ്ട്. പരിശീലനത്തിനായി ഉപയോഗിക്കുന്ന പൊരുത്തങ്ങളും ഇൻഫറൻസ് സമയത്തെ മാറ്റവും താഴെയുള്ള ചിത്രം അടയാളപ്പെടുത്തുന്നു.
ഹിഡൻ സ്റ്റേറ്റുകളും ലോജിറ്റുകളും കൊണ്ടുപോകുന്നു എന്നതൊഴിച്ചാൽ, ഡീകോഡിംഗ് ഫ്ലോ ഡ്രാഫ്റ്റ്-ടാർഗെറ്റ് ഡീകോഡിംഗിന് വളരെ സമാനമാണ്. ഞങ്ങളുടെ നടപ്പിലാക്കൽ അനുബന്ധമായ എല്ലാ സാമ്പിളിംഗ്, ലോജിറ്റ് പ്രോസസ്സിംഗ് ലോജിറ്റുകളും പങ്കിടുന്നു, മോഡൽ ഫോർവേഡ് ഇൻവോക്കേഷനുകൾ മാത്രം പ്രത്യേകമാക്കുന്നു. ഒന്നിലധികം ടോക്കണുകൾ പ്രവചിക്കുമ്പോൾ, ഡ്രാഫ്റ്റ് മോഡൽ പ്രവചനത്തിനായി ഡ്രാഫ്റ്റ് ഹിഡൻ സ്റ്റേറ്റുകൾ ഉപയോഗിക്കുന്നു, കൂടാതെ അതിന്റെ സ്വന്തം ഫീച്ചറുകളെ അടിസ്ഥാനമാക്കി KV കാഷ് എൻട്രികൾ പോപ്പുലേറ്റ് ചെയ്യുകയും ചെയ്യുന്നു. ദീർഘകാലാടിസ്ഥാനത്തിൽ, ഇത് കൃത്യത കുറയ്ക്കും. തുടർന്ന്, ടാർഗെറ്റ് പ്രവചനത്തിനായി KV കാഷ് എൻട്രി പോപ്പുലേറ്റ് ചെയ്യാൻ ഡ്രാഫ്റ്റ് മോഡൽ പ്രവർത്തിപ്പിക്കുമ്പോൾ, കൂടുതൽ കൃത്യമായ ടാർഗെറ്റ് ഹിഡൻ സ്റ്റേറ്റുകൾ ഇൻപുട്ടുകളായി എടുത്തുകൊണ്ട് ഞങ്ങൾ അത് മുഴുവൻ സീക്വൻസിലും പ്രവർത്തിപ്പിക്കുന്നു. ഈ ഡ്രാഫ്റ്റ് മോഡലുകൾ ചെറുതായതിനാൽ, അധിക ടോക്കണുകൾ പ്രോസസ്സ് ചെയ്യുന്നതിനുള്ള അധിക ചെലവ് വളരെ തുച്ഛമാണ്.
MTP ഹെഡുകൾ പരിശീലിപ്പിക്കുന്നു (Training MTP Heads)
MTP-യുടെ പ്രയോജനം ലഭിക്കുന്നതിന്, Perplexity-യുടെ ഡാറ്റാസെറ്റുകളിൽ ഞങ്ങളുടെ ഫൈൻ-ട്യൂൺ ചെയ്ത മോഡലുകളുമായി ഘടിപ്പിച്ചിരിക്കുന്ന MTP ഹെഡുകൾ പരിശീലിപ്പിക്കാൻ ആവശ്യമായ ഇൻഫ്രാസ്ട്രക്ചർ ഞങ്ങൾ നിർമ്മിച്ചു, ഇത് 8xH100 ഡിവൈസുകളുള്ള ഒരു നോഡിലാണ് പ്രവർത്തിക്കുന്നത്. ഏകദേശം ഒരു ദിവസം കൊണ്ട്, Llama-1B മുതൽ Llama-70B വരെയുള്ള മോഡലുകൾക്കായി നമുക്ക് ഹെഡുകൾ നിർമ്മിക്കാൻ കഴിയും. വലിയ മോഡലുകൾക്കായി, ഫൈൻ-ട്യൂണിംഗ് പ്രക്രിയയിൽ നിർമ്മിച്ച MTP ഹെഡുകളെ ഞങ്ങൾ ആശ്രയിക്കുന്നു.
ടാർഗെറ്റ് ഹിഡൻ സ്റ്റേറ്റുകളിൽ നിന്ന് എക്സ്ട്രാപോളേറ്റ് ചെയ്ത ഡ്രാഫ്റ്റ് ഹിഡൻ സ്റ്റേറ്റുകളും ലോജിറ്റുകളും, ടാർഗെറ്റിന്റെ അടുത്ത ടോക്കൺ ലോജിറ്റുകളുമായും ഹിഡൻ സ്റ്റേറ്റുകളുമായും പൊരുത്തപ്പെടുത്തുക എന്നതാണ് MTP പരിശീലനത്തിന്റെ ലക്ഷ്യം. ഹിഡൻ സ്റ്റേറ്റുകൾക്കായുള്ള ഇൻഫറൻസ് ചെലവേറിയതായതിനാൽ, പരിശീലന സമയത്ത് ഉപയോഗിക്കുന്നതിനായി ടാർഗെറ്റ് മോഡലിന്റെ ഞങ്ങളുടെ ഇൻഫറൻസ്-ഒപ്റ്റിമൈസ്ഡ് നടപ്പിലാക്കൽ ഉപയോഗിച്ച് ഞങ്ങൾ അവ മുൻകൂട്ടി കണക്കാക്കുന്നു. എന്നിരുന്നാലും, ഇൻഫറൻസ് MTP നടപ്പിലാക്കൽ സാധുതയുള്ളതാണെന്ന് ഉറപ്പാക്കാനും ക്വാണ്ടൈസേഷൻ അല്ലെങ്കിൽ ഒപ്റ്റിമൈസേഷൻ കാരണം ഉണ്ടാകുന്ന സംഖ്യാപരമായ വ്യത്യാസങ്ങൾ ഫലങ്ങളെ തടസ്സപ്പെടുത്തുന്നില്ലെന്ന് ഉറപ്പാക്കാനും, വാലിഡേഷൻ ലോസും കൃത്യത എസ്റ്റിമേഷനുമായി ഞങ്ങൾ ടാർഗെറ്റിന്റെയും ഡ്രാഫ്റ്റ് മോഡലുകളുടെയും ഇൻഫറൻസ് നടപ്പിലാക്കൽ പൂർണ്ണമായി വീണ്ടും ഉപയോഗിക്കുന്നു.
ഒറിജിനൽ പേപ്പറിൽ ഉപയോഗിച്ച ShareGPT ഡാറ്റാസെറ്റിൽ നിന്ന് വലിയ സാമ്പിളുകളിലേക്ക് സ്കെയിൽ ചെയ്യുമ്പോൾ, EAGLE പേപ്പറിൽ രൂപരേഖ തയ്യാറാക്കി നടപ്പിലാക്കിയ MTP ഹെഡ് ആർക്കിടെക്ചർ 70B വലിപ്പമുള്ള മോഡലുകൾക്കായി പരിശീലിപ്പിക്കുന്നതിൽ പരാജയപ്പെട്ടുവെന്ന് ഞങ്ങൾ ശ്രദ്ധിച്ചു. വലിയൊരു കൂട്ടം ചെറിയ സീക്വൻസുകൾ അടങ്ങിയിരുന്ന ShareGPT-യിൽ നിന്ന് വ്യത്യസ്തമായി, ഞങ്ങൾ വളരെ കുറഞ്ഞ എണ്ണത്തിലുള്ള ഗണ്യമായി നീളമുള്ള പ്രോംപ്റ്റുകളിലാണ് പരിശീലനം നടത്തുന്നത്. യഥാർത്ഥ EAGLE ഹെഡുകൾ ഒരു സാധാരണ ട്രാൻസ്ഫോർമറിൽ നിന്ന് ഘടനയിൽ അല്പം വ്യതിചലിച്ചതിനാൽ, ഒഴിവാക്കപ്പെട്ടിരുന്ന ചില RMS നോർമലൈസേഷൻ ലെയറുകൾ ഞങ്ങൾ വീണ്ടും അവതരിപ്പിച്ചു. ഇത് പരിശീലനം കൺവേർജ് ചെയ്യാൻ അനുവദിക്കുക മാത്രമല്ല, ഹെഡുകളുടെ കൃത്യത കുറച്ച് ശതമാനത്തിൽ വർദ്ധിപ്പിക്കുകയും ചെയ്തുവെന്ന് ഞങ്ങൾ കണ്ടെത്തി.
ലെയർ നോമുകൾ പരിശീലനം സുഗമമാക്കുക മാത്രമല്ല ചെയ്യുന്നത്, നോമുകൾ വീണ്ടും അവതരിപ്പിക്കുന്നത് ഗണിതപരമായി സ്വാഭാവികവുമാണ്. MTP ഹെഡുകൾ ടാർഗെറ്റ് മോഡലിന്റെ എംബെഡിംഗുകളും ലോജിറ്റ് പ്രൊജക്ഷനുകളും വീണ്ടും ഉപയോഗിക്കുന്നു, കാരണം അവ വലിപ്പത്തിൽ ഗണ്യമായതായിരിക്കാം (Llama 70B-ക്ക് ഏകദേശം 2 GB). പരിശീലന സമയത്ത്, ഇവ ഫ്രീസ് ചെയ്യപ്പെടുന്നു, കൂടാതെ ഒറിജിനൽ മോഡലിന്റെ പ്രൊജക്ഷൻ ലെയർ പരിശീലന സമയത്ത് പഠിച്ച അതേ വെക്ടർ സ്പേസിലേക്ക് പ്രവചനങ്ങൾ എംബെഡ് ചെയ്യാൻ MTP ലെയർ പഠിക്കുന്നു എന്നാണ് പ്രതീക്ഷിക്കുന്നത്. നോമുകൾ ഒഴിവാക്കുന്നതിലൂടെ, ഒരു ഒറിജിനൽ MLP-യും അതിനെത്തുടർന്നുള്ള ഒരു നോമും ചെയ്യുന്ന അതേ ഫംഗ്ഷൻ ഒരു ഒറ്റ MLP പഠിക്കുമെന്ന് പ്രതീക്ഷിക്കുന്നു, ഇത് ഡ്രാഫ്റ്റിന്റെയും ടാർഗെറ്റ് മോഡലുകളുടെയും ഹിഡൻ സ്റ്റേറ്റുകൾ തമ്മിലുള്ള പൊരുത്തത്തെ തടസ്സപ്പെടുത്തുന്നു.
സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗോടുകൂടിയ ഇൻഫറൻസ്
ഇൻഫറൻസ് എഞ്ചിനിൽ, ഇൻപുട്ട് സീക്വൻസുകൾക്കായി ടോക്കണുകൾ ജനറേറ്റ് ചെയ്യുന്നതിന്, ആദ്യം അവ ന്യായമായ വലിപ്പമുള്ള ബാച്ചുകളായി ഗ്രൂപ്പ് ചെയ്യണം, തുടർന്ന് അടുത്ത ടോക്കണുകൾക്കായി KV കാഷിൽ പേജുകൾ അലോക്കേറ്റ് ചെയ്യണം. ഇൻപുട്ട് ടോക്കണുകളും KV പേജ് വിവരങ്ങളും പിന്നീട് മോഡൽ പ്രവർത്തിപ്പിക്കുന്ന എല്ലാ പാരലൽ റാങ്കുകളിലേക്കും ബ്രോഡ്കാസ്റ്റ് ചെയ്യുന്ന ഒരു ബഫറിലേക്ക് പാക്ക് ചെയ്യപ്പെടുന്നു. അവസാനമായി, മെറ്റാഡാറ്റ GPU മെമ്മറിയിലേക്ക് പകർത്തുകയും അടുത്ത ടോക്കൺ സാമ്പിൾ ചെയ്യപ്പെടുന്ന ലോജിറ്റുകൾ നിർമ്മിക്കാൻ മോഡൽ എക്സിക്യൂട്ട് ചെയ്യുകയും ചെയ്യുന്നു.
അവയ്ക്കിടയിലുള്ള അഭ്യർത്ഥനകൾ ഓർക്കസ്ട്രേറ്റ് ചെയ്യുന്ന ഒരു റാപ്പർ വഴി ഡ്രാഫ്റ്റും ടാർഗെറ്റ് ഇൻഫറൻസ് സെർവറും അയഞ്ഞ രീതിയിൽ ജോടിയാക്കുന്ന ചില നടപ്പിലാക്കലുകളിൽ നിന്ന് വ്യത്യസ്തമായി, ഞങ്ങളുടെ ഡ്രാഫ്റ്റ്-ടാർഗെറ്റ് ജോഡികൾ ദൃഢമായി ജോടിയാക്കുകയും ഒരേപോലെ ജനറേഷനിലൂടെ കടന്നുപോകുകയും ചെയ്യുന്നു. എല്ലാത്തരം സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗിനും മോഡലുകൾക്കിടയിൽ ബാച്ച് ഷെഡ്യൂളിംഗും KV പേജ് അലോക്കേഷനും പങ്കിടപ്പെടുന്നു: ഇത് ഒരു മോഡലിനെ വലിയ ഇൻഫറൻസ് സെർവറുമായി ബന്ധിപ്പിക്കുന്ന ലോജിക്കിനെ ഏകീകരിക്കുന്നു, കാരണം അവയെല്ലാം ഒരേ ഇൻ്റർഫേസ് എക്സ്പോസ് ചെയ്യുന്നു.
Perplexity-യിലെ ഇൻഫറൻസ് റൺടൈം FlashInfer-നെ ചുറ്റിപ്പറ്റിയാണ് രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത്, ഇത് അറ്റൻഷൻ കർണൽ കോൺഫിഗർ ചെയ്യാനും ഷെഡ്യൂൾ ചെയ്യാനും നിർമ്മിക്കേണ്ട മെറ്റാഡാറ്റ നിർണ്ണയിക്കുന്നു. ഒരു ബാച്ച് രൂപീകരിക്കുന്ന ചില ഇൻപുട്ട് സീക്വൻസുകൾ നൽകിയിരിക്കുന്നുവെങ്കിൽ, പ്രിഫിലിനായി, ഡീകോഡിനായി അല്ലെങ്കിൽ പരിശോധനയ്ക്കായി, ഇൻ്റർമീഡിയറ്റ് ബഫറുകൾ അലോക്കേറ്റ് ചെയ്യുന്നതിനും അറ്റൻഷനിൽ ഉപയോഗിക്കുന്ന ചില കോൺസ്റ്റന്റ് ബഫറുകൾ പോപ്പുലേറ്റ് ചെയ്യുന്നതിനുമുള്ള CPU-വശത്തുള്ള ജോലി ചെയ്യണം. GPU ഉപയോഗം പരമാവധി വർദ്ധിപ്പിക്കുന്നതിന് മറച്ചുവെക്കേണ്ട ലേറ്റൻസികൾ ഉണ്ടാക്കുന്ന ബാച്ച് ഷെഡ്യൂളിംഗിന്റെയും KV പേജ് അലോക്കേഷന്റെയും ചെലവിന് പുറമേയാണ് ഈ ജോലി.
സ്പെക്യുലേഷൻ ഇല്ലാതെയുള്ള ഇൻഫറൻസിനായി ഞങ്ങൾ CPU-വശത്തുള്ളതും GPU-വശത്തുള്ളതുമായ ജോലികൾ പൂർണ്ണമായി പാരലലൈസ് ചെയ്തിട്ടുണ്ടെങ്കിലും, സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗിനുള്ള CPU-GPU ബാലൻസ് കൂടുതൽ സങ്കീർണ്ണമാണെന്ന് ഞങ്ങൾ കണ്ടെത്തി. തുടർന്നുള്ള റണ്ണിനായി സ്വീകരിച്ച ടോക്കണുകളുടെ എണ്ണം സീക്വൻസ് നീളം നിർണ്ണയിക്കുന്നു എന്ന വസ്തുതയിൽ നിന്നാണ് പ്രധാന വെല്ലുവിളി ഉണ്ടാകുന്നത്, ഇത് ഒഴിവാക്കാൻ പ്രയാസകരമായ ഒരു GPU-ടു-CPU സിൻക്രണൈസേഷൻ പോയിന്റ് അവതരിപ്പിക്കുന്നു. CPU ജോലിയുടെ ലേറ്റൻസി മികച്ച രീതിയിൽ മറച്ചുവെക്കുന്നതിനായി ഞങ്ങൾ വിവിധ ഷെഡ്യൂളിംഗ് സ്കീമുകൾ പരീക്ഷിച്ചു.
ഡ്രാഫ്റ്റ്-ടാർഗെറ്റ് ഷെഡ്യൂൾ
ഒരു ടാർഗെറ്റ് മോഡലിനേക്കാൾ ചെറുതാണെങ്കിലും, മുഴുവൻ LLM-ഉം ഡ്രാഫ്റ്റായി ഉപയോഗിക്കുമ്പോൾ, അത് GPU-ൽ ഗണ്യമായ ലേറ്റൻസി ഉണ്ടാക്കുകയും ചെലവേറിയ CPU പ്രവർത്തനങ്ങൾ മറച്ചുവെക്കാൻ കുറച്ച് ഹെഡ്റൂം നൽകുകയും ചെയ്യുന്നു. ചെറിയ മോഡലുകൾക്ക് ടെൻസർ പാരലലിസത്തിൽ നിന്ന് പ്രയോജനം ലഭിക്കാത്തതിനാൽ, ഒരു ടാർഗെറ്റും ഡ്രാഫ്റ്റും ഷാർഡ് ചെയ്തിരിക്കുന്ന റാങ്കുകളുടെ എണ്ണം തമ്മിൽ പൊരുത്തക്കേടുണ്ട്. ഞങ്ങളുടെ നടപ്പിലാക്കലിൽ, ഒരു TP ഗ്രൂപ്പിന്റെ ലീഡർ റാങ്കിൽ മാത്രമാണ് ഡ്രാഫ്റ്റ് മോഡൽ പ്രവർത്തിക്കുന്നത്.
മുമ്പ് സൂചിപ്പിച്ചതുപോലെ, ഒരു ഡീകോഡ് ഘട്ടം അടുത്ത റണ്ണിലേക്ക് ലോജിറ്റുകൾ കൊണ്ടുപോകുന്നു. CPU-വശത്തുള്ള ബാച്ച് ഷെഡ്യൂളിംഗ് ജോലിയുമായി ഡ്രാഫ്റ്റ് മോഡലിന്റെ ഒരു എക്സിക്യൂഷൻ ഓവർലാപ്പ് ചെയ്യാൻ ഇത് ഞങ്ങളെ അനുവദിക്കുന്നു. ബാച്ച് ഒരുമിച്ച് ചേർത്ത ശേഷം, സാമ്പിളറിലേക്കും ഡ്രാഫ്റ്റിലേക്കുമുള്ള ആവർത്തിച്ചുള്ള കോളുകൾ ഡ്രാഫ്റ്റ് ടോക്കണുകൾ നിർമ്മിക്കുന്നു. സമാന്തരമായി, പരിശോധനയ്ക്കുള്ള ബാച്ച് ടാർഗെറ്റ് മോഡലിനായി ഒന്നിച്ച് ചേർക്കുകയും പാരലൽ വർക്കർമാരുമായി സിൻക്രണൈസ് ചെയ്യുകയും ചെയ്യുന്നു. സ്വീകരിച്ച സീക്വൻസ് നീളം നിർണ്ണയിക്കാൻ ടാർഗെറ്റ് ലോജിറ്റുകൾ പരിശോധിക്കുകയും സാമ്പിൾ ചെയ്യുകയും ചെയ്യുന്നു. ഈ ഘട്ടത്തിൽ, തുടർന്നുള്ള സീക്വൻസ് നീളം നിർണ്ണയിക്കാൻ GPU-ടു-CPU സിൻക്രണൈസേഷൻ ആവശ്യമാണ്. ഡ്രാഫ്റ്റ് മോഡൽ ലീഡർ നോഡിൽ മാത്രമാണ് പ്രവർത്തിക്കുന്നത് എന്നതിനാൽ, അതിന്റെ ബാച്ച് ക്രമത്തിൽ സജ്ജീകരിക്കുകയും, ടാർഗെറ്റ് നിർമ്മിച്ച അധിക ടോക്കൺ ഉപയോഗിച്ച് അതിന്റെ KV കാഷ് എൻട്രികൾ പോപ്പുലേറ്റ് ചെയ്യാൻ അതിന്റെ എക്സിക്യൂഷൻ ആരംഭിക്കുകയും ചെയ്യുന്നു. നിലവിലുള്ള റണ്ണിൽ ഈ ഡ്രാഫ്റ്റ് റൺ ഉത്പാദിപ്പിക്കുന്ന ലോജിറ്റുകൾ തുടർന്നുള്ള റണ്ണിൽ ആദ്യത്തെ ഡ്രാഫ്റ്റ് ടോക്കൺ സാമ്പിൾ ചെയ്യാൻ ഉപയോഗിക്കും. ഏറ്റവും പ്രധാനമായി, ഡ്രാഫ്റ്റ് പ്രവർത്തിക്കുമ്പോൾ, അടുത്ത ബാച്ച് ഷെഡ്യൂൾ ചെയ്യാൻ കഴിയും.
ഒരു ഒറ്റ ടോക്കണിനായുള്ള MTP ഷെഡ്യൂൾ
റൺടൈം ഇതുവരെ ഈഗിൾ-ശൈലിയിലുള്ള ഡ്രാഫ്റ്റ് ട്രീ പര്യവേക്ഷണം നൽകുന്നില്ലെങ്കിലും, ഒരു ഒരൊറ്റ ട്രാൻസ്ഫോർമർ ഡീകോഡർ ലെയറിന്റെ വലിപ്പമുള്ള ഒരു മോഡൽ നിർമ്മിച്ച ഡ്രാഫ്റ്റ് ടോക്കണുകളുടെ ലീനിയർ സീക്വൻസ് പരിഗണിച്ച് ഞങ്ങൾ ഈ സ്കീമിന്റെ ഒരു പ്രത്യേക കേസ് നടപ്പിലാക്കി. DeepSeek R1-ന്റെ ഓപ്പൺ സോഴ്സ് വെയിറ്റുകൾ ഉപയോഗിച്ച് ഡ്രാഫ്റ്റ് പ്രവചനത്തിനായി ഈ സ്കീം ഉപയോഗിക്കാം. ഒരു ഒറ്റ ടോക്കൺ പ്രവചിക്കുന്നതിന്റെ ഉപ-കേസ് രസകരമാണ്, കാരണം വലിയ MTP ലെയറുകൾ അവയുടെ ഓവർഹെഡ് ന്യായീകരിക്കാൻ തക്കവണ്ണം ഉയർന്ന സ്വീകാര്യതാ നിരക്കുകൾ കൈവരിക്കുന്നു.
ഡ്രാഫ്റ്റ് മോഡൽ വളരെ വേഗതയേറിയതായതിനാലും കുറഞ്ഞ CPU-വശത്തുള്ള ലേറ്റൻസി മറച്ചുവെക്കുന്നതിനാലും MTP ഷെഡ്യൂളിംഗ് അല്പം കൂടി സങ്കീർണ്ണമാണ്. കൂടാതെ, ടാർഗെറ്റ് മോഡലിനൊപ്പം ഡ്രാഫ്റ്റ് ഷാർഡ് ചെയ്യപ്പെടുന്നു, ഇതിന് ബാച്ച് വിവരങ്ങൾക്കായി പങ്കിട്ട മെമ്മറി കൈമാറ്റങ്ങൾ ആവശ്യമാണ്. മുമ്പത്തെ സ്കീമിന് സമാനമായി, ബാച്ച് വിവരങ്ങൾ കൈമാറുന്നതിലൂടെയും ക്യാരി-ഓവർ ലോജിറ്റുകളിൽ നിന്ന് ആദ്യത്തെ ടോക്കൺ സാമ്പിൾ ചെയ്യുന്നതിലൂടെയും ഒരു റൺ ആരംഭിക്കുന്നു. അടുത്തതായി, ടോക്കണുകൾ സാധൂകരിക്കാൻ ടാർഗെറ്റ് പ്രവർത്തിപ്പിക്കുന്നു, D എന്നത് ഡീകോഡ് ബാച്ച് വലുപ്പമായ 2 * D ടോക്കണുകൾ പ്രോസസ്സ് ചെയ്യുന്നു. ബാച്ച് തുല്യമായി രണ്ടായി വിഭജിക്കപ്പെടുന്നതിനാൽ, InfiniBand പോലുള്ള വേഗത കുറഞ്ഞ ഇൻ്റർകണക്ടുകളിലെ മിക്സ്ചർ-ഓഫ്-എക്സ്പെർട്ട്സ് (MoE) മോഡലുകളിലെ മൈക്രോ-ബാച്ചിംഗിന് ഇത് അനുയോജ്യമാണ്. ടാർഗെറ്റിന്റെ ഹിഡൻ സ്റ്റേറ്റുകൾ അടുത്ത ഡ്രാഫ്റ്റ് റണ്ണിലേക്ക് കൊണ്ടുപോകുന്നു, അതേസമയം ലോജിറ്റുകൾ പരിശോധനയ്ക്കായി സാമ്പിളറിലേക്ക് പാസ് ചെയ്യപ്പെടുന്നു.
GPU-ൽ പരിമിതമായ അളവിലുള്ള അധിക ജോലി ചെയ്യുന്നതിലൂടെ, ഡ്രാഫ്റ്റ് സീക്വൻസ് അംഗീകാരത്തിന് ശേഷം CPU-ടു-GPU സിൻക്രണൈസേഷൻ ഞങ്ങൾ ഒഴിവാക്കുന്നു. ടാർഗെറ്റുകളുടെ ഇൻപുട്ട് ടോക്കണുകൾ മാറ്റിയ ശേഷം, ഒരു കർണൽ അടുത്ത ടാർഗെറ്റ് ടോക്കണുകളെ അവയുടെ അനുബന്ധ ലൊക്കേഷനുകളിൽ പ്ലഗ് ഇൻ ചെയ്യുന്നു. ടാർഗെറ്റിന്റെ അതേ ബാച്ച് വിവരങ്ങൾ ഉപയോഗിച്ച് ഡ്രാഫ്റ്റ് വീണ്ടും പ്രവർത്തിപ്പിക്കുന്നു, KV കാഷ് എൻട്രികൾ പോപ്പുലേറ്റ് ചെയ്യുകയും അടുത്ത റണ്ണിനായി ലോജിറ്റുകളും ഹിഡൻ സ്റ്റേറ്റുകളും നിർമ്മിക്കുകയും ചെയ്യുന്നു, സ്വീകരിക്കാത്ത ടോക്കണുകളിൽ ചില അനാവശ്യ ജോലികൾ ചെയ്യുന്നു. ഈ സാഹചര്യങ്ങളിൽ, ഡ്രാഫ്റ്റ് മോഡലിന്റെ ചെറിയ വലി കാരണം ഉപയോഗിക്കാത്ത ജോലിയുടെ ലേറ്റൻസി കഷ്ടിച്ച് അളക്കാൻ കഴിയുന്നതേയുള്ളൂ. ഡ്രാഫ്റ്റ് റണ്ണിന് സമാന്തരമായി, GPU ജോലി അവസാനിക്കുന്നതിനായി കാത്തിരിക്കാതെ, CPU-ൽ സീക്വൻസ് നീളങ്ങൾ നിർണ്ണയിക്കപ്പെടുകയും അടുത്ത ബാച്ചിന്റെ ഷെഡ്യൂളിംഗ് ആരംഭിക്കുകയും ചെയ്യുന്നു.
ഡ്രാഫ്റ്റ് ലെയറിലെ അധിക ജോലിയുടെ ഓവർഹെഡ് അറ്റൻഷനിൽ ശ്രദ്ധേയമല്ല, എന്നിരുന്നാലും MLP ലെയറുകൾ കൂടുതൽ പ്രശ്നകരമാണ്. ടോക്കണുകളുടെ എണ്ണത്തിന്റെ അളവുകോലിൽ മാട്രിക്സ് ഗുണന നിർദ്ദേശങ്ങൾ 64 എന്ന അതിർത്തിയിലേക്ക് പാഡ് ചെയ്യുന്നതിനാൽ, ഇരട്ടിയാക്കലിന് ഗണ്യമായി കൂടുതൽ ബ്ലോക്കുകൾ ആവശ്യമില്ലെങ്കിൽ, ഓവർഹെഡ് മറയ്ക്കപ്പെടും. ദൈർഘ്യമേറിയ ഡ്രാഫ്റ്റ് സീക്വൻസുകൾക്ക് ഓവർഹെഡ് കൂടുതൽ ചെലവേറിയതാണ് കൂടാതെ സാധാരണ ഡ്രാഫ്റ്റ്-ടാർഗെറ്റ് മോഡലുകൾക്കായി ഉപയോഗിക്കുന്ന സ്കീം മികച്ച രീതിയിൽ പ്രവർത്തിക്കുന്നു.
റഫറൻസുകൾ
സ്പെക്യുലേറ്റീവ് ഡീകോഡിംഗിലൂടെ ട്രാൻസ്ഫോർമറുകളിൽ നിന്നുള്ള വേഗത്തിലുള്ള ഇൻഫറൻസ്
EAGLE: സ്പെക്യുലേറ്റീവ് സാമ്പിളിംഗിന് ഫീച്ചർ അൺസർട്ടൻ്റി പുനർവിചിന്തനം ആവശ്യമാണ്
EAGLE-2: ഡൈനാമിക് ഡ്രാഫ്റ്റ് ട്രീകൾ ഉപയോഗിച്ച് ലാംഗ്വേജ് മോഡലുകളുടെ വേഗതയേറിയ ഇൻഫറൻസ്
EAGLE-3: പരിശീലന-സമയ പരിശോധനയിലൂടെ വലിയ ലാംഗ്വേജ് മോഡലുകളുടെ ഇൻഫറൻസ് ആക്സിലറേഷൻ സ്കെയിലിംഗ്
മെഡുസ: ഒന്നിലധികം ഡീകോഡിംഗ് ഹെഡുകളുള്ള ലളിതമായ LLM ഇൻഫറൻസ് ആക്സിലറേഷൻ ഫ്രെയിംവർക്ക്
FlashInfer: LLM ഇൻഫറൻസ് സെർവിംഗിനായി കാര്യക്ഷമവും ഇഷ്ടാനുസൃതമാക്കാവുന്നതുമായ അറ്റൻഷൻ എഞ്ചിൻ
DeepSeek-V3 ടെക്നിക്കൽ റിപ്പോർട്ട്
ഉദ്ധരണി
@online{perplexity2025AcceleratingSonarThroughSpeculation,
author = {{Perplexity} and Nandor Licker and Erin McKnight},
title = {{Accelerating Sonar through speculation}},
date = {2025-06-10},
url = {https://perplexity.coolkeypoint.com/hub/blog/accelerating-sonar-through-speculation}
}