Skip to content

Latest commit

 

History

History
277 lines (178 loc) · 26.5 KB

File metadata and controls

277 lines (178 loc) · 26.5 KB

व्यावहारिक कार्यान्वयन

वास्तविक उपकरणों और वर्कफ़्लो के साथ MCP ऐप्स को बनाना, परीक्षण करना और तैनात करना

(इस पाठ का वीडियो देखने के लिए ऊपर दी गई छवि पर क्लिक करें)

व्यावहारिक कार्यान्वयन वह जगह है जहां मॉडल कॉन्टेक्स्ट प्रोटोकॉल (MCP) की शक्ति वास्तविक रूप में सामने आती है। MCP के सिद्धांत और आर्किटेक्चर को समझना महत्वपूर्ण है, लेकिन इसकी असली उपयोगिता तब प्रकट होती है जब आप इन अवधारणाओं को वास्तविक दुनिया की समस्याओं को हल करने वाले समाधान बनाने, परीक्षण करने और तैनात करने में लागू करते हैं। यह अध्याय वैचारिक ज्ञान और व्यावहारिक विकास के बीच की खाई को पाटता है, और MCP-आधारित अनुप्रयोगों को जीवन में लाने की प्रक्रिया में आपका मार्गदर्शन करता है।

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

आगामी अनुभागों में, आपको व्यावहारिक उदाहरण, नमूना कोड, और तैनाती रणनीतियाँ मिलेंगी जो C#, Java with Spring, TypeScript, JavaScript, और Python में MCP को लागू करने का प्रदर्शन करती हैं। आप यह भी सीखेंगे कि MCP सर्वरों को कैसे डिबग और परीक्षण करें, API का प्रबंधन करें, और Azure का उपयोग करके समाधान को क्लाउड में तैनात करें। ये व्यावहारिक संसाधन आपके सीखने को तेज़ करने और आपको आत्मविश्वास के साथ मजबूत, उत्पादन-तैयार MCP अनुप्रयोग बनाने में मदद करने के लिए डिज़ाइन किए गए हैं।

अवलोकन

यह पाठ कई प्रोग्रामिंग भाषाओं में MCP कार्यान्वयन के व्यावहारिक पहलुओं पर केंद्रित है। हम यह जानेंगे कि C#, Java with Spring, TypeScript, JavaScript, और Python में MCP SDK का उपयोग करके मजबूत अनुप्रयोग कैसे बनाए जाएं, MCP सर्वरों को डिबग और परीक्षण करें, और पुन: उपयोग योग्य संसाधन, प्रॉम्प्ट और टूल कैसे बनाएं।

सीखने के उद्देश्य

इस पाठ के अंत तक, आप निम्नलिखित करने में सक्षम होंगे:

  • विभिन्न प्रोग्रामिंग भाषाओं में आधिकारिक SDK का उपयोग करके MCP समाधान लागू करना
  • व्यवस्थित रूप से MCP सर्वरों को डिबग और परीक्षण करना
  • सर्वर सुविधाओं (संसाधन, प्रॉम्प्ट, और टूल) को बनाना और उपयोग करना
  • जटिल कार्यों के लिए प्रभावी MCP वर्कफ़्लो डिज़ाइन करना
  • प्रदर्शन और विश्वसनीयता के लिए MCP कार्यान्वयन को अनुकूलित करना

आधिकारिक SDK संसाधन

मॉडल कॉन्टेक्स्ट प्रोटोकॉल कई भाषाओं के लिए आधिकारिक SDK प्रदान करता है:

MCP SDKs के साथ काम करना

यह अनुभाग कई प्रोग्रामिंग भाषाओं में MCP को लागू करने के व्यावहारिक उदाहरण प्रदान करता है। आप samples निर्देशिका में भाषा के अनुसार व्यवस्थित नमूना कोड पा सकते हैं।

उपलब्ध नमूने

भंडार में निम्नलिखित भाषाओं में नमूना कार्यान्वयन शामिल हैं:

प्रत्येक नमूना उस विशेष भाषा और पारिस्थितिकी तंत्र के लिए प्रमुख MCP अवधारणाओं और कार्यान्वयन पैटर्न का प्रदर्शन करता है।

