ഏജന്റിക് വർക്ക്ഫ്ലോകളുടെ (Agentic Workflows) 4 ഡിസൈൻ ഡൈമൻഷനുകൾ

ആളുകൾ പലപ്പോഴും AI ഏജന്റുകളെയും AI വർക്ക്ഫ്ലോകളെയും തമ്മിൽ മാറിപ്പോകാറുണ്ട്. ചിലർ പറയുന്നത് ടൂളുകൾ ഉപയോഗിക്കുന്ന ഏതൊരു LLM-ഉം ഒരു ഏജന്റാണെന്നാണ്. മറ്റുള്ളവർ പറയുന്നത് ഒരു ഏജന്റ് ദീർഘനേരം സ്വയം പ്രവർത്തിക്കണം എന്നാണ്. ഇത്തരം സംവാദങ്ങൾ മികച്ച സിസ്റ്റങ്ങൾ നിർമ്മിക്കാൻ നിങ്ങളെ സഹായിക്കില്ല.

ഒരു സിസ്റ്റം 'ഏജന്റിക്' ആണോ എന്ന് ചോദിക്കുന്നത് നിർത്തുക. പകരം, ഈ നാല് ഡിസൈൻ ഡൈമൻഷനുകൾ ശ്രദ്ധിക്കുക:

  1. അടുത്ത ഘട്ടം തീരുമാനിക്കുന്നത് ആരാണ്?
  • കോഡ്-ഡ്രിവൻ (Code-driven): കോഡ് ആണ് ക്രമം നിയന്ത്രിക്കുന്നത്. വ്യക്തമായ നിയമങ്ങളുള്ള ഉയർന്ന ഉത്തരവാദിത്തമുള്ള ജോലികൾക്കായി ഇത് ഉപയോഗിക്കുക.
  • മോഡൽ-ഡ്രിവൻ (Model-driven): LLM ആണ് ഘട്ടങ്ങൾ പ്ലാൻ ചെയ്യുന്നത്. പരിധിയില്ലാത്ത (open-ended) ജോലികൾക്കായി ഇത് ഉപയോഗിക്കുക.
  • ഹൈബ്രിഡ് (Hybrid): കോഡ് ഒരു ചട്ടക്കൂട് നിശ്ചയിക്കുകയും LLM ചെറിയ തീരുമാനങ്ങൾ എടുക്കുകയും ചെയ്യുന്നു. ഇതാണ് ഏറ്റവും പ്രായോഗികമായ മാർഗ്ഗം.
  1. പാത നിശ്ചിതമാണോ?
  • ഫിക്സഡ് (Fixed): ഘട്ടങ്ങൾ ഒരു നിശ്ചിത ക്രമത്തിൽ നടക്കുന്നു.
  • കണ്ടിഷണൽ (Conditional): ഫലങ്ങൾക്കനുസരിച്ച് സിസ്റ്റം ബ്രാഞ്ചുകളോ (branches) റീട്രൈകളോ (retries) ഉപയോഗിക്കുന്നു.
  • അഡാപ്റ്റീവ് (Adaptive): റൺടൈമിൽ പാത മാറുന്നു. ഗവേഷണത്തിനോ ഡീബഗ്ഗിംഗിനോ വേണ്ടി ഇത് ഉപയോഗിക്കുക.
  1. ഏജന്റുകൾ എങ്ങനെയാണ് ഒന്നിച്ച് പ്രവർത്തിക്കുന്നത്?
  • സിംഗിൾ ഏജന്റ് (Single Agent): ഒരു ഏജന്റ് ഒന്നിലധികം ടൂളുകൾ ഉപയോഗിക്കുന്നു. ഇത് ലളിതമാണ്, പക്ഷേ കോൺടെക്സ്റ്റ് (context) കുഴപ്പത്തിലായേക്കാം.
  • മാനേജർ-വർക്കർ (Manager-Worker): ഒരു ഏജന്റ് ജോലികളെ വിഭജിക്കുകയും മറ്റുള്ളവർക്ക് നൽകുകയും ചെയ്യുന്നു.
  • ഹാൻഡ്ഓഫ് (Handoff): ഒരു ഏജന്റ് നിയന്ത്രണം ഒരു സ്പെഷ്യലിസ്റ്റിന് കൈമാറുന്നു.
  • പിയർ (Peer): ഒരു കേന്ദ്ര നേതൃത്വമില്ലാതെ ഒന്നിലധികം ഏജന്റുകൾ സഹകരിക്കുന്നു. ഇത് ഡീബഗ് ചെയ്യാൻ ഏറ്റവും പ്രയാസമാണ്.
  1. മനുഷ്യർ എവിടെയാണ് ഇടപെടുന്നത്?
  • ഹ്യൂമൻ-ട്രിഗേർഡ് (Human-triggered): ഓരോ പ്രധാനപ്പെട്ട പ്രവൃത്തിക്കും നിങ്ങൾ അനുമതി നൽകണം.
  • ചെക്ക്പോയിന്റഡ് (Checkpointed): സിസ്റ്റം തനിയെ പ്രവർത്തിക്കുന്നു, എന്നാൽ ഉയർന്ന റിസ്കുള്ള ഘട്ടങ്ങളിൽ അനുമതിക്കായി നിൽക്കുന്നു.
  • ഗാർഡ്‌റെയിൽസുള്ള ഗോൾ-ഡ്രിവൻ (Goal-driven with guardrails): നിങ്ങൾ ലക്ഷ്യം നിശ്ചയിക്കുന്നു, സിസ്റ്റം ബജറ്റും പെർമിഷനും പോലുള്ള പരിധിക്കുള്ളിൽ നിന്ന് പ്രവർത്തിക്കുന്നു.

