എന്തുകൊണ്ടാണ് നെറ്റ്ഫ്ലിക്സ് ഹാൻഡ്-ക്രാഫ്റ്റഡ് ഫീച്ചറുകളിൽ നിന്ന് മാറിനിന്നത്

അതിന്റെ ചരിത്രത്തിന്റെ ഭൂരിഭാഗവും, നെറ്റ്ഫ്ലിക്സിന്റെ റെക്കമെൻഡേഷൻ പൈപ്പ്‌ലൈൻ ആയിരക്കണക്കിന് മാനുവലായി നിർവചിച്ച അറ്റ്രിബ്യൂട്ടുകളെ (attributes) ആശ്രയിച്ചിരുന്നു—ഉപയോക്താക്കളെയും ടൈറ്റിലുകളെയും അവ തമ്മിലുള്ള ഓരോ ഇടപെടലുകളെയും വിവരിക്കുന്ന നമ്പറിക് വെക്റ്ററുകൾ (numeric vectors). പുതിയ തരം ഉള്ളടക്കങ്ങൾ—ലൈവ് സ്പോർട്സ്, പോഡ്‌കാസ്റ്റുകൾ അല്ലെങ്കിൽ ഗെയിമുകൾ—സിസ്റ്റത്തിന് റെക്കമെൻഡ് ചെയ്യാൻ തുടങ്ങുന്നതിന് മുമ്പ് അവയെ പുതിയ ഫീച്ചറുകളാക്കി മാറ്റാൻ എഞ്ചിനീയർമാർ ആഴ്ചകൾ ചെലവഴിക്കേണ്ടി വന്നു. ഈ പ്രക്രിയ ചിലവേറിയതും, അസ്ഥിരവും (brittle), കാറ്റലോഗിന്റെ അതിവേഗത്തിലുള്ള വിപുലീകരണവുമായി ഒത്തുപോകാൻ പ്രയാസമുള്ളതുമായിരുന്നു.

നിലവിലുള്ള ലാർജ് ലാംഗ്വേജ് മോഡലുകൾ (LLMs) നേരിട്ട് ഉപയോഗിക്കാൻ അനുയോജ്യമായിരുന്നില്ല. അവ ഏറ്റവും ജനപ്രിയമായ ടൈറ്റിലുകളിലേക്ക് മാത്രം കേന്ദ്രീകരിക്കുകയും, ചിലപ്പോൾ നിലവിലില്ലാത്തവയെക്കുറിച്ച് തെറ്റായ വിവരങ്ങൾ നൽകുകയും (hallucinate) ചെയ്തു, കൂടാതെ റെക്കമെൻഡേഷനുകൾ സുരക്ഷിതവും പ്രസക്തവുമാക്കുന്ന ബിസിനസ്സ് നിയമങ്ങൾ നടപ്പിലാക്കുന്നതിനും അവ ബുദ്ധിമുട്ടി. അതിനാൽ, പ്രൊഡക്ഷൻ നിയന്ത്രണങ്ങൾ പാലിച്ചുകൊണ്ട് തന്നെ ലാംഗ്വേജ് മോഡലിന്റെ കരുത്ത് നിലനിർത്തുന്ന രീതിയിൽ നെറ്റ്ഫ്ലിക്സ് ഒരു പ്രത്യേക LLM അധിഷ്ഠിത പൈപ്പ്‌ലൈൻ നിർമ്മിച്ചു.

GenRec-ന്റെ ഉള്ളിൽ: ഒരു രണ്ട് ഘട്ട പരിശീലന പൈപ്പ്‌ലൈൻ

GenRec രണ്ട് വ്യത്യസ്ത ഘട്ടങ്ങളായി അടങ്ങുന്നു:

  1. ബേസ് മോഡൽ ഫൈൻ-ട്യൂണിംഗ് (Base model fine-tuning) – നെറ്റ്ഫ്ലിക്സ് ഒരു ഓപ്പൺ-വെയ്റ്റ് ലാംഗ്വേജ് മോഡലിൽ നിന്ന് തുടങ്ങി അത് ആന്തരിക വ്യൂയിംഗ് ഡാറ്റ ഉപയോഗിച്ച് ഫൈൻ-ട്യൂൺ ചെയ്യുന്നു. ഇത് മോഡലിന്റെ അടിസ്ഥാന ഘടന മാറ്റാതെ തന്നെ കാറ്റലോഗിലെ പദാവലിയും ഉപയോക്താക്കളുടെ പെരുമാറ്റ രീതികളും പഠിപ്പിക്കുന്നു.
  2. റെക്കമെൻഡേഷൻ റാങ്കിംഗ് (Recommendation ranking) – രണ്ടാമത്തെ ഘട്ടത്തിലുള്ള പരിശീലനം ഫൈൻ-ട്യൂൺ ചെയ്ത മോഡലിനെ ഒരു റാങ്കറായി മാറ്റുന്നു, ഇത് ഓരോ ഉപയോക്താവിനും അനുയോജ്യമായ ടൈറ്റിലുകൾക്ക് സ്കോർ നൽകുന്നു. പുതിയ റിലീസുകൾക്കും മാറിക്കൊണ്ടിരിക്കുന്ന ട്രെൻഡുകൾക്കും അനുസൃതമായി മോഡൽ മാറുന്നതിനായി നെറ്റ്ഫ്ലിക്സ് ഈ ഘട്ടം ഇടയ്ക്കിടെ പുതുക്കുന്നു.