मुख्य सर्वर सुविधाएँ

MCP सर्वर निम्नलिखित सुविधाओं के किसी भी संयोजन को लागू कर सकते हैं:

संसाधन

संसाधन उपयोगकर्ता या AI मॉडल के लिए संदर्भ और डेटा प्रदान करते हैं:

  • दस्तावेज़ भंडार
  • ज्ञान आधार
  • संरचित डेटा स्रोत
  • फ़ाइल सिस्टम

प्रॉम्प्ट

प्रॉम्प्ट उपयोगकर्ताओं के लिए टेम्पलेटेड संदेश और वर्कफ़्लो हैं:

  • पूर्व-परिभाषित वार्तालाप टेम्पलेट
  • निर्देशित इंटरैक्शन पैटर्न
  • विशेष संवाद संरचनाएँ

टूल

टूल AI मॉडल द्वारा निष्पादित किए जाने वाले कार्य हैं:

  • डेटा प्रोसेसिंग उपयोगिताएँ
  • बाहरी API एकीकरण
  • गणनात्मक क्षमताएँ
  • खोज कार्यक्षमता

C# कार्यान्वयन का नमूना

आधिकारिक C# SDK भंडार में MCP के विभिन्न पहलुओं को प्रदर्शित करने वाले कई नमूना कार्यान्वयन शामिल हैं:

  • बेसिक MCP क्लाइंट: MCP क्लाइंट बनाने और टूल को कॉल करने का सरल उदाहरण
  • बेसिक MCP सर्वर: बुनियादी टूल पंजीकरण के साथ न्यूनतम सर्वर कार्यान्वयन
  • एडवांस्ड MCP सर्वर: टूल पंजीकरण, प्रमाणीकरण, और त्रुटि प्रबंधन के साथ पूर्ण-विशेषताओं वाला सर्वर
  • ASP.NET एकीकरण: ASP.NET Core के साथ एकीकरण का प्रदर्शन करने वाले उदाहरण
  • टूल कार्यान्वयन पैटर्न: विभिन्न जटिलता स्तरों के साथ टूल कार्यान्वयन के लिए विभिन्न पैटर्न

C# MCP SDK पूर्वावलोकन में है और API बदल सकते हैं। जैसे-जैसे SDK विकसित होता है, हम इस ब्लॉग को लगातार अपडेट करेंगे।

प्रमुख विशेषताएँ

C# कार्यान्वयन के पूर्ण नमूनों के लिए, आधिकारिक C# SDK नमूना भंडार पर जाएँ।

Java with Spring कार्यान्वयन का नमूना

Java with Spring SDK एंटरप्राइज़-ग्रेड सुविधाओं के साथ मजबूत MCP कार्यान्वयन विकल्प प्रदान करता है।

प्रमुख विशेषताएँ

  • स्प्रिंग फ्रेमवर्क एकीकरण
  • मजबूत प्रकार सुरक्षा
  • प्रतिक्रियाशील प्रोग्रामिंग समर्थन
  • व्यापक त्रुटि प्रबंधन

Java with Spring कार्यान्वयन के पूर्ण नमूने के लिए, samples निर्देशिका में Java with Spring नमूना देखें।

JavaScript कार्यान्वयन का नमूना

JavaScript SDK MCP कार्यान्वयन के लिए एक हल्का और लचीला दृष्टिकोण प्रदान करता है।

प्रमुख विशेषताएँ

  • Node.js और ब्राउज़र समर्थन
  • प्रॉमिस-आधारित API
  • Express और अन्य फ्रेमवर्क के साथ आसान एकीकरण
  • स्ट्रीमिंग के लिए WebSocket समर्थन

JavaScript कार्यान्वयन के पूर्ण नमूने के लिए, samples निर्देशिका में JavaScript नमूना देखें।

Python कार्यान्वयन का नमूना

Python SDK उत्कृष्ट ML फ्रेमवर्क एकीकरण के साथ MCP कार्यान्वयन के लिए एक पायथनिक दृष्टिकोण प्रदान करता है।

