उत्पाद

डीबग मोड का परिचय: रनटाइम लॉग्स के साथ एजेंट्स

Alexey Kozy & Albert Slepak7 मिनट में पढ़ें

कोडिंग एजेंट्स बहुत-सी चीज़ों में बेहतरीन हैं, लेकिन कुछ बग्स ऐसे होते हैं जो इन्हें लगातार उलझाए रखते हैं। इसी वजह से हम डीबग मोड पेश कर रहे हैं—एक बिल्कुल नया एजेंट लूप, जो रनटाइम जानकारी और मानव सत्यापन के इर्द-गिर्द बनाया गया है।

इसे बनाने के लिए, हमने हमारी टीम के सर्वश्रेष्ठ डीबगर्स के काम करने के तरीकों का अध्ययन किया। हमने उनके वर्कफ़्लो को एक एजेंट मोड में ढाला और उसे ऐसे उपकरणों से लैस किया, जो कोड में रनटाइम लॉग्स जोड़ सकें; ऐसे प्रॉम्प्ट्स, जो यह समझने के लिए कई परिकल्पनाएँ जनरेट करें कि क्या गलत हो रहा है; और आपको फिर से शामिल करके समस्या को पुनरुत्पन्न करने तथा सुधारों का सत्यापन करने की क्षमता।

नतीजा एक इंटरैक्टिव प्रक्रिया है, जो भरोसेमंद तरीके से उन बग्स को ठीक करती है जो पहले अकेले काम कर रहे सबसे स्मार्ट मॉडल्स की पहुंच से भी बाहर थे, या जिन्हें सुलझाने में डेवलपर का काफी समय लग सकता था।

बग का वर्णन करें

शुरू करने के लिए, ड्रॉपडाउन मेनू से डीबग मोड चुनें और बग का जितना हो सके उतने विस्तार से वर्णन करें।

तुरंत उसे ठीक करने की कोशिश करने के बजाय, एजेंट आपके कोडबेस को पढ़ता है और इस बारे में कई परिकल्पनाएँ बनाता है कि समस्या क्या हो सकती है। इनमें से कुछ ऐसे विचार होंगे जो आपके अपने दिमाग में भी आते, लेकिन कुछ ऐसे तरीके भी होंगे जिन पर शायद आपने विचार न किया हो।

इसके बाद एजेंट आपके कोड में इन परिकल्पनाओं की जाँच के लिए लॉगिंग स्टेटमेंट जोड़ता है। इससे एजेंट को बग होने पर वास्तव में क्या हो रहा है, उसके बारे में ठोस डेटा मिल पाता है।

बग को पुनरुत्पन्न करें

इसके बाद, अपने ऐप पर जाएँ और बग को पुनरुत्पन्न करें, जबकि एजेंट रनटाइम लॉग्स इकट्ठा कर रहा होता है।

एजेंट ठीक-ठीक देख सकता है कि जब बग होता है, तब आपके कोड में क्या हो रहा है: वैरिएबल की स्थितियाँ, एक्ज़ीक्यूशन पाथ, और टाइमिंग की जानकारी। इस डेटा की मदद से, यह मूल कारण की सटीक पहचान कर सकता है और एक लक्षित सुधार जनरेट कर सकता है। अक्सर यह सिर्फ़ दो या तीन पंक्तियों का सटीक बदलाव होता है, न कि सैकड़ों पंक्तियों वाला वह अनुमान-आधारित कोड जो आपको सामान्य एजेंट इंटरैक्शन में मिलता।

सुधार की पुष्टि करें

इस चरण पर, डीबग मोड आपसे कहता है कि प्रस्तावित सुधार लागू होने के बाद बग को एक बार फिर पुनरुत्पन्न करें। अगर बग गायब हो गया है, तो आप उसे ठीक किया गया मानकर चिह्नित करते हैं और एजेंट सारा इंस्ट्रुमेंटेशन हटा देता है, जिससे आपके पास एक साफ़, न्यूनतम परिवर्तन बचता है जिसे आप शिप कर सकते हैं।

मानवीय निर्णय पर आधारित यह सत्यापन बेहद महत्वपूर्ण है। कभी-कभी बग साफ़ तौर पर दिखते हैं, लेकिन कई बार वे ऐसे धुंधले क्षेत्र में होते हैं जहाँ सुधार तकनीकी रूप से काम तो कर सकता है, पर सही नहीं लगता। एजेंट यह फैसला अपने आप नहीं ले सकता। अगर आपको नहीं लगता कि बग ठीक हुआ है, तो एजेंट और लॉगिंग जोड़ता है, आप उसे फिर से पुनरुत्पन्न करते हैं, और वह अपना तरीका तब तक परिष्कृत करता रहता है जब तक समस्या सच में हल नहीं हो जाती।

इस तरह का तेज़ और करीबी आगे-पीछे का सहयोग उन तरीकों में से एक है जिनसे हमें लगता है कि AI कोडिंग सबसे अच्छा काम करती है। एजेंट उबाऊ काम संभालता है, जबकि आप वे त्वरित फैसले लेते हैं जिनके लिए मानवीय निर्णय-क्षमता चाहिए। डीबग मोड का नतीजा यह है कि मुश्किल बग्स, जो पहले पहुंच से बाहर थे, अब भरोसेमंद तरीके से ठीक हो जाते हैं।

डीबग मोड दस्तावेज़ पढ़ें। Cursor 2.2 में सभी नई सुविधाओं के बारे में जानें।