AI कोडिंग एजंट्सनी चॅट बॉक्सेस का वापरू नयेत

मी उघडलेले प्रत्येक AI टूल सारखेच दिसते. ते एका टेक्स्ट फील्डमधील लुकलुकणारा कर्सर असते. Claude Code आणि Codex अगदी तसाच इंटरफेस वापरतात, जो आम्ही १९९९ मध्ये IRC बॉट्ससाठी वापरत होतो.

चॅट हे बनवण्यासाठी सोपे माध्यम आहे. यामुळे डेमो चांगले दिसतात. पण चॅट हे केवळ एक तात्पुरते साधन (placeholder) आहे. खरा उद्देश अधिक चांगल्या चॅट बॉक्सचा नाही, तर चॅट बॉक्सची गरजच नसावी हा आहे.

चॅट इंटरफेस कामाचा भार पुन्हा तुमच्यावरच टाकतो.

तुम्हाला काय विचारायचे आहे हे माहित असणे आवश्यक आहे. तुम्ही ते योग्य प्रकारे मांडले पाहिजे. तुम्हाला लांब परिच्छेद वाचून त्यांचे कृतीत रूपांतर करावे लागते. मॉडेल विचार करते, पण इंटरफेसचे काम तुम्हाला तुमच्या डोक्यात करावे लागते.

कोडिंग एजंट्ससाठी ही एक समस्या आहे. कोडिंग हे spatial आणि structural असते. तुम्ही फाइल्स, diffs आणि dependency graphs वर काम करता. यांपैकी कोणतीही गोष्ट परिच्छेद स्वरूपात नसते. टेक्स्ट स्ट्रीमद्वारे कोड समजून घेण्याचा प्रयत्न करणे म्हणजे फोनवर कोणीतरी नकाशाचे वर्णन करत असताना तो ऐकून समजून घेण्याचा प्रयत्न करण्यासारखे आहे.

जेव्हा एखादा एजंट एखाद्या फंक्शनचे रिफॅक्टरिंग (refactor) करतो आणि त्याने काय बदलले हे तीन वाक्यांत सांगतो, तेव्हा ते 'होमवर्क' असते, मदत नाही.

मॉडेल कोड, लेआउट्स आणि कंपोनंट्स तयार करू शकते. कामाचे वर्णन करण्याऐवजी त्याने त्या कामासाठी आवश्यक असलेला इंटरफेस तयार केला पाहिजे.

सारांशाऐवजी, मला 'accept' आणि 'reject' बटणांसह 'diff view' द्या.

"या फंक्शनला कोणी कॉल केले?" असे विचारण्याऐवजी, मला क्लिक करता येईल असा 'call graph' दाखवा.

बारा फाइल्समध्ये बदल केल्यानंतर कबुली देण्याऐवजी, ते रन करण्यापूर्वी मला त्या फाइल्सची चेकलिस्ट दाखवा.

इंटरफेस हा मॉडेलचा एक लवचिक (fluid) आउटपुट असावा. कामाच्या स्वरूपानुसार UI बदलले पाहिजे. तुम्हाला सध्या ज्या निर्णयाची गरज आहे, त्यानुसार त्याने स्वतःला आकार द्यायला हवा.

हा विश्वासाचा विषय आहे.

चॅट एजंटला शब्दांच्या मागे लपवून ठेवते. जर एजंटने म्हटले की "मी टेस्ट्स अपडेट केल्या आहेत," तर तुम्हाला त्याच्या शब्दावर विश्वास ठेवावा लागतो. एकतर तुम्ही त्याच्यावर आंधळेपणाने विश्वास ठेवता किंवा स्वतः फाइल्स शोधून पाहता. दोन्ही पर्याय अपयशी ठरतात.

तयार केलेला इंटरफेस काम तपासणे सोपे करतो. 'diff' तिथेच असतो. प्लॅन तिथेच असतो. एजंट "माझ्यावर विश्वास ठेवा" म्हणणे थांबवतो आणि "दोन सेकंदात याची पडताळणी करा" असे म्हणायला लागतो.

मला माहित आहे की चॅटचे मूल्य आहे. भाषा संदिग्धता (ambiguity) हाताळते. कधीकधी एखादी जटिल कल्पना व्यक्त करण्याचा शब्द हा एकमेव मार्ग असतो.

उपाय भाषा काढून टाकणे हा नाही. भाषेचा वापर 'एंट्री पॉईंट' म्हणून करा आणि तयार केलेल्या UI चा वापर 'रिस्पॉन्स' म्हणून करा.

तुमची विनंती साध्या शब्दांत टाईप करा. त्या विनंतीसाठी योग्य इंटरफेस त्वरित मिळवा. भाषा आत जाते आणि इंटरफेस बाहेर येतो. चॅट हे केवळ प्रवेशद्वार आहे, संपूर्ण घर नाही.

आम्ही अधिक चांगले चॅट प्रॉडक्ट्स बनवण्यासाठी वर्षे घालवली. आम्ही मेमरी आणि वेगावर लक्ष केंद्रित केले. पण आम्ही त्याच एका लहान टेक्स्ट बॉक्समध्ये अडकून राहिलो.

खरा बदल बॉक्समध्ये अधिक चांगले उत्तर मिळवणे हा नाही. खरा बदल म्हणजे तो बॉक्स विरघळून जाणे हा आहे. मॉडेलने तुम्हाला तुमचा पुढचा निर्णय घेण्यासाठी नेमका जो पृष्ठभाग (surface) आवश्यक आहे, तो उपलब्ध करून दिला पाहिजे.

एजंट्स पुरेसे हुशार आहेत. आपल्याला फक्त त्यांना बोलणे थांबवून आपल्याला आवश्यक असलेली साधने (tools) बनवण्यास सांगण्याची गरज आहे.

Source: https://dev.to/nishkarsh_gupta/why-ai-coding-agent-shouldnt-hand-us-a-chat-box-3ccj

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