ஒரு தன்னாட்சி AI முகவர் (autonomous AI agent) சுமார் இருபது நிமிடங்களில் ஒரு முழுமையான Retrieval-Augmented Generation (RAG) ஸ்டேக்கை (stack) உருவாக்கி, மனித குறியீடு (code) ஏதுமின்றி ஒரு வரைவு புல் ரிக்வெஸ்ட்டை (draft pull request) திறந்தது.
ஏன் இந்த "லூப்" (loop) முக்கியமானது
ஒரு RAG ஸ்டேக்கை உருவாக்குவது என்பது பொதுவாக ஒரு தேடுபொறி (search engine), ஒரு எம்பெடிங் மாடல் (embedding model), ஒரு மொழி மாதிரி (language model) மற்றும் அவற்றை இணைக்கும் குறியீடு (glue code) ஆகியவற்றை ஒன்றிணைப்பதைக் குறிக்கும். டெவலப்பர்கள் Helm charts-களைச் சரிசெய்வதிலும், அங்கீகாரக் கோளாறுகளை (auth glitches) சரிசெய்வதிலும், பொருந்தாத மாடல் பெயர்களைத் தேடுவதிலும் பல மணிநேரங்களை வீணடிக்கிறார்கள். இந்தச் சோதனையில், தன்னாட்சி முகவர் எந்தக் குறியீடும் எழுதப்படுவதற்கு முன்பாக மனிதன் மற்றும் முகவர் இடையேயான உடன்பாட்டைக் கட்டாயப்படுத்தும் ஐந்து படிநிலைகளைக் கொண்ட ஒரு லூப்பைப் பின்பற்றியது.
| நிலை | என்ன நடக்கும் |
|---|---|
| முன்மொழிவு | முகவர் ப்ராம்ப்ட்டைப் படித்து ஒரு தெளிவான திட்டத்தை உருவாக்குகிறது, ஆனால் இன்னும் குறியீட்டை உருவாக்கவில்லை. |
| உடன்பாடு | பயனர் திட்டத்தைப் பரிசீலித்து, அதை அங்கீகரிக்கிறார் அல்லது மாற்றங்களைக் கோருகிறார். |
| செயல்படுத்துதல் | முகவர் ஒரு புதிய கிளையில் (branch) அந்த அம்சத்தை உருவாக்குகிறது. |
| வரைவு வாயில் | முகவர் தனது சொந்த லின்டிங் (linting) மற்றும் சோதனைத் தொகுப்பை (test suite) இயக்கி, கண்டறியப்பட்ட பிழைகளைச் சரிசெய்கிறது. |
| வரைவு PR | குறியீடு பதிவேற்றப்பட்டு (pushed), இறுதி மனிதப் பரிசீலனைக்காக ஒரு புல் ரிக்வெஸ்ட் (pull request) திறக்கப்படுகிறது. |
பெரும்பாலான AI-உதவி குறியீட்டு கருவிகள் நேரடியாகச் செயல்படுத்துதலுக்குச் சென்றுவிடுகின்றன, இதனால் பெரும்பாலும் இலக்கை அடையாத குறியீடுகளே உருவாகின்றன. ஒரு தெளிவான உடன்பாட்டுப் படிநிலையைச் சேர்ப்பதன் மூலம், இந்த லூப் கண்மூடித்தனமான செயல்பாட்டைத் தடுத்து, எந்தவொரு கமிட்டும் (commit) பதிவேற்றப்படுவதற்கு முன்பே பயனரைத் திட்டத்தை வழிநடத்த அனுமதிக்கிறது.
உருவான ஸ்டேக் (stack)
இருபது நிமிடங்களில், முகவர் ஒரு பயன்பாட்டிற்குத் தயாரான (production-ready) RAG பைப்லைனை (pipeline) ஒருங்கிணைத்தது:
- OpenSearch 3.7 hybrid search (vector + keyword) க்காக உள்ளமைக்கப்பட்டது.
- Local Ollama LLM retrieval-augmented பதில்களுக்கான உருவாக்கும் இயந்திரமாக (generative engine) செயல்படுகிறது.
- FastMCP server மொழி மாதிரிக்காக நான்கு தனிப்பயன் கருவிகளை (custom tools) வழங்குகிறது.
- Skaffold மற்றும் Helm ஸ்கிரிப்ட்கள் கன்டெய்னர் உருவாக்கங்கள் (container builds), Kubernetes manifests மற்றும் சேவை வரிசைப்படுத்தலை (service deployment) தானியக்கமாக்குகின்றன.
இந்த பைப்லைனில் முப்பது கட்டுரைகள் சேர்க்கப்பட்டன, இது ஆரம்பம் முதல் இறுதி வரை (end-to-end) மீட்டெடுப்பு மற்றும் உருவாக்கத்தை உடனடியாகச் சோதிக்க அனுமதித்தது. ஒரு டெவலப்பர் வழக்கமாக ஒவ்வொரு அங்கத்தையும் உள்ளமைக்க ஒரு முழு நாளைச் செலவிடுவார்; இந்த வேகம் வியக்கத்தக்கது.
அதைத் கிட்டத்தட்ட முடக்கிய பிழைகள்
பொதுவாக ஒரு மனிதனால் நடத்தப்படும் வரிசைப்படுத்தலை (deployment) முடக்கும் ஐந்து வெவ்வேறு தோல்விகளால் முகவரின் தன்னம்பிக்கை சோதிக்கப்பட்டது:
- OpenSearch சான்றளிப்புப் பிழைகள் (credential errors) – முகவர் தவறான ரகசியக் குறியீட்டை (secret key) வழங்கியதால், கிளஸ்டர் இணைப்புகளை நிராகரித்தது.
- ஒரு URL-இல் Regex தட்டச்சுப் பிழை – ஒரு தவறான எழுத்து சரியான எண்ட்ஸ்பாயிண்ட்டை (endpoint) ஒரு செயலிழந்த இணைப்பாக மாற்றி, டேட்டா லோடரை (data loader) முடக்கியது.
- மாடல் பெயர் பொருந்தாமை – கனெக்டர் ஒரு வேறுபட்ட Ollama மாடல் அடையாளத்தை எதிர்பார்த்ததால், “model not found” பிழைகள் ஏற்பட்டன.
- JVM நினைவக வரம்புகள் – மொத்தத் தரவு குறியீட்டு முறை (bulk indexing) Java heap நினைவகத்தை முழுமையாகப் பயன்படுத்தி, out-of-memory செயலிழப்புகளைத் தூண்டியது.
- மாடல் துண்டுகள் (model chunks) தற்செயலாக நீக்கப்படுதல் – ஒரு கிளீனப் ஸ்கிரிப்ட் (cleanup script) அத்தியாவசியக் கோப்புகளை நகல் கோப்புகள் என்று தவறாகக் கருதி நீக்கியது, இது முழு பைப்லைனுக்கும் அச்சுறுத்தலாக அமைந்தது.
முகவர் சிக்கிக்கொண்டபோது, “loop-police” தலையிட்டது
loop-police எனப்படும் ஒரு துணை வாட்ச்டாக் (watchdog) லூப்பின் ஆரோக்கியத்தைக் கண்காணிக்கிறது. நீக்கப் பிழை (deletion bug) ஏற்படும் போது, முகவர் முடிவற்ற சுழற்சிக்குள் (non-terminating cycle) நுழைந்தபோது, loop-police அந்தத் தடையைக் கண்டறிந்து, தற்போதைய கிளையை (branch) ரத்து செய்து, மீண்டும் உடன்பாட்டு (Agreement) நிலைக்குத் திரும்பும்படி கட்டாயப்படுத்தியது. பின்னர் முகவர் தனது தவறை ஒப்புக்கொண்டு, சிதைந்த நிலையைச் (corrupted state) சரிசெய்து, பைப்லைனை ஆரம்பத்திலிருந்து மீண்டும் உருவாக்கியது. ஆரம்பத் திட்ட அங்கீகாரத்தைத் தவிர, மனிதத் தலையீடு இன்றி இந்தத் தானாகவே குணமடையும் சுழற்சி (self-healing cycle) நிறைவடைந்தது.
இது டெவலப்பர்களுக்கு எதைக் குறிக்கிறது
- கட்டுப்பாட்டை விட்டுக்கொடுக்காமல் வேகம். இந்த லூப் பொறியாளர்கள் தங்கள் நோக்கத்தைக் குறிப்பிட அனுமதிக்கிறது, பின்னர் மனிதனால் அங்கீகரிக்கப்பட்ட வரைபடத்தைப் பின்பற்றும் ஒரு தன்னாட்சி அமைப்பிடம் செயல்பாட்டை ஒப்படைக்க உதவுகிறது.
- உள்ளமைக்கப்பட்ட பாதுகாப்பு வலைகள். தானியக்க லின்டிங், சோதனை மற்றும் கட்டுப்பாடற்ற லூப்பைத் தடுக்கக்கூடிய ஒரு வாட்ச்டாக் ஆகியவை அமைதியான தோல்விகளின் (silent failures) அபாயத்தைக் குறைக்கின்றன.
- குறைந்த நுழைவுத் தடை. ஆழமான Helm, Kubernetes அல்லது வெக்டர்-தேடல் (vector-search) நிபுணத்துவம் இல்லாத குழுக்கள், தங்களுக்குத் தேவையானதை எளிய மொழியில் விவரிப்பதன் மூலம் ஒரு செயல்பாட்டு ஸ்டேக்கை உருவாக்க முடியும்.
இந்த அணுகுமுறை ஒரு மந்திரத் தீர்வு (silver bullet) அல்ல. யதார்த்தமற்ற எதிர்பார்ப்புகள் அல்லது பாதுகாப்பு கவலைகளைக் கண்டறிய, உடன்பாட்டு (Agreement) நிலைக்கு இன்னும் அறிவுள்ள ஒரு ஆய்வாளர் தேவைப்படுகிறார். இந்த லூப் துறை சார்ந்த நிபுணத்துவத்திற்கு (domain expertise) மாற்றாகாது; இது மீண்டும் மீண்டும் செய்யப்படும் பிளம்பிங் பணிகளை (plumbing work) ஒரு மீண்டும் செய்யக்கூடிய வடிவமாக மாற்றுகிறது.
