वेरिएबल के साथ कार्य करें
आप ग्राहकों की प्रतिक्रियाओं को सहेजने और बाद में बातचीत में उनकी सामग्री का पुनः उपयोग करने के लिए चरों का उपयोग कर सकते हैं।
आप तार्किक अभिव्यक्तियाँ बनाने के लिए चरों का भी उपयोग कर सकते हैं जो ग्राहक को गतिशील रूप से विभिन्न वार्तालाप पथों पर ले जाती हैं। उदाहरण के लिए, किसी ग्राहक का नाम "customerName" नामक चर में सहेजें, और एजेंट बातचीत जारी रहने पर ग्राहक को नाम से संबोधित कर सकता है।
चरों को अन्य विषयों और Power Automate प्रवाहों में भी पास किया जा सकता है और उनसे वापस भी लाया जा सकता है।
चर बनाएं
कोई भी नोड जो आपको आउटपुट के रूप में एक चर का चयन करने के लिए संकेत देता है, जैसे कि a प्रश्न नोड, स्वचालित रूप से उपयुक्त प्रकार का एक आउटपुट चर बनाता है।
टिप
नोड्स का नाम बदलें ताकि उन्हें पहचानना आसान हो जाए। नाम को सीधे अपडेट करने के लिए नोड के नाम फ़ील्ड का चयन करें, या नोड के अधिक आइकन (… ) का चयन करें और मेनू से नाम बदलें का चयन करें। आप कोड संपादक में नोड्स का नाम भी बदल सकते हैं।
ट्रिगर नोड्स और चरण नोड्स पर जाएँ का नाम बदलना संभव नहीं है।
नोड नाम की लंबाई 500 अक्षरों तक हो सकती है.
उपयोग करने हेतु एक निकाय का चयन करें
प्रश्न नोड्स डिफ़ॉल्ट रूप से बहुविकल्पीय विकल्पों के साथ बनाए जाते हैं। किसी भिन्न पूर्वनिर्मित या कस्टम इकाई का उपयोग करने के लिए, पहचानें बॉक्स का चयन करें और उस जानकारी का प्रकार चुनें जिसे एजेंट को सुनना चाहिए।
चर का नाम बदलें
जब आप वेरिएबल्स बनाते हैं तो उन्हें स्वचालित रूप से एक नाम दे दिया जाता है। सर्वोत्तम अभ्यास यह है कि आप अपने चरों को सार्थक नाम दें, ताकि उनका उद्देश्य उन लोगों के लिए स्पष्ट हो जाए, जिन्हें आपके एजेंट का रखरखाव करना है।
चर गुण फलक में इसे खोलने के लिए चर का चयन करें.
चर नाम के अंतर्गत, अपने चर के लिए एक नया नाम दर्ज करें।
एक चर सेट करें
आमतौर पर आप उपयोगकर्ता इनपुट को किसी चर में संग्रहीत करने के लिए प्रश्न नोड का उपयोग करते हैं। हालाँकि, ऐसी परिस्थितियाँ हो सकती हैं जहाँ आप स्वयं किसी चर का मान निर्धारित करना चाहें। उन मामलों में, सेट वैरिएबल वैल्यू नोड का उपयोग करें।
नोड जोड़ने के लिए नोड जोड़ें (+) का चयन करें, और फिर चर प्रबंधन>चर मान सेट करें का चयन करें.
चर सेट करें के अंतर्गत बॉक्स का चयन करें, और फिर नया चर बनाएँ का चयन करें.
एक नया चर बनाया गया है. इसका प्रकार अज्ञात है जब तक कि आप इसे कोई मान निर्दिष्ट नहीं करते।
मूल्य के लिए , निम्न विकल्पों में से किसी एक का उपयोग करके मान निर्दिष्ट करें:
- एक शाब्दिक मान टाइप करें.
- समान प्रकार का कोई मौजूदा चर चुनें. यह क्रिया आपके चर को आपके द्वारा चयनित चर के समान मान पर सेट करती है।
- एक सूत्र का प्रयोग करें Power Fx . Power Fx सूत्र अधिक जटिल प्रकारों के लिए उपयोगी होते हैं जहाँ शाब्दिक मानों का उपयोग नहीं किया जा सकता है, जैसे तालिका और रिकॉर्ड प्रकार।
नोट
स्ट्रिंग प्रकार चर सेट करते समय, यदि आपको चर सेट करें और मान पर के बीच कोई बेमेल मिलता है, तो एक त्रुटि संदेश और प्रकार बेमेल ठीक करें बटन प्रकट होता है। Copilot Studio स्वचालित रूप से एक Power Fx सूत्र उत्पन्न करने के लिए बटन का चयन करें जो बेमेल को हल करता है।
क्रिया नोड्स में चर का उपयोग करें
जब आप किसी क्रिया नोड में किसी चर का उपयोग करते हैं, यदि उसका आधार प्रकार किसी प्रवाह या किसी कौशल के लिए निर्दिष्ट पैरामीटर प्रकार से मेल खाता है, तो आप उसे उस पैरामीटर में फीड कर सकते हैं। Bot Framework एक्शन नोड्स से आउटपुट नए वेरिएबल्स उत्पन्न करता है।
परिवर्तनीय इनपुट के लिए शाब्दिक मानों का उपयोग करें
उन नोड्स में जहां आप इनपुट पैरामीटर्स के लिए मान सेट कर सकते हैं, आप मान के रूप में किसी अन्य चर का चयन करने के बजाय हमेशा शाब्दिक मान दर्ज कर सकते हैं।
नोड शाब्दिक मानों को स्ट्रिंग, संख्या या बूलियन के रूप में व्याख्या करने का प्रयास करता है। उदाहरण के लिए, 123 को एक संख्या के रूप में समझा जाता है। यदि आप चाहते हैं कि इसे एक स्ट्रिंग मान के रूप में समझा जाए, तो आप मान को दोहरे उद्धरण चिह्नों में लपेट सकते हैं, जैसे: "123" ।
कुछ परिदृश्यों के लिए (उदाहरण के लिए, जटिल प्रकारों का उपयोग करने वाले परिदृश्य), आपको एक विशिष्ट प्रकार सेट करने के लिए Power Fx सूत्र का उपयोग करने की आवश्यकता हो सकती है।
Azure Key Vault रहस्यों के लिए पर्यावरण चर का उपयोग करें
एक पर्यावरण चर कुंजी वॉल्ट में एक गुप्त संदर्भ दे सकता है। गुप्त पर्यावरण चर, अद्वितीय विचारों वाले पर्यावरण चर का एक विशेष मामला है।
पोर्टल में गुप्त पर्यावरण चर बनाने के लिए, आपको इसके कुंजी वॉल्ट को कॉन्फ़िगर करना होगा। Power Apps
इस कुंजी वॉल्ट को पढ़ने के लिए अधिकृत करने के लिए, आपको निम्नलिखित क्रियाएं करनी होंगी: Copilot Studio
अनुप्रयोग को भूमिका असाइन करें.
Key Vault Secrets User
Microsoft Virtual Agents Service
परिवेश से सभी एजेंटों को गुप्त जानकारी तक पहुंचने के लिए अधिकृत करने के लिए, गुप्त जानकारी पर एक टैग
AllowedEnvironments
बनाएं और अल्पविराम से अलग करके अनुमत परिवेश आईडी जोड़ें।इस कुंजी वॉल्ट का उपयोग करने के लिए परिवेश से केवल विशिष्ट एजेंटों को अधिकृत करने के लिए, एक टैग
AllowedAgents
बनाएं और एजेंट पहचानकर्ता को{envId}/{schemaName}
प्रारूप में डालें। एकाधिक मानों के लिए, मानों को अल्पविराम से अलग करें.
यदि आप वर्णों की अधिकतम संख्या तक पहुँच जाते हैं, लेकिन फिर भी आपको अधिक एजेंट जोड़ने की आवश्यकता है, तो वर्णनात्मक लेकिन अद्वितीय नाम वाला एक और टैग जोड़ें (उदाहरण के लिए: AllowedAgents2
)।
गुप्त मान को डायलॉग रनटाइम में पांच मिनट के लिए कैश किया जाता है। असफल पठन को 30 सेकंड के लिए कैश किया जाता है।
चेतावनी
एजेंट में सीक्रेट जोड़कर, आप इस सीक्रेट के मान को उन सभी उपयोगकर्ताओं के समक्ष उजागर कर सकते हैं जो परिवेश में एजेंट को संपादित कर सकते हैं, क्योंकि ऐसे उपयोगकर्ता SendMessage
नोड में मान लौटाने के लिए एजेंट को संपादित कर सकते हैं।
चर फलक
चर फलक वह स्थान है जहाँ आप किसी विषय के लिए उपलब्ध सभी चर देख सकते हैं, भले ही वे किस नोड में परिभाषित या उपयोग किए गए हों। प्रत्येक चर के लिए, आप यह चुन सकते हैं कि वह अन्य विषयों से अपना मान प्राप्त कर सकता है, अन्य विषयों को अपना मान लौटा सकता है, या दोनों। आप चर गुण फलक में किसी चर का चयन करके उसके गुणों को संपादित भी कर सकते हैं।
चर फलक खोलने के लिए, विषय के मेनू बार में, चर का चयन करें.
चर गुण फलक
परिवर्तनीय गुण फलक में, आप किसी चर का नाम बदल सकते हैं, देख सकते हैं कि इसका उपयोग कहां किया गया है, या इसे वैश्विक चर में परिवर्तित कर सकते हैं. हालाँकि, आप किसी वैश्विक चर को वापस विषय चर में परिवर्तित नहीं कर सकते। आप यह भी चुन सकते हैं कि कोई विषय चर अन्य विषयों से मान प्राप्त कर सकता है या उन्हें अपना मान दे सकता है।
किसी चर के लिए चर गुण फलक खोलने के लिए, चर फलक में वांछित चर का चयन करें। आप किसी भी नोड में चर का चयन करके चर गुण फलक भी खोल सकते हैं।
विषयों के बीच चर पास करें
जब आप एक विषय को दूसरे पर पुनर्निर्देशित करते हैं, तो आप मूल विषय से गंतव्य विषय तक चरों के मानों को पास कर सकते हैं और गंतव्य विषय से मूल विषय तक मान भी लौटा सकते हैं। विषयों के बीच चरों को पास करना विशेष रूप से तब उपयोगी होता है जब पहले वाले विषय में पहले से ही वह जानकारी एकत्रित हो चुकी हो जिसकी बाद वाले विषय को आवश्यकता होती है। आपके उपयोगकर्ता इस बात से प्रसन्न होंगे कि उन्हें एक ही प्रश्न का उत्तर दोबारा नहीं देना पड़ेगा।
अन्य विषयों से मान प्राप्त करें
जब कोई विषय किसी चर को परिभाषित करता है (उदाहरण के लिए, a Question नोड में), तो एजेंट उपयोगकर्ता से चर का मान भरने के लिए प्रश्न पूछता है। यदि एजेंट ने पहले ही किसी विषय में मूल्य प्राप्त कर लिया है, तो प्रश्न को दोबारा पूछने का कोई कारण नहीं है। इन मामलों में, आप चर को अन्य विषयों से मान प्राप्त करें पर सेट कर सकते हैं. जब कोई अन्य विषय इस पर पुनर्निर्देशित करता है, तो वह इस चर में या तो किसी चर का मान या कोई शाब्दिक मान पारित कर सकता है, और प्रश्न को छोड़ सकता है। उपयोगकर्ता के लिए एजेंट से बात करने का अनुभव सहज है।
इस उदाहरण में, हम दो विषयों का उपयोग करते हैं, अभिवादन और ग्राहक से बात करें। दोनों विषयों में ग्राहक का नाम पूछा जाता है। हालाँकि, यदि अभिवादन विषय पहले चलता है, तो ग्राहक से बात करें विषय अपना प्रश्न छोड़ देता है। इसके बजाय, यह ग्रीटिंग विषय से पारित चर के मान का उपयोग करता है।
ग्राहक से बात करें विषय का प्रवाह इस प्रकार है:
जैसा कि परीक्षण पैनल में दिखाया गया है, यदि यह विषय पहले ट्रिगर होता है, तो यह उपयोगकर्ता से पूछता है, "मुझे आपको क्या कॉल करना चाहिए?" यह मान को customerName नामक स्ट्रिंग वैरिएबल में संग्रहीत करता है। customerName चर को अन्य विषयों से अपना मान प्राप्त करने के लिए भी सेट किया गया है। विषय इस संदेश के साथ समाप्त होता है, "मुझे आशा है कि आपका दिन बहुत अच्छा गुजर रहा होगा, customerName!"
यहाँ अभिवादन विषय का प्रवाह है:
जैसा कि परीक्षण पैनल में दिखाया गया है, यदि यह विषय पहले ट्रिगर किया जाता है, तो यह उपयोगकर्ता से पूछता है, "आपका नाम क्या है?" यह मान को customerName नामक स्ट्रिंग चर में संग्रहीत करता है। विषय यह संदेश भेजता है, "आपसे मिलकर खुशी हुई, ग्राहक का नाम!" फिर यह ग्राहक से बात करें विषय पर पुनर्निर्देशित करता है, जो संदेश भेजता है, "मुझे आशा है कि आपका दिन बहुत अच्छा गुजर रहा होगा, ग्राहक का नाम!" हालाँकि, ध्यान दें कि ग्राहक से बात करें विषय ने उपयोगकर्ता का नाम फिर से पूछना छोड़ दिया। इसके बजाय, इसने ग्रीटिंग विषय से पास किए गए customerName चर के मान का उपयोग किया।
अंत में, यहाँ फिर से दूसरी बातचीत है, इस बार ग्राहक से बात करें विषय के परिप्रेक्ष्य से:
आइए, किसी विषय को अन्य विषयों से मान प्राप्त करने के लिए सेट अप करने के चरणों पर नजर डालें। हमारा उदाहरण परिदृश्य पूर्वनिर्धारित विषय अभिवादन को स्रोत विषय के रूप में उपयोग करता है, तथा एक नए विषय ग्राहक से बात करें को गंतव्य विषय के रूप में उपयोग करता है, लेकिन यही चरण किसी भी ऐसे विषय के लिए काम करते हैं, जिसमें जब भी संभव हो, पहले के विषय से मान का उपयोग किया जाना चाहिए।
गंतव्य विषय सेट करें
गंतव्य विषय वह विषय है जिस पर पुनर्निर्देशित किया जा रहा है, जो अन्य विषयों से मान प्राप्त करेगा। हमारे उदाहरण में, यह ग्राहक से बात करें है।
एक नया विषय बनाएं और उसे "ग्राहक से बात करें" नाम दें।
"मुझसे बात करो," "मुझसे बोलो," "मुझसे चैट करो" जैसे ट्रिगर वाक्यांश जोड़ें।
एक प्रश्न नोड जोड़ें और संदेश के लिए "मुझे आपको क्या कॉल करना चाहिए?" दर्ज करें।
पहचान के अंतर्गत, पूर्वनिर्मित इकाई व्यक्ति का नाम का चयन करें.
वेरिएबल का नाम चुनें. चर गुण पैनल खुलता है.
डिफ़ॉल्ट नाम को "customerName" से बदलें, और फिर अन्य विषयों से मान प्राप्त करें का चयन करें.
एक संदेश नोड जोड़ें.
संदेश बॉक्स में, "मुझे आशा है कि आपका दिन बहुत अच्छा गुजर रहा होगा" दर्ज करें।
चर सम्मिलित करें आइकन ({x}) का चयन करें, और फिर ग्राहक नाम का चयन करें.
वेरिएबल के बाद रिक्त स्थान चुनें और "!" प्रविष्ट करें।
विषय को सहेजें.
स्रोत विषय सेट करें
स्रोत विषय वह विषय है जो पुनर्निर्देशन करता है, वह विषय जो मान प्रदान करता है और उसे गंतव्य विषय तक पहुंचाता है। हमारे उदाहरण में, यह अभिवादन है।
ग्रीटिंग विषय पर जाएं और ट्रिगर नोड को छोड़कर, डिफ़ॉल्ट नोड्स को हटा दें।
एक प्रश्न नोड जोड़ें और संदेश के लिए "आपका नाम क्या है?" प्रविष्ट करें।
पहचान के अंतर्गत, पूर्वनिर्मित इकाई व्यक्ति का नाम का चयन करें.
डिफ़ॉल्ट नाम को "customerNameFromGreeting" से बदलें.
एक संदेश नोड जोड़ें।
संदेश बॉक्स में, "आपसे मिलकर खुशी हुई," दर्ज करें।
चर सम्मिलित करें आइकन ({x}) का चयन करें, और फिर ग्राहकनामसेग्रीटिंग का चयन करें.
वेरिएबल के बाद रिक्त स्थान चुनें और "!" प्रविष्ट करें।
एक रीडायरेक्ट नोड जोड़ें, और गंतव्य विषय ग्राहक से बात करें का चयन करें.
इनपुट जोड़ें का चयन करें, और फिर गंतव्य विषय से वह चर चुनें, जिसमें आप मान पास करना चाहते हैं.
इस उदाहरण में > आइकन का चयन करें, और फिर वह वेरिएबल चुनें जिसका मान आप पास करना चाहते हैं, customerNameFromGreeting.
रीडायरेक्ट नोड इस तरह दिखना चाहिए:
विषय को सहेजें.
मूल विषयों पर मान लौटाएँ
जब किसी विषय को पुनः निर्देशित किया जाता है और प्रश्न पूछकर या किसी अन्य तरीके से चर प्राप्त किया जाता है, तो चर को मूल विषय पर वापस लाया जा सकता है। यह चर मूल विषय का हिस्सा बन जाता है और इसका उपयोग किसी अन्य चर की तरह किया जा सकता है। इस प्रकार एजेंट द्वारा प्राप्त की गई जानकारी सभी विषयों में उपलब्ध होती है, जिससे वैश्विक चरों की आवश्यकता कम हो जाती है।
आइये, पिछले अनुभाग के उदाहरण से आगे बढ़ें। हम ग्राहक से बात करें विषय में एक नया प्रश्न पूछते हैं, और फिर अभिवादन विषय का उत्तर देते हैं।
लौटाए गए चर के लिए स्रोत विषय सेट करें
जब आप किसी विषय पर कोई चर लौटाते हैं, तो स्रोत विषय वह विषय होता है जो मूल विषय पर वापस भेजने के लिए मान प्रदान करता है। इस उदाहरण में, स्रोत विषय है ग्राहक से बात करें.
स्रोत विषय पर जाएँ.
एक प्रश्न नोड जोड़ें और संदेश के लिए "आप किस शहर में रहते हैं?" दर्ज करें।
पहचानें के अंतर्गत, पूर्वनिर्मित इकाई शहर का चयन करें.
चर गुण फलक खोलने के लिए चर का चयन करें. इसे "customerCity" नाम दें, और फिर मूल विषयों पर मान लौटाएँ चुनें.
एक संदेश नोड जोड़ें।
चर सम्मिलित करें आइकन ({x}) का चयन करें, और फिर ग्राहक शहर का चयन करें.
संदेश बॉक्स में वेरिएबल के बाद, "वर्ष का यह समय बहुत सुंदर होगा!" दर्ज करें।
विषय को सहेजें.
लौटाए गए चर के लिए गंतव्य विषय सेट करें
जब आप किसी विषय पर कोई चर लौटाते हैं, तो गंतव्य विषय वह विषय होता है जो वर्तमान विषय से मान प्राप्त करता है। हमारे उदाहरण में, गंतव्य विषय है अभिवादन.
गंतव्य विषय पर जाएँ.
स्रोत विषय में आपके द्वारा चयनित चर रीडायरेक्ट नोड पर आउटपुट चर के रूप में दिखाई देना चाहिए।
विषय को सहेजें.
पार्स मान नोड
पार्स वैल्यू नोड आपको एक प्रकार के मान को दूसरे प्रकार के मान में परिवर्तित करने की अनुमति देता है। किसी विषय में नोड जोड़ते समय, नोड जोड़ें आइकन का चयन करें, चर प्रबंधन पर इंगित करें, और मान पार्स करें का चयन करें.
पार्स वैल्यू नोड का उपयोग करने वाले मुख्य परिदृश्य कच्चे JSON या अप्रकारित चर (जिनका मूल्य या संरचना रनटाइम तक ज्ञात नहीं है; उदाहरण के लिए चैनलडाटा) को ठोस प्रकारों में परिवर्तित करने पर ध्यान केंद्रित करते हैं।
प्रक्रिया तब शुरू होती है जब एक प्रवाह को बुलाया जाता है, जो बदले में एक एपीआई को बुलाता है। इसके बाद API परिणाम लौटाता है। आमतौर पर, आपको इस प्रतिक्रिया को पार्स करने और एक या अधिक प्राथमिक चर लौटाने की आवश्यकता होगी। पार्स वैल्यू नोड के साथ, आप संपूर्ण API परिणाम को एक स्ट्रिंग के रूप में भेज सकते हैं। उदाहरण के लिए:
{
"Name": "Parker",
"Position": "Product manager",
"Company": "Contoso",
"FormerPositions": [{
"Position": "Customer service representative"
}
]
}
अब आपके पास जो स्ट्रिंग वेरिएबल है, उसे इस नए नोड का उपयोग करके Power Fx में पूर्ण इंटेलीसेंस समर्थन के साथ रिकॉर्ड वेरिएबल में परिवर्तित किया जा सकता है। नमूना डेटा का उपयोग करके एक उदाहरण इस प्रक्रिया को स्पष्ट करने में मदद करेगा।
पार्स वैल्यू नोड का उपयोग करने का उदाहरण
एक पार्स वैल्यू नोड जोड़ें, और उस वेरिएबल का चयन करें जिसे आप पार्स करना चाहते हैं।
डेटा प्रकार का चयन करें. इस स्थिति में नमूना डेटा से चुनें।
नमूना JSON से स्कीमा प्राप्त करें का चयन करें और खुलने वाले संपादक में वांछित JSON उदाहरण दर्ज करें।
अंत में, निर्दिष्ट करें कि आप पार्स किए गए मान को किस चर में रखना चाहते हैं। आमतौर पर आप इसके लिए एक नया वेरिएबल बनाएंगे।
ध्यान दें कि आउटपुट वेरिएबल अब सही प्रकार का है: रिकॉर्ड.
JSON स्ट्रिंग्स को पार्स करने के साथ-साथ, Parse value नोड का एक प्रमुख उपयोग रनटाइम पर UntypedObjects को पार्स करना है। सबसे आम उपयोग मामला वह है जब आपको कोई ईवेंट प्राप्त होता है और आपको ईवेंट मान को पार्स करने की आवश्यकता होती है। या फिर आप System.Activity.ChannelData प्रॉपर्टी को पार्स करना चाह सकते हैं, जो चैनल के अनुसार रनटाइम पर बदलती रहती है।
यदि आप Teams से आने वाले किसी ईवेंट से जानकारी पार्स करना चाहते हैं, तो आपको अपेक्षित ईवेंट कैसा दिखाई देगा, इसका उदाहरण खोजने के लिए Teams डेवलपर दस्तावेज़ का उपयोग करना होगा और फिर इस उदाहरण को नमूना डेटा के रूप में उपयोग करना होगा, जैसा कि इस अनुभाग में पहले बताया गया है।