ജാപ്പനീസ് ലാബുകൾ എങ്ങനെ മികച്ച RAG സിസ്റ്റങ്ങൾ നിർമ്മിക്കുന്നു
നിങ്ങളുടെ വെക്റ്റർ ഡാറ്റാബേസ് പ്രസക്തമായ ഭാഗങ്ങൾ (chunks) നൽകുന്നുണ്ടാകാം. നിങ്ങളുടെ എംബെഡിംഗ് മോഡൽ ബെഞ്ച്മാർക്കുകളിൽ ഉയർന്ന സ്കോർ നേടുന്നുണ്ടാകാം. എന്നാൽ ഒരു ഉപയോക്താവ് സങ്കീർണ്ണമായ ഒരു ചോദ്യം ചോദിക്കുമ്പോൾ, സിസ്റ്റം ഉപയോഗശൂന്യമായ ഒരു മറുപടിയാണ് നൽകുന്നത്.
ഇത് ഒരു റിട്രീവൽ ആർക്കിടെക്ചർ പരാജയമാണ് (retrieval architecture failure). നിങ്ങളുടെ LLM ട്യൂൺ ചെയ്യുന്നത് കൊണ്ട് മാത്രം ഇത് പരിഹരിക്കാൻ കഴിയില്ല.
ഒരു ജാപ്പനീസ് ഗവേഷണ സംഘം ഇതിനൊരു പരിഹാരം കണ്ടെത്തി. അവർ ഒരു നോളജ് ഗ്രാഫ് (knowledge graph) RAG സിസ്റ്റം നിർമ്മിച്ചു. ഈ രീതി ശാസ്ത്രീയമായ ജോലികളിലെ കൃത്യത 90% വരെ വർദ്ധിപ്പിച്ചു.
സാധാരണ RAG-ലെ പ്രശ്നം സെമാന്റിക് സമാനതയാണ് (semantic similarity). പ്രോട്ടീൻ ഫോൾഡിംഗിനെക്കുറിച്ചുള്ള ഒരു ഭാഗം CRISPR-നെക്കുറിച്ചുള്ള ഒരു ചോദ്യത്തോട് സാമ്യമുള്ളതായി തോന്നാം. എന്നാൽ സാമ്യം എന്നത് പ്രസക്തി (relevance) എന്നല്ല അർത്ഥമാക്കുന്നത്.
ജാപ്പനീസ് സംഘം വെറും ടെക്സ്റ്റ് ചങ്കുകൾക്ക് (text chunks) പകരം എൻ്റിറ്റി റിലേഷൻഷിപ്പുകൾ (entity relationships) ഉപയോഗിക്കുന്നു. അവർ ഇവ വേർതിരിച്ചെടുക്കുന്നു:
- പ്രോട്ടീനുകൾ അല്ലെങ്കിൽ ഗവേഷകർ പോലുള്ള എൻ്റിറ്റികൾ (Entities)
inhibitsഅല്ലെങ്കിൽcitesപോലുള്ള ബന്ധങ്ങൾ (Relationships)- കോൺഫിഡൻസ് സ്കോറുകൾ പോലുള്ള ഗുണവിശേഷങ്ങൾ (Attributes)
അവർ ഒരു രണ്ട് ഘട്ട പ്രക്രിയയാണ് ഉപയോഗിക്കുന്നത്. ഒന്നാമതായി, അവർ പ്രസക്തമായ സബ്ഗ്രാഫുകൾ (subgraphs) തിരിച്ചറിയുന്നു. രണ്ടാമതായി, ആ എൻ്റിറ്റികളുമായി ബന്ധപ്പെട്ട ടെക്സ്റ്റ് അവർ റിട്രീവ് ചെയ്യുന്നു. ഇത് സെമാന്റിക് ഡ്രിഫ്റ്റ് (semantic drift) തടയുന്നു. നിങ്ങൾ വെറും സമാനമായ വാക്കുകളല്ല, മറിച്ച് സന്ദർഭമാണ് (context) റിട്രീവ് ചെയ്യുന്നത്.
സാധാരണ RAG-നെ അപേക്ഷിച്ച് GraphRAG നിർമ്മിക്കുന്നത് കൂടുതൽ പ്രയാസകരമാണ്. നിങ്ങൾക്ക് ഇവ ആവശ്യമാണ്:
- എൻ്റിറ്റി എക്സ്ട്രാക്ഷൻ പൈപ്പ്ലൈനുകൾ (Entity extraction pipelines)
- റിലേഷൻഷിപ്പ് ക്ലാസിഫിക്കേഷൻ (Relationship classification)
- ഗ്രാഫ് സ്റ്റോറേജ് ഇൻഫ്രാസ്ട്രക്ചർ (Graph storage infrastructure)
- ഹൈബ്രിഡ് ക്വറി എഞ്ചിനുകൾ (Hybrid query engines)
ഏറ്റവും വലിയ വെല്ലുവിളി അതിന്റെ പരിപാലനമാണ് (maintenance). ഗ്രാഫുകൾ കൃത്യസമയത്ത് അപ്ഡേറ്റ് ചെയ്തില്ലെങ്കിൽ അവ കാലഹരണപ്പെട്ടേക്കാം. 2023-ൽ കഠിനമായ അനുഭവത്തിലൂടെയാണ് ഞാൻ ഇത് പഠിച്ചത്. ഉയർന്ന കൃത്യതയുള്ള ഒരു ലീഗൽ RAG സിസ്റ്റം ഞാൻ നിർമ്മിച്ചു. എന്നാൽ ഒരു അപ്ഡേറ്റ് സംവിധാനം (update mechanism) നിർമ്മിക്കാൻ എനിക്ക് കഴിഞ്ഞില്ല. ആറ് മാസത്തിന് ശേഷം, ഡാറ്റ കാലഹരണപ്പെട്ടു. കൃത്യത 94%-ൽ നിന്ന് 71%-ലേക്ക് കുറഞ്ഞു.
ഇത് ശരിയായ രീതിയിൽ എങ്ങനെ നിർമ്മിക്കാം:
- ഒരു എൻ്റിറ്റി ടാക്സോണമിയിലൂടെ (entity taxonomy) തുടങ്ങുക. 20 മുതൽ 30 വരെ പ്രധാനപ്പെട്ട തരങ്ങൾ തിരഞ്ഞെടുക്കുക.
- ആദ്യ ദിവസം മുതൽ ഹൈബ്രിഡ് റിട്രീവൽ (hybrid retrieval) ഉപയോഗിക്കുക. ബന്ധങ്ങൾക്കായി ഗ്രാഫുകളും വിഷയങ്ങൾക്കായി വെക്റ്ററുകളും ഉപയോഗിക്കുക.
- നിങ്ങളുടെ മെയിൻ്റനൻസ് പൈപ്പ്ലൈൻ ആദ്യം നിർമ്മിക്കുക. പുതിയ ഡോക്യുമെന്റുകൾ എങ്ങനെ ഗ്രാഫ് അപ്ഡേറ്റ് ചെയ്യുമെന്ന് ആസൂത്രണം ചെയ്യുക.
- റീസണിംഗ് ചെയിനുകൾ (reasoning chains) അളക്കുക. ഒരു ചോദ്യത്തിന് ഉത്തരം നൽകാൻ സിസ്റ്റം എത്ര ഘട്ടങ്ങൾ എടുക്കുന്നു എന്ന് നിരീക്ഷിക്കുക.
നിങ്ങൾ ശാസ്ത്രം, നിയമം അല്ലെങ്കിൽ വൈദ്യശാസ്ത്രം എന്നീ മേഖലകളിൽ ജോലി ചെയ്യുന്നുണ്ടെങ്കിൽ, ഇതിനായുള്ള പരിപാലന ചെലവ് ലാഭകരമാണ്. ലളിതമായ FAQ-കൾക്ക് സാധാരണ RAG മതിയാകും.
സ്വയം ഇങ്ങനെയൊന്ന് ചോദിച്ചു നോക്കൂ: നിങ്ങളുടെ ചോദ്യങ്ങളിൽ എത്ര ശതമാനം ബന്ധങ്ങളെക്കുറിച്ചാണ് (relationships) ചോദിക്കുന്നത്? നിങ്ങളുടെ ഉപയോക്താക്കളിൽ 40 ശതമാനത്തിലധികം ആളുകൾ കാര്യങ്ങൾ തമ്മിലുള്ള ബന്ധത്തെക്കുറിച്ച് ചോദിക്കുന്നുണ്ടെങ്കിൽ, നിങ്ങൾക്ക് ഒരു ഗ്രാഫ് ആവശ്യമാണ്.
Optional learning community: https://t.me/GyaanSetuAi