प्रमुख विशेषताएँ

  • asyncio के साथ Async/await समर्थन
  • FastAPI एकीकरण
  • सरल टूल पंजीकरण
  • लोकप्रिय ML लाइब्रेरी के साथ मूल एकीकरण

Python कार्यान्वयन के पूर्ण नमूने के लिए, samples निर्देशिका में Python नमूना देखें।

API प्रबंधन

Azure API प्रबंधन MCP सर्वरों को सुरक्षित करने का एक शानदार उत्तर है। विचार यह है कि आपके MCP सर्वर के सामने एक Azure API प्रबंधन इंस्टेंस रखें और इसे उन सुविधाओं को संभालने दें जिनकी आपको आवश्यकता हो सकती है, जैसे:

  • दर सीमित करना
  • टोकन प्रबंधन
  • निगरानी
  • लोड संतुलन
  • सुरक्षा

Azure नमूना

यहाँ एक Azure नमूना है जो MCP सर्वर बनाने और इसे Azure API प्रबंधन के साथ सुरक्षित करने का प्रदर्शन करता है: Azure API प्रबंधन के साथ सुरक्षित MCP सर्वर

ऊपर दिए गए नमूने में, निम्नलिखित होता है:

  • प्रमाणीकरण/प्राधिकरण Microsoft Entra का उपयोग करके होता है।
  • Azure API प्रबंधन एक गेटवे के रूप में कार्य करता है और नीतियों का उपयोग करके ट्रैफ़िक को निर्देशित और प्रबंधित करता है।
  • Azure मॉनिटर सभी अनुरोधों को आगे के विश्लेषण के लिए लॉग करता है।

प्राधिकरण प्रवाह

प्राधिकरण प्रवाह को अधिक विस्तार से देखें:

अनुक्रम आरेख

MCP प्राधिकरण विनिर्देश

MCP प्राधिकरण विनिर्देश के बारे में अधिक जानें।

Azure पर रिमोट MCP सर्वर तैनात करें

आइए देखें कि क्या हम पहले उल्लेखित नमूने को तैनात कर सकते हैं:

  1. रिपॉजिटरी क्लोन करें

    git clone https://github.com/Azure-Samples/remote-mcp-apim-functions-python.git
    cd remote-mcp-apim-functions-python
  2. Microsoft.App संसाधन प्रदाता पंजीकृत करें।

    • यदि आप Azure CLI का उपयोग कर रहे हैं, तो az provider register --namespace Microsoft.App --wait चलाएँ।
    • यदि आप Azure PowerShell का उपयोग कर रहे हैं, तो Register-AzResourceProvider -ProviderNamespace Microsoft.App चलाएँ। फिर कुछ समय बाद (Get-AzResourceProvider -ProviderNamespace Microsoft.App).RegistrationState चलाकर जांचें कि पंजीकरण पूरा हुआ है या नहीं।
  3. इस azd कमांड को चलाएँ ताकि API प्रबंधन सेवा, फ़ंक्शन ऐप (कोड के साथ) और अन्य आवश्यक Azure संसाधन प्रोविजन हो सकें:

    azd up

    यह कमांड Azure पर सभी क्लाउड संसाधनों को तैनात कर देगा।

