AI ഏജന്റ് റോളബാക്ക് പ്ലാൻ: ഉപയോക്താക്കളുടെ വിശ്വാസം നഷ്ടപ്പെടുന്നതിന് മുമ്പ് തെറ്റായ പ്രവൃത്തികൾ തിരുത്തുക

വിശ്വസനീയമായ ഒരു AI ഏജന്റ് എപ്പോഴും തികഞ്ഞതാകണമെന്നില്ല. എന്നാൽ എപ്പോൾ നിർത്തണം, അതിന്റെ തെറ്റ് എങ്ങനെ വിശദീകരിക്കണം, എങ്ങനെ തിരിച്ചുപിടിക്കണം (recover) എന്നിവ അതിന് അറിയണം.

നിങ്ങളുടെ ഏജന്റ് തെറ്റായ ഒരു CRM ഫീൽഡ് അപ്‌ഡേറ്റ് ചെയ്യുകയോ അല്ലെങ്കിൽ ഒരേ പേയ്‌മെന്റ് തന്നെ വീണ്ടും അയക്കുകയോ ചെയ്താൽ, വെറുമൊരു 'retry' കൊണ്ട് ആ പ്രശ്നം പരിഹരിക്കാൻ കഴിയില്ല. യഥാർത്ഥ പ്രശ്നങ്ങൾ നേരിടുന്നതിന് മുമ്പ് തന്നെ നിങ്ങൾക്ക് ഒരു റോളബാക്ക് പ്ലാൻ ആവശ്യമാണ്.

ഏജന്റുകൾ ചാറ്റിംഗിൽ നിന്ന് യഥാർത്ഥ ജോലികളിലേക്ക് മാറുമ്പോൾ, അവ ഡാറ്റയിൽ മാറ്റങ്ങൾ വരുത്തുന്നു (mutate state). ഇത് റോളബാക്കിനെ വെറുമൊരു ബാക്കെൻഡ് ടാസ്ക് എന്നതിലുപരി ഒരു പ്രോഡക്റ്റ് ഫീച്ചർ ആക്കി മാറ്റുന്നു.

സാധാരണയായി സംഭവിക്കാവുന്ന പിഴവുകൾ:

  • ഏജന്റ് തെറ്റായ റെക്കോർഡ് ഐഡി ഉപയോഗിക്കുന്നു.
  • ഒരു 'retry' ഒരു പ്രവൃത്തി രണ്ടുതവണ ആവർത്തിക്കുന്നു.
  • മോഡൽ മാറ്റുന്നത് ഒരു ടൂൾ പ്രവർത്തിക്കുന്ന രീതിയെ മാറ്റുന്നു.
  • പഴയ മെമ്മറിയോടെ ഒരു വർക്ക്ഫ്ലോ വീണ്ടും തുടങ്ങുന്നു.
  • ഒരു ഭാഗികമായ പ്രക്രിയ ഡാറ്റാ വൈരുദ്ധ്യങ്ങൾക്ക് (inconsistent) കാരണമാകുന്നു.

