ഒരു മികച്ച സ്കില്ലിന്റെ ഘടന
ഒരു സ്കിൽ എന്നത് വെറും നിർദ്ദേശങ്ങളുടെ ഒരു കൂട്ടം മാത്രമല്ല. ഒരു ഏജന്റ് സിസ്റ്റത്തിൽ, ഒരു സ്കിൽ എന്നത് കൃത്യമായി നിർവചിക്കപ്പെട്ട ഒരു കഴിവാകുന്നു. ഓരോ തവണയും ഒരേ രീതിയിൽ ചിന്തിക്കാതെ തന്നെ ഒരു ടാസ്ക് ചെയ്യാൻ ഇത് ഏജന്റിനെ അനുവദിക്കുന്നു.
പലരും ഒരിക്കൽ മാത്രം പ്രവർത്തിക്കുന്ന സ്കില്ലുകളാണ് നിർമ്മിക്കുന്നത്, എന്നാൽ അവ യഥാർത്ഥ വർക്ക്ഫ്ലോകളിൽ പരാജയപ്പെടുന്നു. ഒരു സ്കിൽ ഒരു മനുഷ്യന് ഉപയോഗിക്കാൻ സാധിച്ചേക്കാം, എന്നാൽ മറ്റൊരു ഏജന്റ് അത് ഉപയോഗിക്കാൻ ശ്രമിക്കുമ്പോൾ അത് തകരാറിലാകാം. ഡാറ്റ ലഭ്യമല്ലാത്ത സാഹചര്യങ്ങളിൽ ഒരു സ്കിൽ പരാജയപ്പെട്ടേക്കാം.
വിശ്വസനീയമായ സ്കില്ലുകൾ നിർമ്മിക്കാൻ, അവയെ സോഫ്റ്റ്വെയർ ഘടകങ്ങളെപ്പോലെ കാണണം. അവയ്ക്ക് വ്യക്തമായ കരാറുകൾ ആവശ്യമാണ്.
ഒരു സ്കിൽ കരാർ ഈ ചോദ്യങ്ങൾക്ക് ഉത്തരം നൽകുന്നു:
- ഈ സ്കില്ലിന് എന്തൊക്കെ വിവരങ്ങൾ ആവശ്യമാണ്?
- ഇത് എന്ത് ഫലം നൽകും?
- ഇത് എന്ത് മുൻധാരണകളാണ് നടത്തുന്നത്?
- വിവരങ്ങൾ ലഭ്യമല്ലെങ്കിൽ എന്ത് സംഭവിക്കും?
ഈ അതിർവരമ്പുകൾ ഇല്ലാതെ, നിങ്ങൾക്ക് സങ്കീർണ്ണമായ വർക്ക്ഫ്ലോകൾ രൂപപ്പെടുത്താൻ കഴിയില്ല.
സ്കിൽ ഡിസൈനിലെ ഈ നാല് മേഖലകളിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുക:
ഇൻപുട്ട് ഡിസൈൻ (Input Design) ഒരു സ്കിൽ എല്ലാ കാര്യങ്ങളും സ്വീകരിക്കുന്നത് ഒഴിവാക്കുക. അവ്യക്തമായ നിർദ്ദേശങ്ങൾ അനിശ്ചിതത്വം ഉണ്ടാക്കുന്നു. ഇൻപുട്ടുകൾ വ്യക്തമല്ലാതിരിക്കുമ്പോൾ, ഏജന്റ് ഊഹിച്ചുകൊണ്ട് പ്രവർത്തിക്കാൻ ശ്രമിക്കുകയും അത് ഊർജ്ജം പാഴാക്കുകയും ചെയ്യുന്നു. ഒരു നല്ല സ്കില്ലിന് കൃത്യമായ പ്രവർത്തന മേഖല ഉണ്ടായിരിക്കണം. മുൻധാരണകൾ നടത്തുന്നതിന് പകരം വിട്ടുപോയ വിവരങ്ങൾ തിരിച്ചറിയാൻ അത് പ്രാപ്തമായിരിക്കണം.
ഔട്ട്പുട്ട് ഡിസൈൻ (Output Design) ഒരു സ്കിൽ ഒറ്റപ്പെട്ട ഒന്നല്ല. നിങ്ങളുടെ വർക്ക്ഫ്ലോയിലെ അടുത്ത ഘട്ടത്തിന് അതിന്റെ ഫലം ഉപയോഗിക്കേണ്ടതുണ്ട്. ഒരു സ്കിൽ ഒരു വലിയ പാരഗ്രാഫ് ആണ് നൽകുന്നതെങ്കിൽ, ഒരു മെഷീന് അത് വായിക്കാൻ പ്രയാസപ്പെട്ടേക്കാം. അടുത്ത ഏജന്റിനോ അല്ലെങ്കിൽ ഓർക്കസ്ട്രേറ്റർക്കോ തീരുമാനമെടുക്കാൻ സഹായിക്കുന്ന രീതിയിൽ ഔട്ട്പുട്ടുകൾ രൂപകൽപ്പന ചെയ്യുക.
പരാജയ സാഹചര്യങ്ങളിലെ പെരുമാറ്റം (Failure Behavior) മിക്കവരും വിജയകരമായ പാതകൾക്കായി (success path) മാത്രമാണ് ഡിസൈൻ ചെയ്യുന്നത്. യഥാർത്ഥ സിസ്റ്റങ്ങൾ അപൂർണ്ണമായ ഡാറ്റയും ടൂൾ പരാജയങ്ങളും നേരിടാറുണ്ട്. ഒരു വിശ്വസനീയമായ സ്കിൽ പിഴവുകൾ എങ്ങനെ കൈകാര്യം ചെയ്യണമെന്ന് നിർവചിക്കുന്നു. വർക്ക്ഫ്ലോയ്ക്ക് വീണ്ടെടുക്കാൻ സാധിക്കുന്നതിനായി, എന്തുകൊണ്ടാണ് പരാജയപ്പെട്ടതെന്ന് അത് സിസ്റ്റത്തോട് പറയണം.
നിയന്ത്രിത വഴക്കം (Controlled Flexibility) അമിതമായ കർക്കശത പുതിയ സാഹചര്യങ്ങളിൽ ഒരു സ്കില്ലിനെ ഉപയോഗശൂന്യമാക്കുന്നു. അമിതമായ വഴക്കം അതിനെ പ്രവചനാതീതമാക്കുന്നു. ഫോർമാറ്റിംഗ് അല്ലെങ്കിൽ വാലിഡേഷൻ പോലുള്ള ജോലികൾക്കായി കർശനമായ നിയമങ്ങൾ ഉപയോഗിക്കുക. റിസർച്ച് അല്ലെങ്കിൽ പ്ലാനിംഗ് പോലുള്ള ജോലികൾക്കായി കൂടുതൽ വഴക്കം ഉപയോഗിക്കുക.
അയഞ്ഞ നിർദ്ദേശങ്ങൾ ഉണ്ടെങ്കിൽ പോലും ഒരു ഒറ്റപ്പെട്ട സ്കില്ലിന് നിലനിൽക്കാൻ സാധിച്ചേക്കാം. എന്നാൽ സ്കില്ലുകളുടെ ഒരു ലൈബ്രറിക്ക് അത് സാധ്യമല്ല.
നിങ്ങൾ ഏജന്റ് സിസ്റ്റങ്ങൾ നിർമ്മിക്കാൻ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, ഒറ്റത്തവണ ഉപയോഗിക്കാവുന്ന പരിഹാരങ്ങൾ നിർമ്മിക്കുന്നത് നിർത്തുക. സിസ്റ്റങ്ങൾക്ക് വിശ്വസിക്കാൻ കഴിയുന്ന കഴിവികൾ നിർമ്മിച്ചു തുടങ്ങുക.
Source: https://dev.to/codanyks/anatomy-of-a-good-skill-designing-capabilities-that-systems-can-trust-4ap5
Optional learning community: https://t.me/GyaanSetuAi