AI एजंट्सना प्रश्न विचारणे विरुद्ध त्यांना काम सोपवणे
बहुतेक डेव्हलपर्स AI चा वापर Stack Overflow च्या अधिक हुशार आवृत्तीसारखा करतात.
तुम्ही एक प्रश्न टाईप करता. तुम्हाला उत्तर मिळते. त्यानंतर काम तुम्हाला स्वतःला करावे लागते. ही पद्धत संथ आहे.
एक वेगवान मार्ग आहे. तुम्ही प्रश्न विचारणे थांबवून काम सोपवायला (delegating) सुरुवात केली पाहिजे.
जेव्हा तुम्ही AI ला विचारता: "माझ्या auth module साठी मी टेस्ट्स कशा लिहू?" तुम्हाला एक स्पष्टीकरण मिळते. टेस्ट्स तुम्हालाच लिहाव्या लागतात. काम तुम्हालाच करावे लागते.
जेव्हा तुम्ही AI एजंटला काम सोपवता: "/src/auth.py साठी टेस्ट्स लिहा. login, logout, आणि invalid token cases कव्हर करा. त्या रन करा. जर त्या फेल झाल्या, तर त्या पास होईपर्यंत कोड फिक्स करा. तुम्ही काय बदल केले ते मला सांगा."
एजंट तुमच्या फाइल्स उघडतो. तो टेस्ट्स लिहितो. तो त्या रन करतो. तो failures वाचतो. तो कोड फिक्स करतो. तो तुम्हाला एक कार्यरत टेस्ट सूट (working test suite) आणून देतो.
तुम्ही निकालाचे पुनरावलोकन (review) करता. काम तुम्ही केलेले नसते.
प्रभावीपणे काम सोपवण्यासाठी चार गोष्टींची आवश्यकता असते:
- ध्येय (Goal): एजंटने काय तयार केले पाहिजे?
- व्याप्ती (Scope): त्याने कोणत्या फाइल्स किंवा क्षेत्रांवर काम केले पाहिजे?
- यशाची अट (Success condition): काम योग्यरित्या झाले आहे हे आपल्याला कसे कळेल?
- अहवाल (Report back): त्याने काय बदलले आणि का?
व्यावहारिक उदाहरणे:
Debugging: "या एररचे आणि stack trace चे मूळ कारण शोधा. ते फिक्स करा आणि त्रुटी स्पष्ट करा."
Refactoring: "ही फाईल रिफॅक्टर करा. जास्तीत जास्त दोनच nesting levels वापरा. ३० ओळींपेक्षा मोठी कोणतीही function नसावी. प्रत्येक call site अपडेट करा."
Database migration: "या schema change साठी एक idempotent migration script लिहा. ते यशस्वी होत असल्याची खात्री करण्यासाठी स्थानिक (local) डेटाबेसवर रन करा."
Reviewing: "हा PR diff वाचा. प्रोडक्शनमध्ये फेल होऊ शकतील अशा गोष्टी शोधा. मी राहून गेलेल्या टेस्ट्स लिहा."
एजंट्स वेगवान असतात. पण ते कधीकधी चुकीचेही असू शकतात. त्यांच्या कामाची पडताळणी करण्यासाठी या तीन तपासण्या वापरा:
त्याने समस्या सोडवली का? कोड रन करा. फक्त वाचू नका. टेस्ट्स एक्झिक्युट करा. edge case failures शोधण्याचा एकमेव मार्ग म्हणजे कोड रन करणे हाच आहे.
ते तुमच्या codebase मध्ये बसते का? एजंटला तुमच्या टीमच्या नियमावलीची (conventions) माहिती नसते. आउटपुटमध्ये काही असामान्य पॅटर्न किंवा तुमच्या टीमने टाळल्या जाणाऱ्या लायब्ररीज आहेत का ते तपासा.
त्याने व्याप्तीबाहेरच्या (outside the scope) गोष्टी बदलल्या का? एजंटने कोणत्या फाइल्समध्ये बदल केले आहेत ते तपासा. एखाद्या ज्युनिअर डेव्हलपरने पाठवलेल्या PR प्रमाणे diff वाचा. मदत करताना त्याने काही गोष्टी बिघडवल्या नाहीत याची खात्री करा.
तुमचे काम प्रत्यक्ष काम करण्याकडून ध्येय निश्चित करणे आणि निकालाचे पुनरावलोकन करणे याकडे वळते. तुम्ही निर्णयक्षमता (judgment) देता, तर एजंट वेग (speed) देतो.
Source: https://dev.to/omerberatsezer/asking-vs-delegating-agents-43ii
Optional learning community: https://t.me/GyaanSetuAi
