AI ഏജന്റുകൾ ഉപയോഗിച്ചുള്ള കോഡിംഗ്: ഉയർന്ന ഉൽപ്പാദനക്ഷമതയും കോഡ് ഗുണമേന്മയും തമ്മിൽ
AI ഏജന്റുകൾ വേഗത്തിൽ കോഡ് ചെയ്യുന്നു. അവർ എത്ര വേഗത്തിൽ എഴുതുന്നു എന്നതല്ല പ്രശ്നം. കോഡ് വൃത്തിയുള്ളതും (clean) സ്ഥിരതയുള്ളതും (consistent) ആയി നിലനിർത്തുക എന്നതാണ് യഥാർത്ഥ പ്രശ്നം.
ഞാൻ ഇത് Project Venom-ൽ പരീക്ഷിച്ചു. ഗുണമേന്മ നഷ്ടപ്പെടാതെ തന്നെ വേഗതയ്ക്കായി AI ഏജന്റുകളെ ഉപയോഗിക്കാൻ കഴിയുമോ എന്ന് എനിക്ക് പരിശോധിക്കണമായിരുന്നു.
ഫലങ്ങൾ: • AI ഏജന്റുകൾ എഴുതിയ 138,011 വരി കോഡുകൾ • 1,587 കമ്മറ്റുകൾ (commits) • 92.2% ടെസ്റ്റ് കവറേജ് (test coverage) • SonarQube-ൽ 0 ഗുണമേന്മ പ്രശ്നങ്ങൾ (തുടക്കത്തിൽ 1,650 പ്രശ്നങ്ങൾ ഉണ്ടായിരുന്നു)
ഞാൻ ഇത് എങ്ങനെയാണ് ചെയ്തത്? ഞാൻ ഒരു പൈപ്പ്ലൈൻ (pipeline) നിർമ്മിച്ചു. AI കോഡ് എഴുതുന്നു, എന്നാൽ ആ കോഡ് നിലനിർത്തണോ വേണ്ടയോ എന്ന് തീരുമാനിക്കുന്നത് പ്രക്രിയയാണ് (process).
ഈ വർക്ക്ഫ്ലോ താഴെ പറയുന്ന ഘട്ടങ്ങളിലൂടെയാണ് കടന്നുപോകുന്നത്:
- മനുഷ്യൻ ലക്ഷ്യവും വ്യാപ്തിയും (goal and scope) നിശ്ചയിക്കുന്നു.
- AI ഏജന്റ് മാറ്റങ്ങൾ പ്ലാൻ ചെയ്യുകയും നടപ്പിലാക്കുകയും ചെയ്യുന്നു.
- ലോക്കൽ പ്രീ-കമ്മറ്റ് ചെക്കുകൾ (local pre-commit checks) സ്റ്റാറ്റിക് വാലിഡേഷനും ടെസ്റ്റുകളും നടത്തുന്നു.
- GitHub Actions CI (linting, contract checks, and architecture guards) പ്രവർത്തിപ്പിക്കുന്നു.
- SonarQube സാങ്കേതിക കടവും (technical debt) സങ്കീർണ്ണതയും പരിശോധിക്കുന്നു.
- AI ഏജന്റുകളും മനുഷ്യനും ചേർന്ന് Pull Request പരിശോധിക്കുന്നു.
- മെർജ് (Merge) ചെയ്യുന്നു.
ഈ പ്രക്രിയയ്ക്ക് മൂന്ന് ഘട്ടങ്ങളുണ്ട്.
ഘട്ടം 1: വേഗത. AI ഏജന്റുകൾ കോഡും യൂണിറ്റ് ടെസ്റ്റുകളും (unit tests) നിർമ്മിക്കുന്നു. ഇത് പ്രോജക്റ്റിനെ വേഗത്തിൽ വിപുലീകരിക്കുന്നു.
ഘട്ടം 2: നിയന്ത്രണം. ഞാൻ SonarQube ഉൾപ്പെടുത്തി. അത് 1,650 പ്രശ്നങ്ങൾ കണ്ടെത്തി. തുടർന്ന് ഞാൻ ലോക്കൽ പ്രീ-കമ്മറ്റ് ഗേറ്റുകൾ (pre-commit gates) നിർമ്മിച്ചു. ഈ ഗേറ്റുകൾ മറികടന്നാൽ മാത്രമേ AI ഏജന്റുകൾക്ക് ഒരു ടാസ്ക് പൂർത്തിയാക്കാൻ കഴിയൂ.
ഘട്ടം 3: സ്ഥിരത. പൈപ്പ്ലൈൻ ദൈനംദിന ജോലിയുടെ ഭാഗമായി മാറി. ഗുണമേന്മ എന്നത് അവസാന ഘട്ടത്തിൽ മാത്രം നടത്തുന്ന പരിശോധനയല്ല, മറിച്ച് അത് ഒരു തുടർച്ചയായ ആവശ്യകതയായി മാറി.
നിങ്ങളുടെ ടീമിനുള്ള പ്രധാന പാഠം: ഏത് AI ഏജന്റാണ് ഏറ്റവും മികച്ചത് എന്ന് ചോദിക്കുന്നത് നിർത്തുക. ഏറ്റവും മികച്ച ഏജന്റ് എല്ലാ ആഴ്ചയും മാറിക്കൊണ്ടിരിക്കും.
പകരം ഇത് ചോദിക്കുക: AI കോഡ് സുരക്ഷിതമായി സ്വീകരിക്കുന്ന ഒരു പ്രക്രിയ എങ്ങനെ നമുക്ക് നിർമ്മിക്കാം?
നിങ്ങൾക്ക് കുറഞ്ഞത് താഴെ പറയുന്ന ടൂളുകൾ ആവശ്യമാണ്:
- GitHub റെപ്പോസിറ്ററിയും (repository) Pull Requests-ഉം
- Pre-commit hooks
- Unit tests
- GitHub Actions
- SonarQube അല്ലെങ്കിൽ SonarCloud
- ഏജന്റുകൾക്കായി വ്യക്തമായ നിർദ്ദേശങ്ങൾ
- മനുഷ്യന്റെയും AI-യുടെയും റിവ്യൂകൾ
പൈപ്പ്ലൈൻ ഇല്ലാതെ AI ഉപയോഗിച്ചുള്ള കോഡിംഗ് വെറുമൊരു പരീക്ഷണമാണ്. പൈപ്പ്ലൈനോടു കൂടിയ AI കോഡിംഗ് ഒരു പ്രൊഫഷണൽ പ്രക്രിയയാണ്.
ഏജന്റ് കോഡ് എഴുതുന്നു. പൈപ്പ്ലൈൻ പ്രോജക്റ്റിനെ സംരക്ഷിക്കുന്നു.
നിങ്ങൾ എങ്ങനെയാണ് AI ഏജന്റുകളുമായി പ്രവർത്തിക്കുന്നത്? അവയെ വെറും സഹായികളായിട്ടാണോ അതോ നിങ്ങളുടെ പ്രക്രിയയിൽ അവയ്ക്ക് സ്വന്തമായി ഗേറ്റുകളും നിർദ്ദേശങ്ങളും ഉണ്ടോ?
ഓപ്ഷണൽ ലേണിംഗ് കമ്മ്യൂണിറ്റി: https://t.me/GyaanSetuAi