ഒരു റിക്കവറി ലെയർ എങ്ങനെ നിർമ്മിക്കാം:

  1. ഒരു ആക്ഷൻ ലെഡ്ജർ (Action Ledger) ഉപയോഗിക്കുക ലോഗുകളെ (logs) മാത്രം ആശ്രയിക്കരുത്. ഓരോ സ്റ്റേറ്റ് മാറ്റവും രേഖപ്പെടുത്തുന്ന ഒരു ലെഡ്ജർ നിർമ്മിക്കുക. ഓരോ ടൂൾ കോളും നടപ്പിലാക്കുന്നതിന് മുമ്പും ശേഷവും അതിൽ ഒരു എൻട്രി ഉണ്ടായിരിക്കണം. റിക്കവറിക്കുള്ള നിങ്ങളുടെ പ്രധാന ഉറവിടം (source of truth) ഇതായിരിക്കും.

  2. നിങ്ങളുടെ ആക്ഷനുകളെ തരംതിരിക്കുക എല്ലാ ആക്ഷനുകളും ഒരേപോലെയല്ല.

  • Read-only: റോളബാക്ക് ആവശ്യമില്ല.
  • Internal updates: ഒരു സ്നാപ്പ്ഷറ്റിൽ നിന്ന് പഴയ മൂല്യം വീണ്ടെടുക്കുക.
  • External reversible: ആ ഇവന്റ് ഡിലീറ്റ് ചെയ്യുകയോ സ്റ്റാറ്റസ് അപ്‌ഡേറ്റ് ചെയ്യുകയോ ചെയ്യുക.
  • External irreversible: യഥാർത്ഥമായ ഒരു 'undo' എന്നതിന് പകരം കോമ്പൻസേഷൻ (compensation) ഉപയോഗിക്കുക. ഇമെയിലുകൾക്കോ പേയ്‌മെന്റുകൾക്കോ അവ "അൺസെൻഡ്" ചെയ്യാൻ കഴിയില്ല. പകരം ഒരു തിരുത്തൽ സന്ദേശമോ റീഫണ്ടോ നൽകണം.
  1. ഐഡെംപോട്ടൻസി (Idempotency) ഉറപ്പാക്കുക മോഡൽ ഐഡെംപോട്ടൻസി ഉറപ്പാക്കുന്നില്ല. നിങ്ങളുടെ ടൂൾ റൺടൈം അത് നിർബന്ധമായും ചെയ്യണം. ഒരു ഏജന്റ് ഒരു ടാസ്ക് വീണ്ടും ചെയ്യുമ്പോൾ (retry), അത് ആവർത്തിച്ചുള്ള സൈഡ് ഇഫക്റ്റുകൾ ഉണ്ടാക്കുന്നില്ലെന്ന് ഉറപ്പാക്കാൻ ഐഡെംപോട്ടൻസി കീകൾ ഉപയോഗിക്കുക.

  2. സാഗ പാറ്റേൺ (Saga Pattern) ഉപയോഗിക്കുക നീളമേറിയ വർക്ക്ഫ്ലോകൾക്കായി, ഓരോ മുന്നോട്ടുള്ള ആക്ഷനും ഒരു കോമ്പൻസേറ്റിംഗ് ആക്ഷൻ ആവശ്യമാണ്.

  • ഒരു ടാസ്ക് ക്രിയേറ്റ് ചെയ്തോ? അതിന്റെ കോമ്പൻസേഷൻ അത് ഡിലീറ്റ് ചെയ്യുകയോ ക്യാൻസൽ ചെയ്യുകയോ ചെയ്യുക എന്നതാണ്.
  • ഒരു ഫീൽഡ് അപ്‌ഡേറ്റ് ചെയ്തോ? പഴയ മൂല്യം വീണ്ടെടുക്കുക എന്നതാണ് അതിന്റെ കോമ്പൻസേഷൻ.
  • ഒരു ഇമെയിൽ അയച്ചോ? ഒരു തിരുത്തൽ സന്ദേശം അയക്കുക എന്നതാണ് അതിന്റെ കോമ്പൻസേഷൻ.
  1. ചെക്ക്പോയിന്റുകൾ (Checkpoints) നടപ്പിലാക്കുക ഒരു ക്രാഷിന് ശേഷം "നമ്മൾ എവിടെയായിരുന്നു എന്ന് കണ്ടെത്താൻ" മോഡലിനോട് ആവശ്യപ്പെടുന്നത് നിർത്തുക. നിലവിലെ സ്റ്റേറ്റ്, പൂർത്തിയാക്കിയ ആക്ഷനുകൾ, പെൻഡിംഗ് ടാസ്ക്കുകൾ എന്നിവ സൂക്ഷിക്കാൻ ചെക്ക്പോയിന്റുകൾ ഉപയോഗിക്കുക. ജോലി തുടരാൻ സിസ്റ്റം ഈ ചെക്ക്പോയിന്റ് ലോഡ് ചെയ്യണം.

  2. ഒരു റിക്കവറി ക്യൂ (Recovery Queue) നിർമ്മിക്കുക ഒരു വെരിഫിക്കേഷൻ സ്റ്റെപ്പ് പരാജയപ്പെടുമ്പോൾ, ആ ടാസ്ക് ഒരു റിക്കവറി ക്യൂവിലേക്ക് മാറ്റുക. ഇത് ടാസ്ക് വീണ്ടും തുടങ്ങാനോ, കോമ്പൻസേറ്റ് ചെയ്യാനോ അല്ലെങ്കിൽ അവസാനിപ്പിക്കാനോ നിങ്ങളെ അനുവദിക്കുന്നു. ഉയർന്ന റിസ്കുള്ള പിഴവുകൾക്ക് എപ്പോഴും ഒരു മനുഷ്യന്റെ അനുമതി തേടുക.

വ്യക്തമായ റിക്കവറിയിലൂടെയാണ് വിശ്വാസം കെട്ടിപ്പടുക്കുന്നത്. ഒരു ഏജന്റ് തെറ്റ് ചെയ്യുമ്പോൾ അവ്യക്തമായ ഭാഷ ഉപയോഗിക്കരുത്. എന്താണ് മാറിയതെന്നും, അത് എന്തുകൊണ്ട് സംഭവിച്ചതെന്നും, നിങ്ങൾ അത് എങ്ങനെ പരിഹരിച്ചുവെന്നും ഉപയോക്താവിനോട് കൃത്യമായി പറയുക.

ആദ്യത്തെ പ്രശ്നം ഉണ്ടാകുന്നതിന് മുമ്പ് തന്നെ നിങ്ങളുടെ റോളബാക്ക് പ്ലാൻ തയ്യാറാക്കുക.

Source: https://dev.to/jackm-singularity/ai-agent-rollback-plan-undo-bad-actions-before-users-lose-trust-4927

Optional learning community: https://t.me/GyaanSetuAi