AI-யை இணையாக (parallel) வேலை செய்ய வைக்க வேண்டுமா? முதலில் ஒவ்வொன்றிற்கும் தனித்தனி பணிப்பகுதியை (workspace) வழங்கவும்
ஒரே திட்டத்தில் (project) பல AI ஏஜென்ட்களை இயக்குவது கடினம்.
நீங்கள் பல ஏஜென்ட்களுக்கு ஒரே ஃபோல்டரை (folder) அணுக அனுமதித்தால், அவை உங்கள் கோப்புகளைத் (files) தடம் மாற்றி overwrite செய்துவிடும். அவை உங்கள் திட்டத்தின் நிலையை (project state) குழப்பமடையச் செய்யும். இறுதியில் அனைத்தும் சிதைந்து ஒரு குழப்பமான நிலையிலேயே முடியும்.
உங்களுக்குத் தனிமைப்படுத்தல் (isolation) தேவை.
AI-யை இணையாகப் பயன்படுத்த இரண்டு வழிகள் உள்ளன:
- Read-only பணிகள்: ஒரு ஏஜென்ட் லாக்ஸ்களை (logs) படிக்கும்போது மற்றொருவர் ஆவணங்களைப் (docs) படிக்கலாம். அவர்கள் ஒரே பணிப்பகுதியைப் (workspace) பகிர்ந்து கொள்ளலாம்.
- Write பணிகள்: பல ஏஜென்ட்கள் குறியீட்டைத் (code) திருத்தலாம். அவர்களுக்குத் தனித்தனி பணிப்பகுதிகள் இருக்க வேண்டும்.
இதைத் தீர்க்க தனித்தனி ஃபோல்டர் குளோன்களைப் (folder clones) பயன்படுத்த முயன்றேன். ஆனால் டிஸ்க் இடவசதி (disk space) காரணமாக அது தோல்வியடைந்தது. பல சார்புகளைக் (dependencies) கொண்ட பெரிய திட்டங்கள் பல ஜிகாபைட் (gigabytes) இடத்தைப் பிடிக்கும். அவற்றை பலமுறை குளோன் செய்வது சேமிப்பகத்தை (storage) வீணடிக்கும்.
நான் git worktree-க்கு மாறினேன்.
git worktree என்பது ஒரே களஞ்சியத்திற்கு (repository) பல பணிப்பகுதிகளை (working directories) வைத்திருக்க அனுமதிக்கிறது. இவை அனைத்தும் ஒரே .git வரலாற்றைப் (history) பகிர்ந்து கொள்கின்றன. இது டிஸ்க் இடத்தைச் சேமிப்பதோடு, ஒழுங்காகவும் வைக்கிறது.
AI-யுடன் இதைப் பயன்படுத்துவது எப்படி என்பது இதோ:
Subagent இணையாக்கம் (parallelism): பணிகளை இணையாகச் செய்ய AI-யிடம் கூறவும். அது தானாகவே தனக்கென ஒரு worktree-ஐ உருவாக்கிக்கொள்ளும்.
கைமுறை இணையாக்கம் (Manual parallelism): நீங்களே பல AI டெர்மினல்களைத் (terminals) திறந்தால், மற்றவற்றைப் பற்றி AI-க்குத் தெரியாது. நீங்கள் அதனிடம்: "மற்றொரு AI இந்த டைரக்டரியைத் (directory) திருத்திக் கொண்டிருக்கிறது. worktree முறையில் வேலை செய்," என்று கூற வேண்டும்.
இந்த பணிப்பாய்வு (workflow) பின்வரும் படிகளைப் பின்பற்றுகிறது:
- பணிகளைத் தனித்தனிப் பகுதிகளாகப் பிரிக்கவும்.
- ஒவ்வொரு பகுதிக்கும் ஒரு தனித்துவமான worktree-ஐ ஒதுக்கீடு செய்யவும்.
- மாற்றங்களை ஒவ்வொன்றாக முக்கிய கிளையில் (main branch) இணைக்க (merge) ஒரு லீட் ஏஜென்ட்டைப் (lead agent) பயன்படுத்தவும்.
- ஒவ்வொரு இணைப்பிற்குப் பிறகும் குறியீட்டைச் (code) சரிபார்க்கவும்.
- பணி முடிந்ததும் worktree-ஐ நீக்கவும்.
சுத்தம் செய்வது (Cleanup) மிக முக்கியம். மறக்கப்பட்ட worktree-கள் உங்கள் டிஸ்க் இடத்தைச் சாப்பிட்டுவிடும். எனது AI அறிவுறுத்தல்களில் (instructions) ஒரு விதியைச் சேர்த்துள்ளேன்: ஒரு worktree-ஐ நீக்குவதற்கு முன், அனைத்து கமிட்களும் (commits) முக்கிய கிளையில் (main branch) இருப்பதை உறுதி செய்யவும். இது வேலையை இழப்பதைத் தவிர்க்கிறது.
மிகச் சிறிய பணிகளுக்கு worktree-களைப் பயன்படுத்த வேண்டாம். நீங்கள் ஒரு கோப்பை மட்டும் மாற்றினால், ஒரே பணிப்பகுதியிலேயே இருங்கள். சிக்கலான அம்சங்களுக்கு (complex features) worktree-களைப் பயன்படுத்தவும்.
ஒரு விதி மாறாது: ஒருபோதும் நேரடியாகத் தண்டுப் பகுதியில் (trunk) வேலை செய்யாதீர்கள். எப்போதும் ஒரு புதிய கிளையில் (branch) தொடங்குங்கள். இது உங்கள் முக்கிய குறியீட்டை (main code) சுத்தமாகவும் பாதுகாப்பாகவும் வைத்திருக்கும்.
git worktree ஒரு பழைய கருவி. ஆனால் இணையாக இயங்கும் AI பணிப்பாய்வுகளுக்கு (parallel AI workflows), இது ஒரு சிறந்த தீர்வாகும்.
நாள் முடிவில் AI நம்மைச் சோர்வடைய விடாமல் செய்வது ஏன் என்பது குறித்து நீங்கள் அறிய ஆர்வமாக உள்ளீர்களா? கருத்துப் பெட்டியில் (comments) எனக்குத் தெரியப்படுத்துங்கள்.
மூலம்: https://dev.to/kanfu-panda/want-ai-to-work-in-parallel-first-give-each-one-its-own-workspace-40ch
விருப்பத்தேர்வு கற்றல் சமூகம்: https://t.me/GyaanSetuAi
