AI மேம்பாட்டில் விதிமுறை சார்ந்த தானியங்கி முறை ஏன் தோல்வியடைகிறது
பெரும்பாலான டெவலப்பர்கள் தானியங்கி முறையை (automation) ஒரு தூண்டுதல் (trigger), ஒரு செயல்முறை (process) மற்றும் ஒரு வெளியீடு (output) என வரையறுக்கிறார்கள். இது cron jobs மற்றும் deployment scripts ஆகியவற்றிற்குப் பொருந்தும். ஆனால், மென்பொருளை எழுத AI-ஐப் பயன்படுத்தும்போது இது தோல்வியடைகிறது.
AI நிலையான படிநிலைகளைத் தொடர்வதில்லை. அது கட்டமைப்பு (architecture) மற்றும் சார்புகள் (dependencies) குறித்துத் தீர்மானங்களை எடுக்கிறது. இந்த மாற்றம், எளிய தானியங்கி முறையிலிருந்து நிர்வகிக்கப்பட்ட செயலாக்கத்திற்கு (managed execution) மாற வேண்டிய அவசியத்தை ஏற்படுத்துகிறது.
எளிய தானியங்கி முறையிலுள்ள சிக்கல்
எளிய தானியங்கி முறையானது கணிக்கக்கூடிய பணிகளுக்குச் சிறப்பாகச் செயல்படும். boilerplate குறியீடுகளை எழுதுவதற்கோ அல்லது linters இயக்குவதற்கோ இது சிறந்தது. இத்தகைய பணிகளுக்குத் தெளிவான பாதையும், அறியப்பட்ட வெளியீடும் இருக்கும்.
ஒரு பணிக்கு சூழல் (context) தேவைப்படும்போது சிக்கல்கள் எழுகின்றன. ஒரு புதிய அம்சம் (feature) ஏற்கனவே உள்ள சேவைகளுடன் எவ்வாறு தொடர்பு கொள்கிறது என்பதை நீங்கள் அறிய வேண்டும். ஒரு schema மாற்றம் எதையாவது பாதிக்குமா என்பதை நீங்கள் சரிபார்க்க வேண்டும்.
தற்போதைய பணியில் மட்டும் கவனம் செலுத்தும் கருவிகள் பெரும்பாலும் தோல்வியடைகின்றன. அவை பார்ப்பதற்குச் சரியாகத் தோன்றும், ஆனால் உங்கள் கட்டமைப்பை (architecture) சிதைக்கும் குறியீடுகளை உருவாக்குகின்றன. அந்த குறியீடுகளுக்கு உங்கள் குறிப்பிட்ட அமைப்பைப் பற்றிய விழிப்புணர்வு இருப்பதில்லை.
உங்கள் பணிப்பாய்வில் (workflow) உள்ள இடைவெளி
பெரும்பாலான நிறுவனங்கள் ஏற்கனவே எளிதான பணிகளைத் தானியங்கி மயமாக்கியுள்ளன. தொழில்துறை தரவுகளின்படி, 30% முதல் 40% பணிப்பாய்வுகள் ஏற்கனவே தானியங்கி மயமாக்கப்பட்டுள்ளன.
மீதமுள்ள பணிகளுக்குத் தீர்ப்பு வழங்கும் திறன் (judgment) தேவைப்படுகிறது. இதுதான் மென்பொருள் பொறியியலின் கடினமான பகுதி. இங்குதான் விதிமுறை சார்ந்த தானியங்கி முறை சூழல் இல்லாமையால் அதிகச் செலவை ஏற்படுத்துகிறது.
நிர்வகிக்கப்பட்ட செயலாக்கம் (managed execution) எதை வழங்குகிறது
நிர்வகிக்கப்பட்ட செயலாக்கம் அமைப்புகள் செயல்படும் முறையை மாற்றுகிறது. இது மூன்று நிலைகளில் கவனம் செலுத்துகிறது:
• செயலாக்கத்திற்கு முன்னரே திட்டமிடல் (Planning) நடைபெறுகிறது. தேவைகள் மற்றும் கட்டமைப்பிற்கான ஒரு திட்டத்தை அமைப்பு உருவாக்குகிறது. எந்தக் குறியீடும் எழுதப்படுவதற்கு முன்பே நீங்கள் இந்தத் திட்டத்தை ஆய்வு செய்யலாம். • வேகத்தை விடக் காட்சித்தன்மை (Visibility) முக்கியம். கருவிகள் இப்போது அவற்றின் செயல்பாடுகளைக் காட்டுவதற்கு முன்னுரிமை அளிக்கின்றன. பின்னர் ஊகிப்பதற்குப் பதிலாக, ஒரு build-ன் பின்னணியில் உள்ள காரணங்களை நீங்கள் இப்போது பார்க்க முடியும். • கட்டுப்படுத்தப்பட்ட பணிப்பாய்வுகள் (Controlled workflows). ஏஜென்ட் (agent) செயல்பாடுகளை ஆய்வு செய்யக்கூடிய வகையில் வைத்திருக்க, அமைப்புகள் state machines மற்றும் பணிப் பகிர்வு (task delegation) முறைகளைப் பயன்படுத்துகின்றன.
சரியான கருவியைத் தேர்ந்தெடுப்பது எப்படி
ஒரு கருவி நேரத்தைச் சேமிக்குமா என்று கேட்காதீர்கள். கிட்டத்தட்ட அனைத்துக் கருவிகளும் நேரத்தைச் சேமிக்கும். பணியின் வரம்பு (scope) பற்றி கேளுங்கள்.
குறுகிய மற்றும் குறைந்த அபாயம் கொண்ட பணிகளுக்கு எளிய தானியங்கி முறையைப் பயன்படுத்துங்கள். இது வேகமானது மற்றும் குறைந்த கூடுதல் சுமையைக் (overhead) கொண்டது.
சிக்கலான builds-களுக்கு நிர்வகிக்கப்பட்ட செயலாக்கத்தைப் பயன்படுத்துங்கள். கட்டமைப்பு சார்ந்த முடிவுகள் அதிக முக்கியத்துவம் வாய்ந்ததாக இருக்கும்போது இதைப் பயன்படுத்துங்கள்.
தானியங்கி முறையை மாற்றுவதே இலக்கல்ல. பணியின் அபாயத்திற்கு ஏற்ப சரியான கருவியைத் தேர்ந்தெடுப்பதே இலக்காகும்.