വെറുതെ കാണിക്കാൻ വേണ്ടി മാത്രം ഏജന്റുകളെ ചേർക്കരുത്. ഏജന്റുകളെ ചേർക്കുന്നത് ലേറ്റൻസി (latency), ചിലവ്, ഡീബഗ് ചെയ്യാനുള്ള പ്രയാസം എന്നിവ വർദ്ധിപ്പിക്കുന്നു. ജോലികൾ സമാന്തരമായി (parallel) ചെയ്യാൻ കഴിയുമെങ്കിലോ അല്ലെങ്കിൽ ഒരു ഏജന്റിന് അമിതമായ കോൺടെക്സ്റ്റ് ഉണ്ടെങ്കിലോ മാത്രം ഒന്നിലധികം ഏജന്റുകളെ ഉപയോഗിക്കുക.

നിങ്ങളുടെ ആർക്കിടെക്ചർ ജോലിയുമായി പൊരുത്തപ്പെടണം. ജോലി അപകടസാധ്യതയുള്ളതാണെങ്കിൽ ചെക്ക്പോയിന്റുകൾ ഉപയോഗിക്കുക. ജോലി ലളിതമാണെങ്കിൽ കോഡ് ഉപയോഗിക്കുക.

നിർമ്മിക്കുന്നതിന് മുമ്പ് സ്വയം ഈ ആറ് ചോദ്യങ്ങൾ ചോദിക്കുക:

  • സാധാരണ കോഡ് കൊണ്ട് ഇത് പരിഹരിക്കാൻ കഴിയുമോ?
  • ഇൻപുട്ടിൽ എത്രത്തോളം വ്യത്യാസമുണ്ട്?
  • ജോലിയെ വിഭജിക്കാൻ കഴിയുമോ?
  • ഒരു പരാജയം എത്രത്തോളം നഷ്ടമുണ്ടാക്കും?
  • എവിടെയാണ് പിഴവ് സംഭവിക്കുന്നതെന്ന് നിങ്ങൾക്ക് കാണാൻ കഴിയുമോ?
  • അധികമായ സങ്കീർണ്ണത ഫലത്തിന് അർഹമാണോ?

ഒരു നല്ല വർക്ക്ഫ്ലോ ആവശ്യമുള്ള ഇടങ്ങളിൽ വഴക്കമുള്ളതായും (flexible) ആവശ്യമുള്ള ഇടങ്ങളിൽ പ്രവചിക്കാവുന്നതായും (predictable) നിലകൊള്ളുന്നു.

Source: https://dev.to/whchi/4-design-dimensions-of-agentic-workflows-1i0m

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