पेश है Amazon CodeWhisperer, ML-संचालित कोडिंग साथी

स्रोत नोड: 1563783

हम घोषणा करने के लिए उत्साहित हैं अमेज़ॅन कोडव्हिस्पीर, एक मशीन लर्निंग (एमएल)-संचालित सेवा जो डेवलपर्स की स्वाभाविक टिप्पणियों और पूर्व कोड के आधार पर कोड अनुशंसाएं प्रदान करके डेवलपर उत्पादकता में सुधार करने में मदद करती है। CodeWhisperer के साथ, डेवलपर्स केवल एक टिप्पणी लिख सकते हैं जो सादे अंग्रेजी में एक विशिष्ट कार्य की रूपरेखा तैयार करती है, जैसे "S3 पर एक फ़ाइल अपलोड करें।" इसके आधार पर, CodeWhisperer स्वचालित रूप से निर्धारित करता है कि कौन सी क्लाउड सेवाएं और सार्वजनिक पुस्तकालय निर्दिष्ट कार्य के लिए सबसे उपयुक्त हैं, फ्लाई पर विशिष्ट कोड बनाता है, और सीधे आईडीई में जेनरेट कोड स्निपेट की सिफारिश करता है।

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

इस पोस्ट में, हम CodeWhisperer के लाभों और आरंभ करने के तरीके पर चर्चा करते हैं।

एमएल की शक्ति को डेवलपर की उंगलियों पर लाना

CodeWhisperer प्रमुख IDE के लिए AWS टूलकिट एक्सटेंशन के हिस्से के रूप में उपलब्ध है, जिसमें JetBrains, Visual Studio कोड, और AWS क्लाउड 9. पर AWS लाम्बा कंसोल, CodeWhisperer एक देशी कोड सुझाव सुविधा के रूप में उपलब्ध है। लॉन्च के समय, आप Python, Java और JavaScript के लिए कोड अनुशंसाएँ उत्पन्न करने के लिए CodeWhisperer का उपयोग कर सकते हैं। आप अपने आईडीई के प्लगइन या एक्सटेंशन स्क्रीन पर जाकर और एडब्ल्यूएस टूलकिट की खोज करके एडब्ल्यूएस टूलकिट स्थापित कर सकते हैं।

CodeWhisperer के सक्षम होने के बाद, जैसे ही आप अपना कोड या टिप्पणियाँ लिखना शुरू करते हैं, आप अपने IDE में कोड अनुशंसाएँ प्राप्त करना शुरू कर देते हैं। आप जहां हैं वहां डेवलपर्स से मिल कर, हम CodeWhisperer को प्रयोग करने और प्रयोग करने में आसान बना रहे हैं। आप कुछ ही मिनटों में शुरू कर सकते हैं और तुरंत उत्पादकता लाभों का आनंद लेना शुरू कर सकते हैं।

पारंपरिक स्वत: पूर्ण से कहीं अधिक

पारंपरिक स्वत: पूर्ण उपकरण एकल-शब्द पूर्णता प्रदान करते हैं, उदाहरण के लिए, किसी वस्तु के गुणों या विधियों की सूची। CodeWhisperer एक बार में संपूर्ण फ़ंक्शन और लॉजिकल कोड ब्लॉक उत्पन्न करके बेहतर उत्पादकता को बढ़ावा देता है। साथ ही, CodeWhisperer डेवलपर के इरादे को समझता है जैसा कि सादे अंग्रेजी टिप्पणियों के माध्यम से व्यक्त किया गया है। निम्न उदाहरण दिखाता है कि कैसे CodeWhisperer JSON फ़ाइल को CSV फ़ाइल में कनवर्ट करने के लिए संपूर्ण फ़ंक्शन उत्पन्न करता है, जबकि डेवलपर के इरादे पर विचार करते हुए कि JSON फ़ाइल में कुंजियों को CSV फ़ाइल के हेडर के रूप में उपयोग करना है।

AWS पर एप्लिकेशन बनाना अब आसान हो गया है

