𝗔𝗜 കോഡ് എഴുതുന്നു. അതിന് കോൺടെക്സ്റ്റ് നൽകുന്നത് ആരാണ്?

AI-ക്ക് കോഡ് എഴുതാൻ കഴിയും. എന്നാൽ നിങ്ങളുടെ സിസ്റ്റത്തെക്കുറിച്ച് അതിന് അറിവില്ല.

കോഡിംഗിനായി നിങ്ങൾ AI ഉപയോഗിക്കുമ്പോൾ, ആദ്യത്തെ ഉത്തരം തന്നെ മികച്ചതാകണമെന്നില്ല. നിങ്ങൾ കോൺടെക്സ്റ്റ് (context) നൽകണം. തെറ്റുകൾ തിരുത്തണം. നിങ്ങൾ ഇതിനകം എന്തൊക്കെ പരീക്ഷിച്ചു എന്ന് വിശദീകരിക്കണം.

ഈ പ്രക്രിയയെ 'കോൺടെക്സ്റ്റ് എൻജിനീയറിംഗ്' (context engineering) എന്ന് വിളിക്കുന്നു. സോഫ്റ്റ്‌വെയർ എൻജിനീയറിംഗിൽ AI ഉപയോഗിക്കുമ്പോൾ ഏറ്റവും പ്രധാനപ്പെട്ട ഭാഗമാണിത്.

AI വിശ്വസനീയമായ കോഡ് നിർമ്മിക്കുന്നു. അത് ശരിയാണെന്ന് തോന്നിയേക്കാം. ചിലപ്പോൾ ടെസ്റ്റുകളിൽ വിജയിച്ചേക്കാം പോലും. എന്നാൽ സോഫ്റ്റ്‌വെയർ എന്നത് ശൂന്യതയിലല്ല പ്രവർത്തിക്കുന്നത്. അത് നിങ്ങളുടെ പ്രത്യേക സിസ്റ്റവുമായി പൊരുത്തപ്പെടണം.

ഒരു AI-ക്ക് സ്വയമേവ താഴെ പറയുന്നവ അറിയില്ല:

  • ആർക്കിടെക്ചർ നിയമങ്ങൾ (Architecture rules)
  • സുരക്ഷാ ആവശ്യങ്ങൾ (Security needs)
  • നിലവിലുള്ള പാറ്റേണുകൾ (Existing patterns)
  • ഡൊമെയ്ൻ ലോജിക് (Domain logic)
  • സാങ്കേതിക തീരുമാനങ്ങൾ (Technical decisions)

നിങ്ങൾ ഈ കോൺടെക്സ്റ്റ് നൽകുന്നില്ലെങ്കിൽ, അത് പ്രശ്നങ്ങൾക്ക് കാരണമാകും.

ഇതിലെ ഒരു വലിയ അപകടം ഡ്യൂപ്ലിക്കേഷൻ (duplication) ആണ്. നിങ്ങൾക്ക് ഇതിനകം ഒരു വാലിഡേഷൻ ഹെൽപ്പറോ (validation helper) അല്ലെങ്കിൽ ഒരു പ്രത്യേക എറർ ഹാൻഡ്‌ലറോ (error handler) ഉണ്ടെന്ന് AI അറിയുന്നില്ല. അത് പുതിയൊരെണ്ണം നിർമ്മിക്കും. ഇപ്പോൾ ഒരേ പ്രശ്നം പരിഹരിക്കാൻ നിങ്ങളുടെ സിസ്റ്റത്തിന് രണ്ട് വഴികൾ ഉണ്ടാകും. ഇത് 'ആവർത്തിക്കാതിരിക്കുക' (not repeating yourself) എന്ന നിയമത്തിന് വിരുദ്ധമാണ്.

