നിങ്ങളുടെ LLM ഗാർഡ്റെയിൽ ഇംഗ്ലീഷിലാണ് സംസാരിക്കുന്നത്. നിങ്ങളുടെ അറ്റാക്കർ അങ്ങനെയല്ല.
എന്റെ സ്വന്തം സിസ്റ്റത്തെ ആക്രമിച്ചുകൊണ്ടാണ് ഞാൻ ഇത് കഠിനമായ അനുഭവത്തിലൂടെ പഠിച്ചത്.
LLM-ലേക്ക് പ്രോംപ്റ്റുകൾ എത്തുന്നതിന് മുമ്പ് അവ പരിശോധിക്കുന്ന FIE എന്ന ഓപ്പൺ സോഴ്സ് എൻജിൻ ഞാൻ പരിപാലിക്കുന്നു. ഇംഗ്ലീഷിലുള്ള "Ignore all previous instructions" എന്ന വാചകത്തെ എന്റെ സിസ്റ്റം 82% ആത്മവിശ്വാസത്തോടെ തടയുന്നു.
പിന്നീട് ഞാൻ അതേ വാചകം ഹിന്ദിയിൽ പരീക്ഷിച്ചു. അത് എന്റെ സുരക്ഷാ സംവിധാനങ്ങളെ എളുപ്പത്തിൽ മറികടന്നു.
സുരക്ഷാ പരിശീലനം (Safety training) ഇംഗ്ലീഷ് ഡാറ്റയെ വളരെയധികം ആശ്രയിക്കുന്നു. കുറഞ്ഞ വിഭവങ്ങളുള്ള ഭാഷകൾ (Low-resource languages) സുരക്ഷ മറികടക്കാനുള്ള അപ്രതീക്ഷിത മാർഗമായി മാറുന്നു. ഇംഗ്ലീഷിൽ പരാജയപ്പെടുന്ന അതേ ദുരുദ്ദേശ്യങ്ങൾ ബംഗാളി, സ്വാഹിലി അല്ലെങ്കിൽ ജാവനീസ് ഭാഷകളിൽ ഫലപ്രദമായി പ്രവർത്തിക്കുന്നു.
ഇത് പരിഹരിക്കുന്നതിനായി ഞാൻ മൂന്ന് ആഴ്ചകൾ ചെലവഴിച്ചു. ഞാൻ എങ്ങനെയാണ് ഒരു മൂന്ന് തലങ്ങളുള്ള (three-tier) പ്രതിരോധ സംവിധാനം നിർമ്മിച്ചതെന്ന് താഴെ നൽകുന്നു:
Tier 1: സ്ക്രിപ്റ്റ് അനോമലി സ്കോറിംഗ് (Script anomaly scoring). പ്രോംപ്റ്റിലെ യൂണിക്കോഡ് (Unicode) ഞാൻ സ്കോർ ചെയ്യുന്നു. ഒരു ഇംഗ്ലീഷ് ആപ്പിൽ പെട്ടെന്ന് ദേവനാഗരി അല്ലെങ്കിൽ അറബിക് ലിപിയിലേക്ക് മാറുന്നത് ഒരു സൂചനയാണ്. ഈ രീതി വേഗതയുള്ളതും ചിലവ് കുറഞ്ഞതുമാണ്.
Tier 2: സ്റ്റാറ്റിക് ഫ്രേസ് മാച്ചിംഗ് (Static phrase matching). ഞാൻ എന്റെ പട്ടികയിൽ 14 ഭാഷകൾ കൂടി ചേർത്തു. ഹിന്ദി, ജാപ്പനീസ്, കൊറിയൻ, ടർക്കിഷ്, ഡച്ച്, പോളിഷ് ഭാഷകളിലുള്ള ഇൻജക്ഷൻ ഫ്രേസുകൾ (injection phrases) ഞാൻ നേരിട്ട് തയ്യാറാക്കി. ഇത് അധിക ചിലവില്ലാതെ സാധാരണ ആക്രമണങ്ങളെ കണ്ടെത്താൻ സഹായിക്കുന്നു.
Tier 3: ട്രാൻസ്ലേറ്റ്-ദെൻ-ഡിറ്റക്ട് (Translate-then-detect). ഇതാണ് ഏറ്റവും പ്രധാനപ്പെട്ട ഭാഗം. ഒരു പ്രോംപ്റ്റ് ആദ്യ രണ്ട് തലങ്ങളെ മറികടന്നാൽ, ഞാൻ ആ ഭാഷ തിരിച്ചറിഞ്ഞ് അത് ഇംഗ്ലീഷിലേക്ക് വിവർത്തനം ചെയ്യുന്നു. തുടർന്ന് ആ വിവർത്തനത്തിന്മേൽ എന്റെ നിലവിലുള്ള ക്ലാസിഫയർ (classifier) പ്രവർത്തിപ്പിക്കുന്നു. ഒരു അറ്റാക്കർക്ക് ഭാഷ മാറ്റാൻ കഴിഞ്ഞേക്കാം, പക്ഷേ അവരുടെ ഉദ്ദേശ്യം മറച്ചുവെക്കാൻ കഴിയില്ല.
ഇത് പരിശീലിപ്പിക്കുന്നതിനായി ഞാൻ Meta-യുടെ NLLB-200 മോഡൽ ഉപയോഗിച്ചു. ഞാൻ 1,352 അറ്റാക്ക് പ്രോംപ്റ്റുകളെ 10 ഭാഷകളിലേക്ക് വിവർത്തനം ചെയ്തു. ഇത് 13,528 പുതിയ ട്രെയിനിംഗ് ഉദാഹരണങ്ങൾ സൃഷ്ടിച്ചു. ഈ പ്രക്രിയ മുഴുവൻ ഞാൻ ഒരു $300 GPU-വിൽ ലോക്കലായി തന്നെ പ്രവർത്തിപ്പിച്ചു.
JailbreakBench-ലെ ഫലങ്ങൾ: • ആകെ 93.6% റീകോൾ (recall). • JailbreakChat-ൽ 100%. • GCG suffixes-ൽ 90%. • PAIR-ൽ 90.2%.
ഞാൻ ഫാൽസ് പോസിറ്റീവുകളും (false positives) ട്രാക്ക് ചെയ്യുന്നു. വ്യാജമായ ഒരു മികച്ച കണക്ക് കാണിക്കുന്നതിനേക്കാൾ, യഥാർത്ഥമായ 27% ഫാൽസ് പോസിറ്റീവ് നിരക്ക് റിപ്പോർട്ട് ചെയ്യാനാണ് ഞാൻ ആഗ്രഹിക്കുന്നത്. സുരക്ഷാ സംവിധാനങ്ങൾ നിർമ്മിക്കുമ്പോൾ സത്യസന്ധത അത്യാവശ്യമാണ്.
സ്രോതസ്സുകൾ: Deng et al. (2023). Multilingual Jailbreak Challenges in LLMs. arXiv:2310.06474 NLLB Team (2022). No Language Left Behind. arXiv:2207.04672 Röttger et al. (2023). XSTest. arXiv:2308.01263 Mazeika et al. (2024). HarmBench. arXiv:2402.04249 Chao et al. (2024). JailbreakBench. arXiv:2404.01318
Full post: https://dev.to/ayush_singh_9b0d83152be5b/your-llm-guardrail-speaks-english-your-attacker-doesnt-4bf2
Optional learning community: https://t.me/GyaanSetuAi