CodeWhisperer सबसे लोकप्रिय सेवाओं में AWS एप्लिकेशन प्रोग्रामिंग इंटरफेस (API) के लिए कोड अनुशंसाएं प्रदान करके डेवलपर्स के लिए AWS सेवाओं का उपयोग करना आसान बनाता है, जिसमें शामिल हैं अमेज़ॅन इलास्टिक कम्प्यूट क्लाउड (अमेज़ॅन ईसी 2), लैम्ब्डा, और अमेज़न सरल भंडारण सेवा (अमेज़ॅन एस 3)। जब आप अपने IDE में कोड लिखते हैं, CodeWhisperer स्वचालित रूप से टिप्पणी का विश्लेषण करता है, वांछित कार्यक्षमता के लिए प्रासंगिक क्लाउड सेवाओं और सार्वजनिक सॉफ़्टवेयर लाइब्रेरी का उपयोग करके कोड को इकट्ठा करता है, और कोड स्निपेट और यहां तक ​​कि IDE में सीधे संपूर्ण कार्यों की सिफारिश करता है जो सर्वोत्तम प्रथाओं को पूरा करते हैं। निम्न उदाहरण दिखाता है कि कैसे CodeWhisperer सर्वर-साइड एन्क्रिप्शन का उपयोग करके Amazon S3 पर फ़ाइल अपलोड करने के लिए संपूर्ण फ़ंक्शन उत्पन्न कर सकता है।

एआई की शक्ति का जिम्मेदारी से उपयोग करना

हमने अनुशंसाओं की सटीकता में सुधार के लिए बड़ी मात्रा में सार्वजनिक रूप से उपलब्ध कोड पर CodeWhisperer मॉडल को प्रशिक्षित किया है। सीधे शब्दों में कहें, मॉडल की सटीकता सीधे प्रशिक्षण डेटा के आकार के समानुपाती होती है। और जबकि इसने हमें सटीकता के मोर्चे पर मदद की है, इस प्रकार के मॉडल कुछ अवांछित पैटर्न भी सीख सकते हैं। हमारा मानना ​​है कि एआई निस्संदेह उत्पादकता को बढ़ा सकता है, लेकिन हमें इस शक्ति का एक जिम्मेदार तरीके से उपयोग करना होगा। कुछ असाधारण क्षमताएं हैं जो इस स्थान में CodeWhisperer को अद्वितीय बनाती हैं।

AWS में, हम यह कहना पसंद करते हैं कि सुरक्षा कार्य शून्य है। इसलिए CodeWhisperer सुरक्षा कमजोरियों का पता लगाने के लिए आपके कोड पर स्कैन चलाने की क्षमता भी प्रदान करता है (CodeWhisperer द्वारा उत्पन्न और साथ ही आपके द्वारा लिखित)। निम्न स्क्रीनशॉट CodeWhisperer की सुरक्षा स्कैनिंग कार्यक्षमता को दिखाता है। हमने एक कोड स्निपेट शामिल किया है जो संसाधन रिसाव का कारण बन सकता है। जब आप चुनते हैं सुरक्षा स्कैन चलाएं, CodeWhisperer इस भेद्यता का पता लगाता है और समस्या को प्रदर्शित करता है।

दूसरा, हम एक संदर्भ ट्रैकर प्रदान कर रहे हैं जो यह पता लगा सकता है कि कब उत्पन्न आउटपुट विशेष प्रशिक्षण डेटा के समान हो सकते हैं। यद्यपि मॉडल ने कोड लिखना सीख लिया है और सीखने के आधार पर पूरी तरह से नया कोड तैयार करता है, बहुत ही दुर्लभ मामलों में, स्वतंत्र रूप से उत्पन्न कोड अनुशंसा प्रशिक्षण डेटा में एक अद्वितीय कोड स्निपेट जैसा हो सकता है। ऐसा होने पर आपको सूचित करके, और आपको रिपोजिटरी और लाइसेंसिंग जानकारी प्रदान करके, CodeWhisperer आपके लिए यह तय करना आसान बनाता है कि आपके प्रोजेक्ट में कोड का उपयोग करना है या नहीं और प्रासंगिक स्रोत कोड एट्रिब्यूशन जैसा आप उचित समझते हैं।