പഴയ സിസ്റ്റത്തിൽ നിന്നുള്ള പ്രധാന മാറ്റം ഉപയോക്താവിന്റെ ഹിസ്റ്ററി എങ്ങനെ മോഡലിലേക്ക് നൽകുന്നു എന്നതിലാണ്. വാച്ച് സെഷനുകളെ ഡെൻസ് വെക്റ്ററുകളായി (dense vectors) മാറ്റുന്നതിന് പകരം, GenRec ഓരോ ഇടപെടലിനെയും—പ്ലേ ഡ്യൂറേഷൻ, തംബ്‌സ്-അപ്പ് അല്ലെങ്കിൽ തംബ്‌സ്-ഡൗൺ, നേരത്തെയുള്ള നിർത്തൽ—ലളിതമായ ഇംഗ്ലീഷ് വാക്യങ്ങളാക്കി മാറ്റുന്നു. തുടർന്ന് മോഡൽ ആ സെഷനെ ഒരു ചെറിയ സംഭാഷണം പോലെ വായിക്കുന്നു, ഇത് പ്രത്യേക ഫീച്ചർ എൻജിനീയറിംഗിന്റെ സഹായമില്ലാതെ തന്നെ സംഗീതം അല്ലെങ്കിൽ മൂഡ് എന്നിവയിലുണ്ടാകുന്ന സൂക്ഷ്മമായ മാറ്റങ്ങൾ തിരിച്ചറിയാൻ സഹായിക്കുന്നു.

പ്രകടനവും കാര്യക്ഷമതയും വർദ്ധിപ്പിക്കുന്നു

നെറ്റ്ഫ്ലിക്സ് ട്രാഫിക്കിന്റെ 10% ഭാഗം GenRec-ന് നൽകിക്കൊണ്ടുള്ള നാലാഴ്ചത്തെ പരീക്ഷണത്തിൽ, രണ്ട് വിഭാഗങ്ങളിലായി గణものീയമായ വർദ്ധനവ് രേഖപ്പെടുത്തി:

  • ഹ്രസ്വകാല എൻഗേജ്‌മെന്റ് (Short-term engagement) – ദൈനംദിന റെക്കമെൻഡേഷനുകളെ സ്വാധീനിക്കുന്ന പ്രൈമറി ക്ലിക്ക്-ത്രൂ (click-through), വാച്ച്-ടൈം സിഗ്നലുകളിൽ 0.115% വർദ്ധനവ്.
  • ദീർഘകാല കോർ മെട്രിക്സ് (Long-term core metrics) – ബിസിനസ്സിന് ഏറ്റവും പ്രധാനപ്പെട്ട സബ്‌സ്‌ക്രൈബർ റിറ്റൻഷൻ (subscriber-retention), മൊത്തത്തിലുള്ള സംതൃപ്തി സ്കോറുകളിൽ 0.006% വർദ്ധനവ്.

ഓഫ്‌ലൈൻ പരിശോധനയിൽ, നിലവിലുള്ള സിസ്റ്റത്തെ അപേക്ഷിച്ച് റാങ്കിംഗ് ഗുണനിലവാരത്തിൽ 1.6% പുരോഗതിയുണ്ടായി. ഇതിനേക്കാൾ ശ്രദ്ധേയമായത് ഡാറ്റാ കാര്യക്ഷമതയാണ്: പരമ്പരാഗത പൈപ്പ്‌ലൈനിന് ലഭിക്കുന്ന ഡാറ്റയുടെ ഏകദേശം 1/40 ഭാഗം മാത്രം ഉപയോഗിച്ചുകൊണ്ട് ഇതേ പ്രകടനം കൈവരിക്കാൻ രണ്ടാമത്തെ പരിശീലന ഘട്ടത്തിന് സാധിച്ചു.

