AI ఏజెంట్లను అడగడం vs అప్పగించడం (Asking vs Delegating AI Agents)

చాలా మంది డెవలపర్లు AIని Stack Overflow యొక్క తెలివైన వెర్షన్‌లా ఉపయోగిస్తారు.

మీరు ఒక ప్రశ్న టైప్ చేస్తారు. మీకు సమాధానం వస్తుంది. ఆపై పనిని మీరే స్వయంగా చేస్తారు. ఈ పద్ధతి నెమ్మదిగా ఉంటుంది.

దీనికంటే వేగవంతమైన మార్గం ఉంది. మీరు అడగడం ఆపి, పనులను అప్పగించడం (delegating) ప్రారంభించాలి.

మీరు AIని అడిగినప్పుడు: "నా auth module కోసం టెస్ట్‌లను ఎలా రాయాలి?" మీకు ఒక వివరణ వస్తుంది. కానీ టెస్ట్‌లను మీరు స్వయంగా రాయాల్సి ఉంటుంది. పనిని మీరే చేయాల్సి ఉంటుంది.

మీరు ఒక AI ఏజెంట్‌కు పనిని అప్పగించినప్పుడు: "/src/auth.py కోసం టెస్ట్‌లను రాయండి. login, logout, మరియు invalid token కేసులను కవర్ చేయండి. వాటిని రన్ చేయండి. ఒకవేళ అవి ఫెయిల్ అయితే, అవి పాస్ అయ్యే వరకు కోడ్‌ను సరిచేయండి. మీరు ఏమి మార్చారో నాకు చెప్పండి."

ఆ ఏజెంట్ మీ ఫైళ్లను ఓపెన్ చేస్తుంది. టెస్ట్‌లను రాస్తుంది. వాటిని రన్ చేస్తుంది. ఫెయిల్యూర్స్‌ను చదువుతుంది. కోడ్‌ను సరిచేస్తుంది. మీకు పని చేసే టెస్ట్ సూట్‌ను అందిస్తుంది.

మీరు ఫలితాన్ని రివ్యూ చేస్తారు. పనిని మీరు చేయలేదు.

సమర్థవంతమైన డెలిగేషన్ (delegation) కోసం నాలుగు భాగాలు అవసరం:

  • లక్ష్యం (Goal): ఏజెంట్ ఏమి ఉత్పత్తి చేయాలి?
  • పరిధి (Scope): ఏ ఫైళ్లు లేదా ఏ విభాగాలను అది తాకాలి?
  • విజయవంతమైన స్థితి (Success condition): అది సరిగ్గా పూర్తయిందని మనకు ఎలా తెలుస్తుంది?
  • నివేదిక (Report back): అది ఏమి మార్చింది మరియు ఎందుకు మార్చింది?

ఆచరణాత్మక ఉదాహరణలు:

డీబగ్గింగ్ (Debugging): "ఈ ఎర్రర్ మరియు స్టాక్ ట్రేస్ యొక్క మూల కారణాన్ని కనుగొనండి. దానిని సరిచేసి, ఎక్కడ లోపం ఉందో వివరించండి."

రీఫ్యాక్టరింగ్ (Refactoring): "ఈ ఫైల్‌ను రీఫ్యాక్టర్ చేయండి. గరిష్టంగా రెండు నెస్టెడ్ లెవల్స్ మాత్రమే వాడండి. 30 లైన్ల కంటే ఎక్కువ పొడవున్న ఫంక్షన్ ఉండకూడదు. ప్రతి కాల్ సైట్‌ను అప్‌డేట్ చేయండి."

డేటాబేస్ మైగ్రేషన్ (Database migration): "ఈ స్కీమా మార్పు కోసం ఒక idempotent మైగ్రేషన్ స్క్రిప్ట్‌ను రాయండి. అది విజయవంతమవుతుందని నిర్ధారించుకోవడానికి లోకల్ డేటాబేస్‌లో రన్ చేయండి."

రివ్యూయింగ్ (Reviewing): "ఈ PR diffని చదవండి. ప్రొడక్షన్‌లో ఫెయిల్ అయ్యే అవకాశం ఉన్న వాటిని కనుగొనండి. నేను మిస్ చేసిన టెస్ట్‌లను రాయండి."

ఏజెంట్లు వేగంగా పనిచేస్తాయి. కానీ అవి కొన్నిసార్లు తప్పులు కూడా చేయవచ్చు. వాటి పనిని ధృవీకరించడానికి ఈ మూడు తనిఖీలను ఉపయోగించండి:

  1. అది సమస్యను పరిష్కరించిందినా? కోడ్‌ను రన్ చేయండి. కేవలం చదవడమే కాదు. టెస్ట్‌లను ఎగ్జిక్యూట్ చేయండి. ఎడ్జ్ కేస్ ఫెయిల్యూర్స్‌ను కనుగొనడానికి కోడ్‌ను రన్ చేయడం ఒక్కటే మార్గం.

  2. అది మీ కోడ్‌బేస్‌కు సరిపోతుందా? మీ టీమ్ కన్వెన్షన్స్ (conventions) గురించి ఏజెంట్‌కు తెలియదు. అవుట్‌పుట్‌లో అసాధారణ ప్యాటర్న్‌లు లేదా మీ టీమ్ వాడకుండా ఉండే లైబ్రరీల కోసం వెతకండి.

  3. అది పరిధి వెలుపల ఉన్న వాటిని మార్చిందా? ఏజెంట్ ఏ ఫైళ్లను తాకిందో తనిఖీ చేయండి. ఒక జూనియర్ డెవలపర్ పంపిన PR లాగా diffని చదవండి. సహాయపడే క్రమంలో అది వేరే వాటిని పాడు చేయలేదని నిర్ధారించుకోండి.

మీ పని 'పని చేయడం' నుండి 'లక్ష్యాన్ని నిర్వచించడం మరియు ఫలితాన్ని రివ్యూ చేయడం' వైపు మారుతుంది. మీరు నిర్ణయం (judgment) తీసుకుంటారు. ఏజెంట్ వేగాన్ని (speed) అందిస్తుంది.

Source: https://dev.to/omerberatsezer/asking-vs-delegating-agents-43ii

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