CodeWhisperer आपको वास्तविक समय में बताता है कि वर्तमान कोड अनुशंसा जो आप देख रहे हैं वह अनुशंसा पॉप-अप में एक अधिसूचना दिखा कर संदर्भ कोड के समान हो सकती है। निम्नलिखित स्क्रीनशॉट में, उत्पन्न कोड एक संदर्भ कोड के समान पाया जाता है जो MIT लाइसेंस के अंतर्गत है। यदि डेवलपर अनुशंसा को स्वीकार करता है, तो CodeWhisperer स्वीकृति और संबंधित लाइसेंसिंग जानकारी को लॉग करता है। फिर आप CodeWhisperer नोड के अंतर्गत Open CodeWhisperer Reference Panel चुनकर संदर्भ लॉग देख सकते हैं।

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

CodeWhisperer के साथ उत्पादकता लाभ अनलॉक करना

“कोडिंग करते समय ध्यान भटकाना एक निरंतर चुनौती है, खासकर जब वेब पर कोड नमूने और दस्तावेज़ीकरण देखने के लिए संदर्भ को बदलना आवश्यक हो। Amazon CodeWhisperer मुझे जरूरत पड़ने पर स्वचालित रूप से उपयोगी सुझाव देकर कोड पर ध्यान केंद्रित रखता है, इसलिए मुझे अपने संपादक को कभी नहीं छोड़ना है। ”

- रयान ग्रोव, स्मॉगमुग में स्टाफ सॉफ्टवेयर इंजीनियर।

“हम Amazon CodeWhisperer को IntelliJ प्लेटफॉर्म पर लाने के लिए AWS के साथ काम करने को लेकर उत्साहित हैं। JetBrains में, हमारा लक्ष्य सॉफ्टवेयर विकास को एक सहज और सुखद अनुभव बनाना है। हमारे टूल के लिए प्लगइन की उपलब्धता डेवलपर्स को अपने आईडीई पर ध्यान केंद्रित करने में मदद करेगी और वेब से कोड स्निपेट को खोजने और अनुकूलित करने की आवश्यकता को कम करेगी। आज की स्थिति में, IntelliJ IDEA, PyCharm, और WebStorm के उपयोगकर्ता अपने IDE में Amazon CodeWhisperer के साथ काम करना शुरू कर सकते हैं, और निकट भविष्य में और IDEs का समर्थन किया जाएगा।

- मैक्स शाफिरोव, जेटब्रेन के सीईओ।

Getting Started

पूर्वावलोकन अवधि के दौरान, CodeWhisperer दुनिया भर के सभी डेवलपर्स के लिए मुफ्त में उपलब्ध है। पूर्वावलोकन में सेवा का उपयोग करने के लिए, प्रतीक्षा सूची में शामिल हों साइन उप हो रहा है. सेवा के बारे में अधिक जानकारी के लिए देखें अमेज़ॅन कोडव्हिस्पीर.


लेखक के बारे में

अंकुर देसाई एडब्ल्यूएस एआई सर्विसेज टीम के भीतर एक प्रमुख उत्पाद प्रबंधक है।

अतुल देव एडब्ल्यूएस एआई सर्विसेज टीम के साथ उत्पाद प्रबंधन निदेशक हैं।

समय टिकट:

से अधिक AWS मशीन लर्निंग

अमेज़ॅन सेजमेकर स्टूडियो और अमेज़ॅन सेजमेकर ऑटोपायलट का उपयोग करके उपग्रह छवि सुविधाओं का उपयोग करके मैंग्रोव वनों की पहचान करें - भाग 1

स्रोत नोड: 1497650
समय टिकट: जून 21, 2022