MCP Inspector के साथ अपने सर्वर का परीक्षण करें

  1. नए टर्मिनल विंडो में MCP Inspector इंस्टॉल और रन करें:

    npx @modelcontextprotocol/inspector

    आपको एक इंटरफ़ेस इस प्रकार दिखाई देना चाहिए:

    Node Inspector से कनेक्ट करें

  2. ऐप द्वारा प्रदर्शित URL (जैसे http://127.0.0.1:6274/#resources) से MCP Inspector वेब ऐप लोड करने के लिए CTRL क्लिक करें।

  3. ट्रांसपोर्ट प्रकार को SSE पर सेट करें।

  4. अपने चल रहे API प्रबंधन SSE एंडपॉइंट को URL पर सेट करें और कनेक्ट करें:

    https://<apim-servicename-from-azd-output>.azure-api.net/mcp/sse
  5. टूल सूचीबद्ध करें। किसी टूल पर क्लिक करें और टूल चलाएँ

यदि सभी चरण सफल रहे, तो अब आप MCP सर्वर से जुड़े हुए हैं और आपने एक टूल को कॉल किया है।

Azure के लिए MCP सर्वर

Remote-mcp-functions: यह रिपॉजिटरी Azure Functions का उपयोग करके Python, C# .NET, या Node/TypeScript के साथ कस्टम रिमोट MCP सर्वर बनाने और तैनात करने के लिए एक त्वरित प्रारंभ टेम्पलेट है।

यह समाधान निम्नलिखित प्रदान करता है:

  • स्थानीय रूप से निर्माण और चलाना: स्थानीय मशीन पर MCP सर्वर विकसित और डिबग करें।
  • Azure पर तैनात करें: एक साधारण azd up कमांड के साथ क्लाउड पर आसानी से तैनात करें।
  • क्लाइंट से कनेक्ट करें: विभिन्न क्लाइंट से MCP सर्वर से कनेक्ट करें, जिसमें VS Code का Copilot एजेंट मोड और MCP Inspector टूल शामिल हैं।

प्रमुख विशेषताएँ

  • डिज़ाइन द्वारा सुरक्षा: MCP सर्वर कुंजी और HTTPS का उपयोग करके सुरक्षित है।
  • प्रमाणीकरण विकल्प: अंतर्निहित प्रमाणीकरण और/या API प्रबंधन का उपयोग करके OAuth का समर्थन करता है।
  • नेटवर्क अलगाव: Azure वर्चुअल नेटवर्क (VNET) का उपयोग करके नेटवर्क अलगाव की अनुमति देता है।
  • सर्वरलेस आर्किटेक्चर: स्केलेबल, इवेंट-ड्रिवन निष्पादन के लिए Azure Functions का लाभ उठाता है।
  • स्थानीय विकास: व्यापक स्थानीय विकास और डिबगिंग समर्थन।
  • सरल तैनाती: Azure पर तैनाती प्रक्रिया को सुव्यवस्थित करता है।

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

  • Azure Remote MCP Functions Python - Python के साथ Azure Functions का उपयोग करके MCP का नमूना कार्यान्वयन।
  • Azure Remote MCP Functions .NET - C# .NET के साथ Azure Functions का उपयोग करके MCP का नमूना कार्यान्वयन।
  • Azure Remote MCP Functions Node/Typescript - Node/TypeScript के साथ Azure Functions का उपयोग करके MCP का नमूना कार्यान्वयन।

मुख्य निष्कर्ष

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

अभ्यास

अपने डोमेन में एक वास्तविक समस्या को हल करने के लिए एक व्यावहारिक MCP वर्कफ़्लो डिज़ाइन करें:

  1. उन 3-4 टूल की पहचान करें जो इस समस्या को हल करने में सहायक होंगे।
  2. एक वर्कफ़्लो आरेख बनाएं जो दिखाए कि ये टूल कैसे इंटरैक्ट करते हैं।
  3. अपनी पसंदीदा भाषा का उपयोग करके टूल में से एक का एक बुनियादी संस्करण लागू करें।
  4. एक प्रॉम्प्ट टेम्पलेट बनाएं जो मॉडल को आपके टूल का प्रभावी ढंग से उपयोग करने में मदद करे।

अतिरिक्त संसाधन


अगला: एडवांस्ड टॉपिक्स

अस्वीकरण:
यह दस्तावेज़ AI अनुवाद सेवा Co-op Translator का उपयोग करके अनुवादित किया गया है। जबकि हम सटीकता सुनिश्चित करने का प्रयास करते हैं, कृपया ध्यान दें कि स्वचालित अनुवाद में त्रुटियां या अशुद्धियां हो सकती हैं। मूल भाषा में उपलब्ध मूल दस्तावेज़ को प्रामाणिक स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए, पेशेवर मानव अनुवाद की सिफारिश की जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या गलत व्याख्या के लिए हम उत्तरदायी नहीं हैं।