കമ്പ്യൂട്ടിംഗ് ചിലവ് നിയന്ത്രിക്കുന്നതിനായി, നെറ്റ്ഫ്ലിക്സ് vLLM ഉപയോഗിക്കുന്നു. ഇത് ടെക്സ്റ്റ് ജനറേറ്റ് ചെയ്യുന്നതിന് പകരം ഓരോ കാൻഡിഡേറ്റിനും ഒറ്റ പാസ്സിലൂടെ സ്കോർ നൽകുന്ന ഒരു സർവിംഗ് സ്റ്റാക്ക് ആണ്. അനാവശ്യ ടോക്കണുകൾ ഒഴിവാക്കാനും ലേറ്റൻസി (latency) കുറയ്ക്കാനും ഉയർന്ന സിഗ്നലുകളുള്ള ഇവന്റുകൾ മാത്രം മോഡലിന്റെ കോൺടെക്സ്റ്റ് വിൻഡോയിൽ ഉൾക്കൊള്ളുന്ന രീതിയിൽ സിസ്റ്റം കർശനമായ ഫിൽട്ടറിംഗ് ഉപയോഗിക്കുന്നു.

"ഫീച്ചറുകളിൽ" നിന്ന് "കോൺടെക്സ്റ്റിലേക്ക്" മാറുമ്പോൾ സംഭവിക്കുന്നത് എന്ത്?

"ഹാൻഡ്-ക്രാഫ്റ്റഡ് ഫീച്ചറുകൾക്ക്" പകരം "കോൺടെക്സ്റ്റ് എൻജിനീയറിംഗ്" (context engineering) വരുന്ന ഒരു വലിയ മാറ്റത്തിന്റെ ഭാഗമാണ് GenRec. ഓരോ റെക്കമെൻഡേഷൻ ടാസ്കിനും പ്രത്യേക ആർക്കിടെക്ചർ രൂപകൽപ്പന ചെയ്യുന്നതിന് പകരം, ഏത് സിഗ്നലുകൾ ടെക്സ്റ്റ് പ്രോംപ്റ്റിൽ ഉൾപ്പെടുത്തണമെന്ന് എഞ്ചിനീയർമാർ തീരുമാനിക്കുന്നു, തുടർന്ന് ലാംഗ്വേജ് മോഡൽ അവ വിശകലനം ചെയ്യുന്നു. ഈ രീതി പുതിയ തരം ഉള്ളടക്കങ്ങൾ വേഗത്തിൽ ഉൾപ്പെടുത്താൻ സഹായിക്കുന്നു: ഒരു പോഡ്‌കാസ്റ്റ് എപ്പിസോഡോ അല്ലെങ്കിൽ ലൈവ്-സ്ട്രീം ചെയ്ത ഗെയിമോ ഒരു വാക്യത്തിലൂടെ വിവരിക്കാനും ഉടൻ തന്നെ റെക്കമെൻഡേഷൻ വിഭാഗത്തിൽ ഉൾപ്പെടുത്താനും സാധിക്കും, ഇത് മാസങ്ങളോളം നീണ്ടുനിൽക്കുന്ന ഫീച്ചർ നിർവ്വചന പ്രക്രിയ ഒഴിവാക്കുന്നു.

ബാക്കിയുള്ള വെല്ലുവിളികൾ

LLM അധിഷ്ഠിത റെക്കമെൻഡറുകൾ എല്ലാ പ്രശ്നങ്ങൾക്കും പരിഹാരമല്ല (silver bullet). ജനപ്രിയമായവയ്ക്ക് അമിത പ്രാധാന്യം നൽകാനുള്ള ഇവയുടെ പ്രവണത ഇപ്പോഴും കാറ്റലോഗിൽ പക്ഷപാതം ഉണ്ടാക്കുന്നുണ്ട്, കൂടാതെ ശക്തമായ GPUs ആവശ്യപ്പെടുന്നത് പ്രവർത്തനച്ചെലവ് വർദ്ധിപ്പിക്കുന്നു. vLLM-ഉം കർശനമായ ഫിൽട്ടറിംഗും ഉണ്ടെങ്കിൽ പോലും, നെറ്റ്ഫ്ലിക്സിന്റെ വലിപ്പത്തിൽ ഒരു ലാർജ് ലാംഗ്വേജ് മോഡൽ പ്രവർത്തിപ്പിക്കുന്നത് ലേറ്റൻസി ലക്ഷ്യങ്ങൾ കൈവരിക്കുന്നതിന് കൃത്യമായ എഞ്ചിനീയറിംഗ് ആവശ്യപ്പെടുന്നു.