പ്രൊഡക്ഷനിൽ LLM ഔട്ട്പുട്ട് ഗുണനിലവാരം വിലയിരുത്തുന്നു
2023 മാർച്ചിൽ, GPT-4 97.6% കൃത്യതയോടെ അഭാജ്യ സംഖ്യകൾ (prime numbers) തിരിച്ചറിഞ്ഞു. എന്നാൽ 2023 ജൂണായപ്പോഴേക്കും അതേ മോഡലിന്റെ കൃത്യത 2.4% ആയി കുറഞ്ഞു. ആരും കോഡ് മാറ്റുന്നില്ല. ആരും പ്രോംപ്റ്റ് മാറ്റുന്നില്ല. മോഡൽ വെറുതെ മാറുകയായിരുന്നു.
പ്രൊഡക്ഷനിൽ ഉപയോഗിക്കുന്ന LLM-കളുടെ പ്രധാന പ്രശ്നം ഇതാണ്. നിങ്ങൾക്ക് മോഡലിനെ നിയന്ത്രിക്കാൻ കഴിയില്ല. അത് മാറിക്കൊണ്ടിരിക്കുന്ന ഒരു ഡിപെൻഡൻസിയാണ് (dependency). നിങ്ങൾ അത് അളക്കുന്നില്ലെങ്കിൽ, അത് തകരാറിലാണെന്ന് നിങ്ങളുടെ ഉപയോക്താക്കൾ നിങ്ങളെ അറിയിക്കും.
വെറും തോന്നലുകളിലോ "എനിക്ക് ഇത് ശരിയായി തോന്നുന്നു" എന്ന രീതിയിലോ നിങ്ങൾക്ക് വിശ്വസിക്കാനാവില്ല. നിങ്ങൾക്ക് ആവർത്തിക്കാവുന്ന കൃത്യമായ സൂചനകൾ (repeatable signals) ആവശ്യമാണ്.
പരമ്പരാഗത സോഫ്റ്റ്വെയറുകൾ ഡിറ്റർമിനിസ്റ്റിക് (deterministic) ആണ്. ഒരേ ഇൻപുട്ട് നൽകിയാൽ ഒരേ ഔട്ട്പുട്ട് തന്നെ ലഭിക്കും. എന്നാൽ LLM-കൾ ഈ നിയമം ലംഘിക്കുന്നു. അവ നോൺ-ഡിറ്റർമിനിസ്റ്റിക് (non-deterministic) ആണ്, കൂടാതെ അവയിലെ "ശരി" എന്നത് പലപ്പോഴും അവ്യക്തവുമാണ്.
ഇത് കൈകാര്യം ചെയ്യാൻ നിങ്ങൾക്ക് മൂന്ന് തലത്തിലുള്ള മൂല്യനിർണ്ണയം (evaluation) ആവശ്യമാണ്:
- ഓഫ്ലൈൻ ഇവാലുവേഷൻസ് (Offline evals): മാറ്റങ്ങൾ വരുത്തുമ്പോൾ റിഗ്രഷനുകൾ (regressions) കണ്ടെത്താൻ ഒരു നിശ്ചിത ടെസ്റ്റ് സെറ്റ് ഉപയോഗിക്കുക.
- റഫറൻസ് ഇല്ലാത്ത പരിശോധനകൾ (Reference-free checks): ശരിയായ ഉത്തരം ലഭ്യമല്ലാത്ത സാഹചര്യങ്ങളിൽ ഹാളുസിനേഷൻ ഡിറ്റക്ഷൻ (hallucination detection) പോലുള്ള സൂചനകൾ ഉപയോഗിക്കുക.
- പ്രൊഡക്ഷൻ മോണിറ്ററിംഗ് (Production monitoring): മാറ്റങ്ങളും (drift) ഗുണനിലവാരത്തിലുള്ള കുറവും കണ്ടെത്താൻ യഥാർത്ഥ ട്രാഫിക് നിരീക്ഷിക്കുക.
ഇതിന്റെ അടിസ്ഥാനം ഒരു ഗോൾഡൻ ഡാറ്റാസെറ്റ് (Golden Dataset) ആണ്. ക്രമരഹിതമായ സാമ്പിളുകൾ ഉപയോഗിക്കരുത്. കൃത്യമായി തയ്യാറാക്കിയ കഠിനമായ കേസുകൾ ഉപയോഗിക്കുക. ശൂന്യമായ ഇൻപുട്ടുകൾ, വിചിത്രമായ എഡ്ജ് കേസുകൾ (edge cases), അഡ്വേഴ്സേറിയൽ പ്രോംപ്റ്റുകൾ (adversarial prompts) എന്നിവ ഉപയോഗിക്കുക. 8,000 ക്രമരഹിതമായ ഉദാഹരണങ്ങളേക്കാൾ മികച്ചതാണ് 80 കൃത്യമായ ഉദാഹരണങ്ങൾ.
ഒരു LLM-നെ ജഡ്ജിയായി ഉപയോഗിക്കുമ്പോൾ, ഈ പക്ഷപാതങ്ങൾ (biases) ശ്രദ്ധിക്കുക:
- പൊസിഷൻ ബയാസ് (Position bias): ജഡ്ജുകൾ പലപ്പോഴും ആദ്യം കാണുന്ന ഉത്തരത്തിന് മുൻഗണന നൽകുന്നു. രണ്ട് ക്രമങ്ങളിലും താരതമ്യം ചെയ്ത് ഇത് പരിഹരിക്കാം.
- വെർബോസിറ്റി ബയാസ് (Verbosity bias): ഉത്തരങ്ങൾ വ്യക്തമല്ലെങ്കിൽ പോലും നീളമുള്ള ഉത്തരങ്ങൾക്ക് ജഡ്ജുകൾ കൂടുതൽ മാർക്ക് നൽകുന്നു.
- സെൽഫ്-എൻഹാൻസ്മെന്റ് ബയാസ് (Self-enhancement bias): മോഡലുകൾ അവയുടെ തന്നെ കുടുംബത്തിൽപ്പെട്ട ടെക്സ്റ്റുകൾക്ക് മുൻഗണന നൽകുന്നു. ഔട്ട്പുട്ടുകൾ വിലയിരുത്താൻ വ്യത്യസ്ത മോഡൽ ഫാമിലികൾ ഉപയോഗിക്കുക.
തത്സമയ നിരീക്ഷണത്തിനായി (real-time monitoring), താഴെ പറയുന്നവ പരിശോധിക്കാൻ RAG Triad ഉപയോഗിക്കുക:
- ഫെയ്ത്ത്ഫുൾനെസ് (Faithfulness): ഉത്തരം നൽകിയിട്ടുള്ള കോൺടെക്സ്റ്റിനോട് (context) ചേർന്നുനിൽക്കുന്നുണ്ടോ?
- ആൻസർ റെലവൻസ് (Answer relevance): അത് ചോദ്യത്തിന് കൃത്യമായ മറുപടി നൽകുന്നുണ്ടോ?
- കോൺടെക്സ്റ്റ് റെലവൻസ് (Context relevance): സിസ്റ്റം ശരിയായ ഡോക്യുമെന്റുകൾ കണ്ടെത്തിയോ?
മോഡൽ ഗുണനിലവാരത്തെ ഒരു സ്ഥിരമായ ഗുണമായി കാണുന്നത് നിർത്തുക. അതിനെ ലേറ്റൻസി (latency) അല്ലെങ്കിൽ എറർ റേറ്റുകൾ (error rates) പോലെ കാണുക. അത് മാറിക്കൊണ്ടിരിക്കും. അത് എപ്പോൾ മോശമാകുന്നു എന്ന് തിരിച്ചറിയുക എന്നതാണ് നിങ്ങളുടെ ജോലി.
ചെറിയ രീതിയിൽ തുടങ്ങുക. 20 ഗോൾഡൻ ഉദാഹരണങ്ങൾ എഴുതുക. നിങ്ങളുടെ ഡെപ്ലോയ്മെന്റുകൾ നിയന്ത്രിക്കാൻ അവ ഉപയോഗിക്കുക. പിന്നീട് ലളിതമായ പ്രൊഡക്ഷൻ ഹ്യൂറിസ്റ്റിക്സ് (production heuristics) ചേർക്കാം.
സമാധാനമായി ഉറങ്ങുന്ന ടീമുകൾ ഏറ്റവും ബുദ്ധിയുള്ള മോഡലുകൾ ഉപയോഗിക്കുന്നവരാണെന്നല്ല. മറിച്ച്, തങ്ങളുടെ മോഡലിന്റെ ബുദ്ധി കുറഞ്ഞാൽ ഒരു മണിക്കൂറിനുള്ളിൽ അത് തിരിച്ചറിയാൻ കഴിയുന്നവരാണ് അവർ.
Source: https://dev.to/nazar_boyko/evaluating-llm-output-quality-in-production-39an
Optional learning community: https://t.me/GyaanSetuAi
