ComAct: Reframing Professional Software Manipulation via COM-as-Action Paradigm
यह शोध पत्र COM-as-Action प्रतिमान और ComActor एजेंट को प्रस्तुत करता है, जो पेशेवर सॉफ़्टवेयर हेरफेर को नाजुक विज़ुअल कंट्रोल से निर्धारित प्रोग्राम सिंथेसिस में बदलने के लिए कंपोनेंट ऑब्जेक्ट मॉडल का लाभ उठाते हैं, जिससे नए ComCADBench पर औद्योगिक CAD कार्यों में अत्याधुनिक प्रदर्शन प्राप्त होता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक रोबोट को जटिल प्रोफेशनल सॉफ्टवेयर, जैसे कि एक हाई-एंड 3D डिज़ाइन प्रोग्राम (CAD), का उपयोग करना सिखाने की कोशिश कर रहे हैं। वर्तमान में, लोग इसे करने के दो मुख्य तरीके अपनाते हैं, और दोनों में बड़ी समस्याएँ हैं:
"पिक्सेल की ताक में" रहने वाला रोबोट (GUI-आधारित): यह रोबोट सॉफ्टवेयर का उपयोग बिल्कुल वैसे ही करने की कोशिश करता है जैसे एक इंसान करता है। यह स्क्रीन को देखता है, अपनी आँखों से एक बटन ढूँढता है, और उस पर क्लिक करता है।
- समस्या: प्रोफेशनल सॉफ्टवेयर की स्क्रीन अव्यवस्थित और उलझी हुई होती है। यदि रोबोट एक सिंगल पिक्सेल की भी चूक कर देता है, या यदि स्क्रीन थोड़ी अलग दिखती है, तो वह भ्रमित हो जाता है। यदि वह शुरुआत में कोई गलती करता है, तो वह त्रुटि जमा होती जाती है, और जब तक वह काम पूरा करता है, तब तक पूरा प्रोजेक्ट बर्बाद हो चुका होता है। यह बिना किसी ब्लूप्रिंट के ईंटों को आपस में टकराकर एक घर बनाने की कोशिश करने जैसा है।
"टूलबॉक्स" रोबोट (API-आधारित): यह रोबोट प्रत्येक विशिष्ट सॉफ्टवेयर के लिए एक विशेष रिमोट कंट्रोल या कमांड लाइन का उपयोग करने की कोशिश करता है।
- समस्या: हर सॉफ्टवेयर कंपनी (जैसे Adobe, Microsoft, या Autodesk) अपने रिमोट कंट्रोल के लिए एक अलग भाषा का उपयोग करती है। कुछ तो आपको इनका उपयोग करने की अनुमति भी नहीं देते। यह एक शहर के हर दरवाजे के लिए एक अलग चाबी रखने जैसा है, और कई दरवाजों के लिए तो आपके पास चाबी है ही नहीं।
नया विचार: "मास्टर की" (COM-as-Action)
इस पेपर के लेखकों ने एक "मास्टर की" (Master Key) की खोज की है जो लगभग सभी प्रोफेशनल विंडोज सॉफ्टवेयर में पहले से ही मौजूद है। इसे COM (कंपोनेंट ऑब्जेक्ट मॉडल) कहा जाता है।
COM को स्क्रीन पर दिखने वाले विजुअल बटन के रूप में नहीं, बल्कि सॉफ्टवेयर के दिमाग तक पहुँचने वाली एक सीधी, गुप्त टेलीफोन लाइन के रूप में समझें। रोबोट को यह कहने के बजाय कि "लाल बटन ढूँढो और उस पर क्लिक करो," आप सीधे कह सकते हैं, "यहाँ एक वृत्त (circle) बनाओ," और सॉफ्टवेयर इसे तुरंत और पूरी तरह से कर देता है।
बड़ा बदलाव:
सॉफ्टवेयर पर इधर-उधर क्लिक करने वाले एक अनाड़ी इंसान की तरह काम करने के बजाय, ComAct रोबोट को एक प्रोग्रामर में बदल देता है। यह एक छोटा, सटीक स्क्रिप्ट (निर्देशों का एक सेट) लिखता है जिसे सॉफ्टवेयर सीधे निष्पादति (execute) करता है। यह "अनाड़ी इंसान" वाली गलतियों को दूर करता है और रोबोट को अपना रास्ता भटके बिना जटिल, बहु-चरणीय कार्यों को संभालने की अनुमति देता है।
"जिम" और "कोच"
इसे सिद्ध करने के लिए, टीम ने तीन प्रमुख चीजें बनाईं:
- ComCADBench (परीक्षा): उन्होंने वास्तविक औद्योगिक डिज़ाइन सॉफ्टवेयर का उपयोग करने वाले रोबोटों के लिए पहला विशेष टेस्ट बनाया है। यह एक ड्राइविंग टेस्ट की तरह है, लेकिन कार के बजाय, रोबोट को जटिल 3D मॉडल और इंजीनियरिंग ड्राइंग बनानी होती है।
- ComForge (जिम): इस तरह के रोबोट को प्रशिक्षित करना कठिन है क्योंकि आपको अभ्यास करने के लिए एक ही समय में हजारों वास्तविक कंप्यूटरों की आवश्यकता होती है। उन्होंने हजारों वर्चुअल विंडोज कंप्यूटरों का एक विशाल "जिम" बनाया है जहाँ रोबोट बिना असली मशीनों को क्रैश किए 24/7 अभ्यास कर सकता है।
- ComActor (छात्र): यह उनका नया रोबोट एजेंट है। उन्होंने इसे केवल एक बार नहीं सिखाया; उन्होंने एक तीन-चरणीय प्रशिक्षण पद्धति का उपयोग किया:
- चरण 1 (वर्णमाला सीखना): रोबोट को "मास्टर की" (COM) के बुनियादी सिंटैक्स (syntax) को सिखाना ताकि वह वैध स्क्रिप्ट लिख सके।
- चरण 2 (गलतियों से सीखना): रोबोट को प्रयास करने, विफल होने, एरर मैसेज देखने और अपने स्वयं के कोड को ठीक करने देना। वह सीखता है कि, "ओह, मैंने ऐसी जगह रेखा खींचने की कोशिश की जहाँ कुछ नहीं था, चलिए इसे ठीक करता हूँ।"
- चरण 3 (आर्ट क्रिटिक/कला समीक्षक): कभी-कभी कोड काम तो करता है, लेकिन 3D आकार थोड़ा गलत होता है (जैसे कि एक टेढ़ी कुर्सी)। उन्होंने एक विशेष रिवॉर्ड सिस्टम का उपयोग किया जो परिणाम की सटीक ज्यामिति (geometry) को मापता है। यदि आकार एकदम सही नहीं है, तो रोबोट को "खराब ग्रेड" मिलता है और उसे तब तक फिर से प्रयास करना पड़ता है जब तक कि आकार गणितीय रूप से सटीक न हो जाए।
परिणाम
जब उन्होंने ComActor को टेस्ट किया:
- पुराने रोबोट (GUI-आधारित): वे लगभग सब कुछ में विफल रहे (0% सफलता)। वे विजुअल क्लटर (दृश्य अव्यवस्था) में खो गए।
- स्मार्ट रोबोट (टॉप AI मॉडल्स) पुराने तरीके का उपयोग करते हुए: सबसे स्मार्ट AI मॉडल भी बटनों पर क्लिक करने के दौरान विफल रहे।
- ComActor: इसने स्टेट-ऑफ-द-आर्ट (अत्याधुनिक) परिणाम प्राप्त किए। इसने केवल सफलता ही नहीं पाई; इसने लंबे, जटिल कार्यों (जैसे एक पुर्जा बनाना, उसे असेंबल करना और फिर उसका ब्लूप्रिंट बनाना) को भी सफलतापूर्वक संभाला जहाँ अन्य रोबोट विफल हो जाते। इसने उन अन्य प्रकार के डिज़ाइन टेस्ट्स पर भी अच्छा प्रदर्शन किया जिन्हें इसने पहले नहीं देखा था।
निचोड़ (Bottom Line)
यह पेपर तर्क देता है कि प्रोफेशनल सॉफ्टवेयर को ऑटोमेट करने के लिए, हमें रोबोट को इंसानों की तरह दिखने (बटन क्लिक करने) की कोशिश नहीं करनी चाहिए, बल्कि उन्हें सॉफ्टवेयर के अंतर्निहित "ब्रेन इंटरफेस" (COM) का उपयोग करने वाले प्रोग्रामर की तरह काम करना सिखाना चाहिए। ऐसा करके, और उन्हें एक विशाल वर्चुअल जिम और एक सख्त "ज्यामिति कोच" के साथ प्रशिक्षित करके, वे सटीकता और विश्वसनीयता का वह स्तर प्राप्त कर सकते हैं जो पहले असंभव था।
नोट: लेखक स्पष्ट रूप से कहते हैं कि उनका वर्तमान कार्य विंडोज पर CAD सॉफ्टवेयर तक ही सीमित है। हालांकि, उनका मानना है कि यह भविष्य में Office या Adobe सॉफ्टवेयर के लिए भी काम कर सकता है, लेकिन उनका पेपर अभी केवल 3D डिज़ाइन टूल्स के लिए इसे सिद्ध करता है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।