नोट
इस पेज तक पहुँच के लिए प्रमाणन की आवश्यकता होती है. आप साइन इन करने या निर्देशिकाओं को बदलने का प्रयास कर सकते हैं.
इस पेज तक पहुँच के लिए प्रमाणन की आवश्यकता होती है. आप निर्देशिकाओं को बदलने का प्रयास कर सकते हैं.
जानें कि AWS इलास्टिक बीनस्टॉक पर चलने वाले Agent 365 एजेंट को Agent 365 CLI का उपयोग करके कैसे बनाएं, होस्ट करें, पंजीकृत करें और प्रकाशित करें। Microsoft Entra और Graph एजेंट की पहचान, अनुमतियाँ और ब्लूप्रिंट प्रदान करते हैं, जबकि AWS इलास्टिक बीनस्टॉक रनटाइम प्रदान करता है।
यदि आप अपने एजेंट को उस कोड की ओर इंगित करना चाहते हैं जो AWS एंडपॉइंट के पीछे स्थित है, तो आपको केवल निम्न चरण की आवश्यकता है: non-Azure hosting के लिए कॉन्फ़िगर करें। फिर, "Agent 365 विकास प्रारंभ करें" अनुभाग के अन्य सभी चरणों का पालन करें।
लक्ष्य
जानें कि Agent 365 और Microsoft 365 को नियंत्रण प्रणाली के रूप में कैसे उपयोग करें और:
- AWS Elastic Beanstalk पर एजेंट रनटाइम तैनात करें
- गैर-Azure होस्टिंग के लिए
a365.config.jsonको कॉन्फ़िगर करें - Entra ID में एजेंट ब्लूप्रिंट बनाएं
- OAuth2 और विरासत योग्य अनुमतियाँ कॉन्फ़िगर करें
- AWS को इंगित करने वाले Bot Framework संदेश एंडपॉइंट को पंजीकृत करें
- एजेंट पहचान + एजेंट उपयोगकर्ता बनाएं
- (वैकल्पिक) Microsoft 365 ऐप इंटरफेस पर प्रकाशित करें
- एंड-टू-एंड सहभागिता का परीक्षण करें
आवश्यकताएँ
शुरू करने से पहले, सुनिश्चित करें कि निम्नलिखित Azure/Microsoft 365, AWS और स्थानीय पर्यावरण पूर्वापेक्षाएँ पूरी की गई हैं।
Azure / Microsoft 365 पूर्वापेक्षाएं
अपने Microsoft Entra टेनेंट एक्सेस की पुष्टि करें और पहचान, ब्लूप्रिंट बनाने, और अपने एजेंट को रजिस्टर करने के लिए ज़रूरी टूल्स इंस्टॉल करें।
एक Microsoft Entra टेनेंट जिसमें:
- अनुप्रयोग और एजेंट ब्लूप्रिंट बनाने की अनुमति या भूमिका (वैश्विक व्यवस्थापक या समकक्ष)
- Microsoft Agent 365 का जल्दी एक्सेस पाने के लिए Frontier पूर्वावलोकन प्रोग्राम की मेम्बरशिप।
- एजेंट उपयोगकर्ता के लिए कम से कम एक Microsoft 365 लाइसेंस उपलब्ध होना आवश्यक है
Azure CLI स्थापित और साइन इन किया गया है।
Amazon Web Services (AWS) की आवश्यकताएँ
पक्का करें कि आपके Elastic Beanstalk एनवायरनमेंट को डिप्लॉय और मैनेज करने के लिए ये AWS सर्विसेज़ और टूल्स सेट अप हों।
- AWS खाता उपयुक्त अनुमतियों के साथ
- AWS इलास्टिक बीनस्टॉक पहुँच सक्षम
- AWS CLI स्थापित और कॉन्फ़िगर किया गया
- Elastic Beanstalk CLI स्थापित
स्थानीय विकास पर्यावरण पूर्वापेक्षाएँ
एजेंट को बनाने, चलाने और परिनियोजित करने के लिए स्थानीय रूप से निम्नलिखित टूल्स को स्थापित और कॉन्फ़िगर करें।
कोड संपादक: Visual Studio Code या Visual Studio का उपयोग करें
AWS टूलकिट: इस एक्सटेंशन को Visual Studio या Visual Studio Code से स्थापित करें। अपने AWS पहचान और पहुंच प्रबंधन (IAM) क्रेडेंशियल्स का उपयोग करके साइन इन करें।
LLM API एक्सेस: अपने एजेंट के कॉन्फ़िगरेशन या अपने पसंदीदा मॉडल प्रदाता के आधार पर उपयुक्त सेवा चुनें:
- OpenAI API कुंजी: अपनी OpenAI API कुंजी प्राप्त करें
- Azure OpenAI: अपनी API की और एंडपॉइंट पाने के लिए Azure OpenAI रिसोर्स बनाएं और डिप्लॉय करें
.NET एजेंट बनाएं और उपयोग करें
नीचे दिए गए निर्देश बताते हैं कि एक ऐसा बुनियादी एजेंट कैसे बनाएँ जो:
- GET अनुरोध का जवाब देता है
/ - POST पर Bot Framework गतिविधियों को स्वीकार करता है
/api/messages
प्रोजेक्ट निर्देशिका बनाएं
mkdir aws-a365-agent
cd aws-a365-agent
इनिशियलाइज़ करें .NET प्रोजेक्ट
आपके अनुभव को आसान बनाने के लिए, यह लेख पहले से तैयार किए गए नमूने का उपयोग करता है। एजेंट365 Samples repository को क्लोन करें और dotnet\semantic-kernel\sample-agent सैम्पल में जाएं।
सिमेंटिक कर्नेल सैंपल एजेंट - C#/.NET सैंपल में निम्नलिखित शामिल हैं:
- न्यूनतम ASP.NET Core Web API
- Bot Framework संदेश हैंडलर
/api/messagesपर -
स्वास्थ्य जांच एंडपॉइंट
/पर - AI क्षमताओं हेतु सिमेंटिक कर्नेल एकीकरण
dotnet\semantic-kernel\sample-agent पर जाएं और सत्यापित करें कि प्रोजेक्ट सफलतापूर्वक बिल्ड होता है:
dotnet restore
dotnet build
मॉडल कॉन्फ़िगर करें
चरण 2: LLM कॉन्फ़िगरेशन में दिए गए निर्देशों का पालन करें ताकि आप अपनी Open API कुंजी का उपयोग करके प्रोजेक्ट को कॉन्फ़िगर कर सकें।
स्थानीय रूप से परीक्षण करें (वैकल्पिक)
AWS में तैनात करने से पहले, स्थानीय रूप से अपने एजेंट का परीक्षण करें:
# Run the application dotnet runकिसी अन्य टर्मिनल में एंडपॉइंट्स का परीक्षण करें:
# Test agent endpoint locally curl http://localhost:3978स्थानीय सर्वर को रोकने के लिए
Ctrl+Cदबाएँ।
खरीदें और परिनियोजित करें
इस सैंपल ऐप्लिकेशन को बिल्ड और डिप्लॉय करने के लिए अपना पसंदीदा विकल्प चुनें:
- विकल्प A: बनाएँ और Visual Studio से परिनियोजित करें
- विकल्प बी: CLI के साथ AWS Elastic Beanstalk में बनाएँ और परिनियोजित करें
विकल्प A: बनाएँ और Visual Studio से परिनियोजित करें
Visual Studio के लिए AWS Toolkit का उपयोग करके, गाइडेड विज़ार्ड के माध्यम से ऐप को Elastic Beanstalk पर प्रकाशित करें।
Solution Explorer में, अपने प्रोजेक्ट पर राइट-क्लिक करें।
Publish to AWS Elastic Beanstalk का चयन करें।
Beanstalk Deployment Wizard का पालन करें:
- अपनी AWS क्रेडेंशियल प्रोफ़ाइल चुनें।
- रीजन (Region) चुनें (उदाहरण के लिए,
us-east-1)। - प्लेटफ़ॉर्म (
.NET Core on Linux) का चयन करें। - परिवेश की सेटिंग्स कॉन्फ़िगर करें।
परिनियोजित करें का चयन करें.
विज़ार्ड आपके ऐप्लिकेशन को बिल्ड करेगा, पैकेज करेगा, और AWS पर डिप्लॉय करेगा।
विकल्प बी: CLI के साथ AWS Elastic Beanstalk में बनाएँ और परिनियोजित करें
64-बिट Amazon Linux 2 वातावरण में .NET एजेंट को पैकेज और परिनियोजित करने के लिए Elastic Beanstalk CLI का उपयोग करें। सुनिश्चित करें कि AWS CLI और EB CLI कॉन्फ़िगर किए गए हैं। ऐप, Beanstalk द्वारा सेट किए गए PORT एनवायरनमेंट वेरिएबल से जुड़ जाता है।
अपना .NET अनुप्रयोग बनाएँ और प्रकाशित करें:
# Publish for Linux runtime (AWS Elastic Beanstalk uses Amazon Linux) dotnet publish -c Release -o ./publish --runtime linux-x64नीचे दिए गए कंटेंट के साथ Procfile बनाएँ।
web: dotnet ./SemanticKernelSampleAgent.dll.NET के लिए इलास्टिक बीनस्टॉक को इनिशियलाइज़ करें। आपको क्षेत्र और प्लेटफ़ॉर्म चुनने के लिए कहा जाता है:
eb initचुनें:
-
प्लेटफ़ॉर्म:
64bit-amazon-linux-2023-v3.7.0-running-.net-8 -
रीजन: आपकी पसंदीदा AWS रीजन (उदाहरण के लिए
us-east-1)
-
प्लेटफ़ॉर्म:
एक परिनियोजन पैकेज बनाएं और परिनियोजित करें:
cd publish zip -r ../deploy.zip . cd .. eb create aws-a365-agent-env eb deployयह कमांड:
- Elastic Beanstalk एप्लिकेशन बनाता है।
- लोड बैलेंसर के साथ एक वातावरण बनाता है।
- एप्लिकेशन डिप्लॉय करता है।
- आवश्यक AWS संसाधनों को प्रोविजन करता है।
समाप्त होने पर, अपना इलास्टिक बीनस्टॉक एंडपॉइंट प्राप्त करें:
eb statusअपने एंडपॉइंट को नोट करें। यह कुछ इस तरह दिखना चाहिए:
http://aws-a365-agent-env.us-east-1.elasticbeanstalk.comयह एंडपॉइंट ही
messagingEndpointहै जिसका इस्तेमाल Agent 365 Dev Tools CLI द्वारा किया जाता है।
नोट
प्रोडक्शन वातावरण के लिए, Elastic Beanstalk में SSL/TLS प्रमाणपत्र जोड़कर HTTPS कॉन्फ़िगर करें। Bot Framework को प्रोडक्शन एंडपॉइंट्स के लिए HTTPS की आवश्यकता होती है।
गैर-Azure होस्टिंग के लिए कॉन्फ़िगर करें
अपने Elastic Beanstalk प्रोजेक्ट फ़ोल्डर में a365.config.json मैन्युअल रूप से बनाएँ:
महत्त्वपूर्ण
गैर-Azure होस्टिंग के लिए, messagingEndpoint का मान अपने Elastic Beanstalk URL (जिसमें /api/messages पथ शामिल हो) पर सेट करें।
a365.config.json फाइल कुछ इस तरह दिखना चाहिए:
{
"tenantId": "YOUR_TENANT_ID",
"environment": "prod",
"messagingEndpoint": "http://aws-a365-agent-env.us-east-1.elasticbeanstalk.com/api/messages",
"agentIdentityDisplayName": "MyAwsAgent Identity",
"agentBlueprintDisplayName": "MyAwsAgent Blueprint",
"agentUserDisplayName": "MyAwsAgent User",
"agentUserPrincipalName": "myawsagent@testTenant.onmicrosoft.com",
"agentUserUsageLocation": "US",
"managerEmail": "myManager@testTenant.onmicrosoft.com",
"deploymentProjectPath": ".",
"agentDescription": "AWS-hosted Agent 365 Agent"
}
निम्न तालिका में प्रमुख कॉन्फ़िगरेशन फ़ील्ड और उनके उद्देश्य को संक्षेप में प्रस्तुत किया गया है।
| क्षेत्र | अर्थ |
|---|---|
messagingEndpoint |
आपका इलास्टिक बीनस्टॉक यूआरएल + /api/messages |
deploymentProjectPath |
जहाँ स्टैम्पिंग .env होता है |
Agent 365 एजेंट को बिल्ड करें
जब आपका एजेंट कोड AWS एंडपॉइंट पर चल जाए, तो Agent 365 डेवलपमेंट प्रारंभ करें के शेष चरणों का पालन करके अपना Agent 365 एजेंट स्थापित करें।
एजेंट का एंड-टू-एंड सत्यापन करें
इन जाँचों का उपयोग करें ताकि आप पुष्टि कर सकें कि आपका AWS-होस्टेड एजेंट पहुँच योग्य है, Bot Framework गतिविधियाँ प्राप्त करता है और Agent 365 प्लेटफार्मों पर सही ढंग से प्रतिक्रिया देता है।
इलास्टिक बीनस्टॉक कनेक्टिविटी सत्यापित करें
अपने इलास्टिक बीनस्टॉक एंडपॉइंट पर एक GET अनुरोध भेजें।
curl http://aws-a365-agent-env.us-east-1.elasticbeanstalk.com/
अनुरोध के उत्तर में यह संदेश आना चाहिए:
AWS Agent is running.
Elastic Beanstalk लॉग में आने वाले Bot Framework संदेशों की जाँच करें
Elastic Beanstalk लॉगिंग का उपयोग करें यह सत्यापित करने के लिए कि आपका एजेंट Bot Framework गतिविधियाँ प्राप्त कर रहा है और सही ढंग से प्रतिक्रिया दे रहा है।
eb logs
या वास्तविक समय में लॉग स्ट्रीम करें:
eb logs --stream
आपके एजेंट को एक संदेश मिलने के बाद, आप देखते हैं:
POST 200 /api/messages
Received activity: { ... }
Agent 365 सतहों से एजेंट को टेस्ट करें
अपने एनवायरनमेंट के आधार पर, आप अपने एजेंट को अलग-अलग जगहों से टेस्ट कर सकते हैं:
- एजेंट प्लेग्राउंड
- Teams (यदि प्रकाशित हो)
- एजेंट शेल
- फ़ेडरेटेड सतहें
आप संदेश भेज सकते हैं और अपने इलास्टिक बीनस्टॉक लॉग को सत्यापित कर सकते हैं। Microsoft Agent 365 SDK का उपयोग करके एजेंट्स का परीक्षण करना और एजेंट Playground परीक्षण उपकरण के साथ अपने एजेंट की कार्यक्षमता को सत्यापित करना सीखें।
डेवलपर कार्यप्रवाह
एक बार सेटअप पूरा हो जाने पर, पुनरावृत्त विकास के लिए इस कार्यप्रवाह का पालन करें:
स्थानीय रूप से विकास और परीक्षण करें
तेज़ विकास और स्वचालित रीलोडिंग के लिए watch mode का उपयोग करें:
# Automatically rebuild and restart on file changes
dotnet watch run
कोड में परिवर्तन करें, सहेजें और परिनियोजन से पहले स्थानीय रूप से परीक्षण करें।
अपने एप्लिकेशन को बनाएँ और AWS इलास्टिक बीनस्टॉक पर पुनः परिनियोजित करें
जब आप अपने परिवर्तनों को परिनियोजित करने के लिए तैयार हों:
# Clean previous builds (optional but recommended)
dotnet clean
# Publish optimized release build
dotnet publish -c Release -o ./publish --runtime linux-x64
# Create deployment package
cd publish
zip -r ../deploy.zip .
cd ..
# Deploy to AWS
eb deploy
परीक्षण और निगरानी करें
Agent 365 surfaces का उपयोग करके परीक्षण करें और Elastic Beanstalk लॉग की निगरानी करें:
# Stream logs in real-time
eb logs --stream
आपको अपनी पहचान, ब्लूप्रिंट, बॉट एंडपॉइंट या अनुमतियों को फिर से बनाने की आवश्यकता नहीं है।
समस्या निवारण
इस अनुभाग का उपयोग AWS Elastic Beanstalk पर Agent 365 एजेंट को तैनात और संचालित करते समय सामान्य समस्याओं का निदान और समाधान करने के लिए करें। इसमें कनेक्टिविटी और स्वास्थ्य जांच शामिल है। यह पोर्ट बाइंडिंग, बिल्ड त्रुटियों और लाइसेंसिंग समस्याओं को भी संबोधित करता है।
टिप
Agent 365 समस्या निवारण मार्गदर्शिका में उच्च-स्तरीय समस्या निवारण अनुशंसाएँ, सर्वोत्तम प्रथाएँ, और Agent 365 विकास जीवनचक्र के प्रत्येक भाग के लिए समस्या निवारण सामग्री के लिंक शामिल हैं.
मैसेजिंग एंडपॉइंट को अनुरोध प्राप्त नहीं हो रहे हैं
निम्न जानकारी जाँच करें:
- आपका एंडपॉइंट बिल्कुल यही है:
http://<your-app>.elasticbeanstalk.com/api/messages - आपका इलास्टिक बीनस्टॉक वातावरण स्वस्थ है। चेक करने के लिए
eb healthका उपयोग करें। - आपका सुरक्षा समूह इनबाउंड HTTP या HTTPS ट्रैफ़िक की अनुमति देता है।
- कोई फ़ायरवॉल नियम या वीपीसी प्रतिबंध नहीं हैं।
ऐप्लिकेशन की स्वास्थ्य समस्याएं
पर्यावरण स्वास्थ्य की जाँच करें:
eb health --refresh
विस्तृत लॉग देखें:
eb logs
पोर्ट बाइंडिंग समस्याएँ
पक्का करें कि आपका ऐप्लिकेशन एनवायरनमेंट वेरिएबल PORT द्वारा बताए गए पोर्ट पर सुन रहा है। Elastic Beanstalk इस मान को स्वचालित रूप से सेट करता है।
.NET बिल्ड या रनटाइम समस्याएँ
इन आदेशों का उपयोग करके बिल्ड त्रुटियों की जाँच करें:
# Clean and rebuild
dotnet clean
dotnet build --verbosity detailed
.NET संस्करण सत्यापित करें:
dotnet --version
dotnet --list-sdks
पैकेज समस्याओं की जाँच करें:
# List installed packages
dotnet list package
# Update packages
dotnet restore --force
लाइसेंस आवंटन विफल है
मैन्युअल रूप से एक मान्य Microsoft 365 लाइसेंस असाइन करें, या यदि समर्थित हो तो बिना लाइसेंस वाले उपयोगकर्ता पथ का उपयोग करें।