വേഗതയ്ക്ക് വേണ്ടി മാത്രം നിങ്ങൾ ഒപ്റ്റിമൈസ് ചെയ്യുകയാണെങ്കിൽ, അത് നിങ്ങളുടെ ഭാവിയിലെ പ്രവർത്തനങ്ങളെ സാവധാനത്തിലാക്കും. ഫീച്ചറുകൾ വേഗത്തിൽ പുറത്തിറക്കാൻ കഴിഞ്ഞേക്കാം, പക്ഷേ സിസ്റ്റത്തിൽ മാറ്റങ്ങൾ വരുത്തുന്നത് പ്രയാസകരമാകും.

ഇത് പരിഹരിക്കാൻ, എൻജിനീയറിംഗ് അറിവിനെ കോഡ് പോലെ തന്നെ കൈകാര്യം ചെയ്യണം. അത് ഇവ പാലിക്കേണ്ടതുണ്ട്:

  • വേർഷൻ ചെയ്തതാകണം (Versioned)
  • റിവ്യൂ ചെയ്തതാകണം (Reviewed)
  • ഉടമസ്ഥാവകാശം ഉണ്ടായിരിക്കണം (Owned)
  • എപ്പോഴും പുതുക്കി സൂക്ഷിക്കണം (Kept current)

ഡോക്യുമെന്റേഷൻ മാത്രം പോരാ. കാലഹരണപ്പെട്ട ഡോക്യുമെന്റേഷൻ അപകടകരമാണ്. അത് AI-ക്ക് തെറ്റായ ആത്മവിശ്വാസം നൽകുന്നു. നിങ്ങളുടെ ടീം ഉപയോഗിക്കാത്ത പഴയ പാറ്റേണുകൾ പിന്തുടരാൻ ഇത് മോഡലിനെ പ്രേരിപ്പിക്കുന്നു.

മികച്ച ടീമുകൾ മികച്ച പ്രോംപ്റ്റുകൾ (prompts) എഴുതുക മാത്രമല്ല ചെയ്യുന്നത്. അവർ മികച്ച ഗാർഡ്‌റെയിലുകൾ (guardrails) നിർമ്മിക്കുന്നു.

ഒരു നിയമം പാലിക്കാൻ AI-യോട് ആവശ്യപ്പെടുന്നതിന് പകരം, അത് നടപ്പിലാക്കാൻ ഓട്ടോമേറ്റഡ് ടെസ്റ്റുകൾ ഉപയോഗിക്കുക. താഴെ പറയുന്നവ പരിശോധിക്കാൻ CI/CD ഉപയോഗിക്കുക:

  • സ്റ്റാറ്റിക് അനാലിസിസ് പിശകുകൾ (Static analysis errors)
  • സുരക്ഷാ വീഴ്ചകൾ (Security vulnerabilities)
  • ആർക്കിടെക്ചറൽ ബൗണ്ടറി ലംഘനങ്ങൾ (Architectural boundary violations)
  • ഡിപെൻഡൻസി പ്രശ്നങ്ങൾ (Dependency issues)

AI കോഡ് നിർമ്മാണം ലാഭകരമാക്കുന്നു. എന്നാൽ ഉൽപ്പന്നത്തെക്കുറിച്ചുള്ള (product) അറിവിന്റെ പ്രാധാന്യം അത് കുറയ്ക്കുന്നില്ല. വാസ്തവത്തിൽ, കോൺടെക്സ്റ്റ് എന്നത് ഏറ്റവും മൂല്യവത്തായ വിഭവമായി മാറുന്നു.

ഏറ്റവും കൂടുതൽ കോഡ് നിർമ്മിക്കുന്ന ടീമുകളല്ല വിജയിക്കുക. മറിച്ച്, വിവിധ ഭാഗങ്ങൾ എങ്ങനെ പരസ്പരം യോജിച്ചുനിൽക്കുന്നു എന്നതിനെക്കുറിച്ച് ഏറ്റവും വ്യക്തമായ നിർദ്ദേശങ്ങൾ നൽകുന്ന ടീമുകളായിരിക്കും വിജയിക്കുക.

Source: https://dev.to/icetique/ai-can-write-the-code-who-gives-it-the-context-2l1b

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