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

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

यह पैटर्न तब उपयोगी होता है जब आप ऐसा एप्लीकेशन बनाना चाहते हैं जहाँ कई एजेंट उपयोगकर्ताओं को सिफारिशें करने के लिए मिलकर काम करें।
आप चाहेंगे कि कई एजेंट सहयोग करें क्योंकि प्रत्येक एजेंट के पास विभिन्न विशेषज्ञताएं हो सकती हैं और वे सिफारिश प्रक्रिया में अलग-अलग तरीके से योगदान दे सकते हैं।
चलिए एक उदाहरण लेते हैं जहाँ उपयोगकर्ता को स्टॉक मार्केट में सबसे अच्छा स्टॉक खरीदने की सिफारिश चाहिए।

ऐसे परिदृश्य पर विचार करें जहाँ ग्राहक किसी उत्पाद के लिए रिफंड प्राप्त करने की कोशिश कर रहा है। इस प्रक्रिया में कई एजेंट शामिल हो सकते हैं, लेकिन आइए इसे इस प्रक्रिया के लिए विशिष्ट एजेंटों और अन्य प्रक्रियाओं में उपयोग किए जाने वाले सामान्य एजेंटों में विभाजित करें।
रिफंड प्रक्रिया के लिए विशिष्ट एजेंट:
रिफंड प्रक्रिया में शामिल हो सकने वाले कुछ एजेंट निम्नलिखित हैं:
सामान्य एजेंट:
ये एजेंट आपके व्यवसाय के अन्य हिस्सों द्वारा उपयोग किए जा सकते हैं।
पिछली सूची में रिफंड प्रक्रिया के लिए विशिष्ट एजेंट और अन्य व्यवसाय भागों में उपयोग किए जाने वाले सामान्य एजेंट दोनों शामिल हैं। उम्मीद है इससे आपको यह विचार मिलेगा कि अपने मल्टी-एजेंट सिस्टम में किन एजेंटों का उपयोग करना है।
ग्राहक सहायता प्रक्रिया के लिए एक मल्टी-एजेंट सिस्टम डिज़ाइन करें। प्रक्रिया में शामिल एजेंटों, उनकी भूमिकाओं और जिम्मेदारियों, और वे एक दूसरे के साथ कैसे इंटरैक्ट करते हैं, की पहचान करें। ग्राहक सहायता प्रक्रिया के विशिष्ट एजेंटों और आपके व्यवसाय के अन्य हिस्सों में उपयोग किए जाने वाले सामान्य एजेंटों दोनों पर विचार करें।
निम्नलिखित समाधान पढ़ने से पहले एक बार सोचें, आपको जितने एजेंट्स की जरूरत लगती है उससे ज्यादा की आवश्यकता हो सकती है।
TIP: ग्राहक सहायता प्रक्रिया के विभिन्न चरणों के बारे में सोचें और किसी भी सिस्टम के लिए आवश्यक एजेंट्स पर भी विचार करें।
कौन सा परिदृश्य मल्टी-एजेंट सिस्टम के लिए सबसे उपयुक्त है?
कब एक एकल एजेंट आमतौर पर बेहतर विकल्प होता है?
इस पाठ में, हमने मल्टी-एजेंट डिज़ाइन पैटर्न को देखा, जिसमें वे परिदृश्य शामिल हैं जहां मल्टी-एजेंट लागू होते हैं, एकल एजेंट पर मल्टी-एजेंट के उपयोग के लाभ, मल्टी-एजेंट डिज़ाइन पैटर्न को लागू करने के निर्माण ब्लॉक, और यह कि कैसे यह देखा जाए कि विभिन्न एजेंट एक-दूसरे के साथ कैसे इंटरैक्ट कर रहे हैं।
अन्य शिक्षार्थियों से मिलने, ऑफिस आवर्स में भाग लेने और अपने AI एजेंट सवालों के जवाब पाने के लिए Microsoft Foundry Discord से जुड़ें।
अस्वीकरण: इस दस्तावेज़ का अनुवाद AI अनुवाद सेवा Co-op Translator का उपयोग करके किया गया है। जबकि हम सटीकता के लिए प्रयास करते हैं, कृपया ध्यान दें कि स्वचालित अनुवादों में त्रुटियाँ या अशुद्धियाँ हो सकती हैं। मूल दस्तावेज़ अपनी मूल भाषा में ही प्रामाणिक स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए, पेशेवर मानव अनुवाद की सिफारिश की जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या गलत व्याख्या के लिए हम उत्तरदायी नहीं हैं।