إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
هام
يجب أن تكون جزءا من برنامج معاينة الحدود للحصول على وصول مبكر إلى Microsoft Agent 365. Frontier تربطك مباشرة بأحدث ابتكارات الذكاء الاصطناعي من Microsoft. تخضع المعاينات الحدودية لشروط المعاينة الحالية لاتفاقيات العملاء. نظرًا لأن هذه الميزات لا تزال قيد التطوير، فقد يتغير توفرها وقدراتها بمرور الوقت.
هنا يمكنك تعلم كيفية بناء واستضافة وتسجيل ونشر وكيل Agent 365 يعمل على AWS Elastic Beanstalk، باستخدام واجهة Agent 365. يوفر Microsoft Entra & Graph هوية الوكيل والأدراءات والمخطط، بينما يوفر AWS Elastic Beanstalk وقت التشغيل.
إذا كان كل ما تريد فعله هو توجيه وكيلك إلى الكود الموجود خلف نقطة نهاية AWS، فأنت تحتاج فقط إلى هذه الخطوة: التكوين للاستضافة غير Azure ثم اتباع جميع الخطوات الأخرى من دورة حياة تطوير Agent 365.
الاهداف
تعلم كيفية استخدام Agent 365 وMicrosoft 365 ك 'مستوى التحكم' و:
- نشر وقت تشغيل الوكيل على AWS Elastic Beanstalk
- Configure
a365.config.jsonfor non-Azure hosting - إنشاء مخطط وكيل في Entra ID
- تكوين OAuth2 + الأذونات القابلة للوراثة
- إطار عمل تسجيل البوتات لإرسال رسالة إلى نقطة نهاية تشير إلى AWS
- إنشاء هوية الوكيل + مستخدم الوكيل
- (اختياري) النشر على أسطح تطبيقات Microsoft 365
- تفاعلات الاختبار من طرف إلى طرف
Prerequisites
قبل أن تبدأ، تأكد من استيفاء المتطلبات التالية ل Azure / Microsoft 365 وAWS والبيئة المحلية.
Azure / Microsoft 365 prerequisites
تأكد من وصول مستأجر Microsoft Entra الخاص بك وثبت الأدوات التالية لإنشاء الهويات، والمخططات، وتسجيل وكيلك.
مستأجر في Microsoft Entra مع:
- الإذن / الدور لإنشاء التطبيقات ومخططات الوكيل (مسؤول عام أو ما يعادله)
- تحتاج إلى أن تكون جزءا من برنامج معاينة Frontier للحصول على وصول مبكر إلى Microsoft Agent 365.
- على الأقل ترخيص Microsoft 365 واحد متاح لمستخدم الوكيل
متطلبات خدمات الويب أمازون (AWS)
تأكد من إعداد خدمات وأدوات AWS التالية لنشر وإدارة بيئة Elastic Beanstalk الخاصة بك.
- حساب AWS مع الأذونات المناسبة
- تفعيل الوصول إلى AWS Elastic Beanstalk
- تم تثبيت وتكوين AWS CLI
- تم تثبيت وحدة CLI من Elastic Beanstalk
المتطلبات الأساسية لبيئة التنمية المحلية
قم بتثبيت وتكوين الأدوات التالية محليا لبناء وتشغيل ونشر الوكيل.
محرر الكود: ينصح ب Visual Studio Code أو Visual Studio
.NET SDK: .NET 8.0 SDK أو أحدث
مجموعة أدوات AWS: قم بتثبيت هذه الإضافة من Visual Studioأو Visual Studio Code وتسجيل الدخول باستخدام بيانات اعتماد إدارة الهوية والوصول في AWS (IAM) الخاصة بك
الوصول إلى واجهة برمجة تطبيقات النماذج الكبيرة (LLM): اختر الخدمة المناسبة بناء على تكوين وكيلك أو مزود النموذج المفضل لديك:
- OpenAI API Key: احصل على مفتاح OpenAI API
- Azure OpenAI: إنشاء مورد Azure OpenAI ونشره للحصول على مفتاح واجهة برمجة التطبيقات ونقطة النهاية
إنشاء ونشر وكيل .NET
تصف التعليمات التالية كيفية إنشاء وكيل أدنى يقول:
- يرد على GET
/ - قبول أنشطة إطار عمل الروبوتات على POST
/api/messages
إنشاء دليل المشاريع
mkdir aws-a365-agent
cd aws-a365-agent
تهيئة مشروع .NET
لتبسيط تجربتك، نستخدم عينة جاهزة مسبقا. قم باستنساخ مستودع عينات Agent365 والتنقل إلى عينة dotnet\semantic-kernel\sample-agent .
عينة عامل عينة النواة الدلالية - C#/.NET تشمل:
- واجهة برمجة تطبيقات ويب أساسية ASP.NET الحد الأدنى
- معالج رسائل إطار عمل البوت على
/api/messages -
نقطة نهاية فحص الصحة عند
/ - تكامل النواة الدلالية لقدرات الذكاء الاصطناعي
انتقل إلى dotnet\semantic-kernel\sample-agent المشروع وتحقق من نجاحه في بناء المشروع:
dotnet restore
dotnet build
تكوين النموذج
اتبع التعليمات في الخطوة 2: تكوين نموذج اللغة الكبيرة لتكوين المشروع باستخدام مفتاح Open API الخاص بك.
اختبار محلي (اختياري)
قبل النشر إلى AWS، اختبر وكيلك محليا:
# Run the application dotnet runاختبر نقاط النهاية في محطة أخرى:
# Test agent endpoint locally curl http://localhost:3978اضغط
Ctrl+Cلإيقاف الخادم المحلي.
إنشاء ونشر
اختر الخيار الذي تفضله لبناء ونشر هذا التطبيق النموذجي:
الخيار أ: البناء والنشر من Visual Studio
استخدم مجموعة أدوات AWS الخاصة ب Visual Studio لنشر التطبيق على Elastic Beanstalk باستخدام معالج موجه.
في Solution Explorer، انقر بزر الفأرة الأيمن على مشروعك
اختر النشر إلى AWS Elastic Beanstalk
تابع ساحر نشر Beanstalk:
- اختر ملف بيانات اعتماد AWS الخاص بك
- اختر المنطقة (على سبيل المثال،
us-east-1) - منصة مختارة (
.NET Core on Linux) - تكوين إعدادات البيئة
اختر النشر
يقوم المعالج ببناء وتغليف ونشر تطبيقك على AWS.
الخيار ب: البناء والنشر على AWS Elastic Beanstalk باستخدام CLI
استخدم واجهة سطر Elastic Beanstalk لتغليف ونشر وكيل .NET في بيئة Amazon Linux 2 بنظام 64-بت؛ تأكد من تكوين AWS CLI/EB CLI وأن التطبيق يرتبط بمتغير البيئة الذي PORT تحدده Beanstalk.
ابن ونشر تطبيق .NET الخاص بك:
# Publish for Linux runtime (AWS Elastic Beanstalk uses Amazon Linux) dotnet publish -c Release -o ./publish --runtime linux-x64إنشاء ملف تجريبي يحتوي على المحتوى أدناه
web: dotnet ./SemanticKernelSampleAgent.dllقم بتهيئة Elastic Beanstalk لموقع .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 الضرورية
عند الانتهاء، احصل على نهاية Elastic Beanstalk:
eb statusلاحظ نقطة نهايتك. يجب أن يبدو مثل هذا:
http://aws-a365-agent-env.us-east-1.elasticbeanstalk.comهذا هو المستخدم
messagingEndpointفي CLI أدوات تطوير Agent 365.
Note
بالنسبة لبيئات الإنتاج، قم بتكوين HTTPS بإضافة شهادة SSL/TLS في Elastic Beanstalk. إطار عمل البوتات يتطلب HTTPS لنقاط الإنتاج.
Configure for non-Azure hosting
أنشئ a365.config.json في مجلد مشروع Elastic Beanstalk الخاص بك عن طريق تشغيل a365 config init:
هام
بالنسبة للاستضافة غير القابلة للاستضافة، يجب عليك:
- قم بتعيين
messagingEndpointرابط Elastic Beanstalk الخاص بك (مع/api/messagesالمسار) - تعيين
needDeploymentإلىfalse
يجب أن يبدو الملف a365.config.json كالتالي:
{
"tenantId": "YOUR_TENANT_ID",
"subscriptionId": "YOUR_AZURE_SUBSCRIPTION_ID",
"resourceGroup": "a365-aws-demo",
"location": "westus",
"environment": "prod",
"messagingEndpoint": "http://aws-a365-agent-env.us-east-1.elasticbeanstalk.com/api/messages",
"needDeployment": false,
"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"
}
يلخص الجدول التالي حقول التكوين المهمة وغرضها.
| Field | معني |
|---|---|
messagingEndpoint |
رابط Elastic Beanstalk الخاص بك + /api/messages |
"needDeployment": false |
يقول لي "أنا أستضيف خادمي الخاص؛ لا تنشر إلى أزور' |
deploymentProjectPath |
أين .env يحدث الختم |
وكيل Build Agent 365
بمجرد تشغيل كود الوكيل على نقطة نهاية AWS، اتبع الخطوات المتبقية من دورة حياة تطوير الوكيل 365 لإعداد وكيل Agent 365 الخاص بك.
تحقق من الوكيل من البداية إلى الطرف
استخدم هذه الفحوصات للتأكد من أن وكيلك المستضاف من AWS قابل للوصول، ويستقبل أنشطة إطار عمل البوت، ويستجيب بشكل صحيح عبر أسطح Agent 365.
تحقق من اتصال Elastic Beanstalk
أرسل طلب GET إلى نقطة نهاية Elastic Beanstalk.
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: { ... }
وكيل الاختبار من أسطح العامل 365
اعتمادا على بيئتك:
- ملعب الوكلاء
- الفرق (إذا نشرت)
- العميل شيل
- الأسطح الموحدة
يمكنك الآن إرسال رسائل والتحقق من سجلات Elastic Beanstalk الخاصة بك. تعلم كيفية اختبار الوكلاء باستخدام Microsoft Agent 365 SDK والتحقق من وظائف وكلك باستخدام أداة اختبار Agents Playground
سير عمل المطور
بمجرد اكتمال الإعداد، اتبع هذا السير للتطوير التكراري:
التطوير والاختبار محليا
استخدم وضع الساعة للتطوير السريع مع إعادة التحميل التلقائي:
# Automatically rebuild and restart on file changes
dotnet watch run
قم بإجراء تغييرات الكود، واحفظ الجهاز، واختبر محليا قبل النشر.
البناء وإعادة النشر إلى AWS Elastic Beanstalk
عندما تكون جاهزا لنشر التغييرات:
# 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 ومراقبة سجلات Elastic Beanstalk:
# Stream logs in real-time
eb logs --stream
هويتك، مخططك، نقطة نهاية البوت، والصلاحيات لا تحتاج إلى إعادة إنشائها.
Troubleshooting
استخدم هذا القسم لتشخيص وحل المشكلات الشائعة عند نشر وتشغيل وكيل Agent 365 على AWS Elastic Beanstalk. يغطي الاتصال والفحوصات الصحية. كما يعالج ربط المنافذ، وأخطاء البناء، ومشاكل الترخيص.
نقطة نهاية المراسلة لا تستقبل الطلبات
تحقق من التفاصيل التالية:
- نقطتك النهائية هي بالضبط:
http://<your-app>.elasticbeanstalk.com/api/messages - بيئة Elastic Beanstalk لديك صحية. استخدم الشيك مع
eb health - مجموعة الأمان الخاصة بك تسمح بحركة مرور HTTP/HTTPS الواردة
- لا توجد قواعد جدار حماية أو قيود على VPC
مشاكل صحة التطبيق
تحقق من صحة البيئة:
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 ساري المفعول يدويا، أو استخدم مسار مستخدم غير مرخص إذا كان ذلك مدعوما.
الحصول على المساعدة
- إذا واجهت مشاكل في واجهة Agent 365 غير مغطاة في قسم استكشاف الأخطاء هذا، راجع المشاكل المفتوحة على GitHub أو أنشئ مشكلة جديدة.
خيارات مساعدة إضافية
فكر في ما يلي للعثور على المساعدة:
مراجعة كود العينة والتوثيق في العينات
راجع أو قدم مشاكل أخرى في GitHub في مستودع SDK ذي الصلة: