Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Importante
Debe formar parte del programa de versión preliminar de Frontier para obtener acceso anticipado a Microsoft Agent 365. Frontier le conecta directamente con las innovaciones de inteligencia artificial más recientes de Microsoft. Las versiones preliminares de Frontier están sujetas a los términos de vista previa existentes en tus acuerdos con clientes. Dado que estas características siguen en desarrollo, su disponibilidad y funcionalidades pueden cambiar con el tiempo.
Aquí puedes aprender a construir, alojar, registrar y publicar un agente Agent 365 que se ejecute en AWS Elastic Beanstalk, usando la CLI de Agent 365. Microsoft Entra & Graph proporciona la identidad del agente, los permisos y el blueprint, mientras que AWS Elastic Beanstalk proporciona el tiempo de ejecución.
Si lo único que quieres es apuntar tu agente a tu código que está detrás de un endpoint de AWS, solo necesitas este paso: configura para hosting no Azure y luego sigue todos los demás pasos del ciclo de vida de desarrollo del Agente 365.
Objetivos
Aprende a usar Agent 365 y Microsoft 365 como 'plano de control' y:
- Despliegue en tiempo de ejecución de agentes en AWS Elastic Beanstalk
- Configure
a365.config.jsonfor non-Azure hosting - Crear Plano de Agente en Entra ID
- Configurar OAuth2 + permisos heredables
- Registrar el punto final de mensajería del Bot Framework apuntando a AWS
- Crear identidad de agente + usuario de agente
- (Opcional) Publicar en Microsoft 365 app surfaces
- Interacciones de prueba de extremo a extremo
Prerrequisitos
Antes de comenzar, asegúrate de que se cumplan los siguientes requisitos previos de Azure / Microsoft 365, AWS y entorno local.
Azure / Microsoft 365 prerequisites
Confirma el acceso a tu usuario de Microsoft Entra e instala las siguientes herramientas para crear identidades, planos y registrar a tu agente.
Un inquilino Microsoft Entra con:
- Permiso / rol para crear aplicaciones y planos de agentes (Administrador Global o equivalente)
- Necesitas formar parte del programa Frontier preview para obtener acceso anticipado a Microsoft Agent 365.
- Al menos una licencia de Microsoft 365 disponible para el usuario del Agente
Requisitos previos de Amazon Web Services (AWS)
Asegúrate de que los siguientes servicios y herramientas de AWS estén configurados para desplegar y gestionar tu entorno Elastic Beanstalk.
- Cuenta AWS con permisos apropiados
- Acceso a AWS Elastic Beanstalk habilitado
- AWS CLI instalada y configurada
- Instalación de CLI de tallo elástico de judías
Requisitos previos para el entorno del desarrollo local
Instala y configura las siguientes herramientas localmente para construir, ejecutar y desplegar el agente.
Editor de código: Se recomienda Visual Studio Code o Visual Studio
.NET SDK: .NET 8.0 SDK o posterior
AWS Toolkit: Instala esta extensión desde Visual Studio o Visual Studio Code e inicia sesión con tus credenciales AWS Identity and Access Management (IAM)
Acceso a la API LLM: Elige el servicio adecuado según la configuración de tu agente o tu proveedor de modelos preferido:
- Clave de la API de OpenAI: obtenga la clave de la API de OpenAI
- Azure OpenAI: cree e implemente un recurso de Azure OpenAI para obtener el punto de conexión y la clave de la API
Crea y despliega un agente .NET
Las siguientes instrucciones describen cómo crear un agente mínimo que:
- Responde a GET
/ - Acepta actividades del Marco Bot en POST
/api/messages
Crear directorio de proyectos
mkdir aws-a365-agent
cd aws-a365-agent
Inicializar el proyecto .NET
Para agilizar tu experiencia, utilizamos una muestra ya preparada. Clona el repositorio de Muestras de Agent365 y navega hasta la muestra dotnet\semantic-kernel\sample-agent .
El ejemplo Semantic Kernel Agent - C#/.NET incluye:
- Una API web central mínima ASP.NET
- Manejador de mensajes del Bot Framework en
/api/messages -
Punto final de comprobación de salud en
/ - Integración del Kernel Semántico para capacidades de IA
Navega y dotnet\semantic-kernel\sample-agent verifica que el proyecto se construya con éxito:
dotnet restore
dotnet build
Configurar modelo
Sigue las instrucciones del Paso 2: Configuración del LLM para configurar el proyecto usando tu clave Open API.
Prueba localmente (opcional)
Antes de desplegarte en AWS, prueba tu agente localmente:
# Run the application dotnet runPrueba los puntos finales en otro terminal:
# Test agent endpoint locally curl http://localhost:3978Pulsa
Ctrl+Cpara detener el servidor local.
Compilación e implementación
Elige la opción que prefieras para construir y desplega esta aplicación de ejemplo:
- Opción A: Compilar y desplegar desde Visual Studio
- Opción B: Compilar y desplegar en AWS Elastic Beanstalk con CLI
Opción A: Compilar y desplegar desde Visual Studio
Utiliza el AWS Toolkit para Visual Studio para publicar la app en Elastic Beanstalk con un asistente guiado.
En el Explorador de Soluciones, haz clic derecho en tu proyecto
Seleccionar Publicar en AWS Elastic Beanstalk
Sigue el Asistente de Despliegue de Hadías Mágicas:
- Elige tu perfil de credenciales AWS
- Seleccionar región (por ejemplo,
us-east-1) - Seleccionar Plataforma (
.NET Core on Linux) - Configurar la configuración del entorno
Seleccionar Despliegue
El asistente construye, empaqueta y despliega tu aplicación en AWS.
Opción B: Compilar y desplegar en AWS Elastic Beanstalk con CLI
Utiliza la CLI de Elastic Beanstalk para empaquetar y desplegar el agente .NET en un entorno Amazon Linux 2 de 64 bits; asegúrate de que la CLI de AWS/EB esté configurada y que la app se vincule a la PORT variable de entorno establecida por Beanstalk.
Construye y publica tu aplicación .NET:
# Publish for Linux runtime (AWS Elastic Beanstalk uses Amazon Linux) dotnet publish -c Release -o ./publish --runtime linux-x64Crear procfile con el contenido siguiente
web: dotnet ./SemanticKernelSampleAgent.dllInicializa Elastic Beanstalk para .NET. Se te pide que elijas Región y Plataforma:
eb initSeleccione:
-
Plataforma:
64bit-amazon-linux-2023-v3.7.0-running-.net-8 -
Región: Tu región AWS preferida (por ejemplo:
us-east-1)
-
Plataforma:
Crea un paquete de despliegue y despliega:
cd publish zip -r ../deploy.zip . cd .. eb create aws-a365-agent-env eb deployEsto hará lo siguiente:
- Crear una aplicación de Elastic Beanstalk
- Crea un entorno con un balanceador de carga
- Despliega tu aplicación
- Proporciona los recursos necesarios de AWS
Cuando termines, consigue tu punto final de Elastic Beanstal:
eb statusApunta tu punto final. Debe tener el siguiente aspecto:
http://aws-a365-agent-env.us-east-1.elasticbeanstalk.comEsta es la
messagingEndpointque utiliza la CLI de Agent 365 Dev Tools.
Nota:
Para entornos de producción, configura HTTPS añadiendo un certificado SSL/TLS en Elastic Beanstalk. El Bot Framework requiere HTTPS para los endpoints de producción.
Configure for non-Azure hosting
Crea a365.config.json en tu carpeta de proyecto Elastic Beanstalk ejecutando a365 config init:
Importante
Para alojamiento no Azure, debes:
- Configura
messagingEndpointla URL de tu Elastic Beanstalk (con/api/messagesruta) - Establezca
needDeploymentenfalse.
El a365.config.json archivo debería verse algo así:
{
"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"
}
La siguiente tabla resume los campos de configuración importantes y su propósito.
| Campo | Meaning |
|---|---|
messagingEndpoint |
Tu URL de Elastic Beanstalk + /api/messages |
"needDeployment": false |
Le dice a CLI: 'Yo alojo mi propio servidor; no despliegue en Azure' |
deploymentProjectPath |
Donde .env se produce el estampado |
Agente de construcción 365
Una vez que tengas el código de tu agente ejecutándose contra un endpoint de AWS, sigue los pasos restantes del ciclo de vida de desarrollo del Agente 365 para configurar tu agente del Agente 365.
Verifica el agente de principio a fin
Utiliza estas comprobaciones para confirmar que tu agente alojado en AWS es accesible, recibe actividades del Bot Framework y responde correctamente en las superficies del Agente 365.
Verificar la conectividad de la planta elástica de judías
Envía una solicitud GET a tu endpoint de Elastic Beanstalk.
curl http://aws-a365-agent-env.us-east-1.elasticbeanstalk.com/
La solicitud debería devolver este mensaje:
AWS Agent is running.
Consulta los registros de Elastic Beanstalk para ver si llegan mensajes del Bot Framework
Utiliza el registro de Elastic Beanstalk para verificar que tu agente recibe las actividades del Bot Framework y responde correctamente.
eb logs
O transmite registros en tiempo real:
eb logs --stream
Después de que un mensaje llegue a tu agente, verás:
POST 200 /api/messages
Received activity: { ... }
Agente de prueba de superficies del Agente 365
Dependiendo de tu entorno:
- Sitio de prueba de agentes
- Equipos (si se publican)
- Agente Shell
- Superficies federadas
Ahora puedes enviar mensajes y verificar los registros de tus Elastic Beanstal. Aprende a probar agentes usando el Microsoft Agent 365 SDK y a validar la funcionalidad de tu agente con la herramienta de pruebas Agents Playground
Flujo de trabajo del desarrollador
Una vez completada la configuración, sigue este flujo de trabajo para el desarrollo iterativo:
Desarrollar y probar localmente
Utiliza el modo reloj para un desarrollo rápido con recarga automática:
# Automatically rebuild and restart on file changes
dotnet watch run
Haz tus cambios de código, guarda y prueba localmente antes de desplegar.
Compilar y volver a desplegar en AWS Elastic Beanstalk
Cuando esté listo para desplegar tus cambios:
# 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
Pruebas y supervisión
Prueba mediante superficies del Agente 365 y monitoriza los registros de Elastic Beanstal:
# Stream logs in real-time
eb logs --stream
Tu identidad, blueprint, endpoint del bot y permisos NO necesitan ser recreados.
Solución de problemas
Utiliza esta sección para diagnosticar y resolver problemas comunes al desplegar y ejecutar un agente Agent 365 en AWS Elastic Beanstalk. Cubre la conectividad y los controles de salud. También aborda la asignación de puertos, errores de compilación y problemas de licencias.
Endpoint de mensajería que no recibe solicitudes
Consulta los siguientes detalles:
- Tu punto final es exactamente:
http://<your-app>.elasticbeanstalk.com/api/messages - El entorno de tu planta elástica de judías es saludable. Usa el cheque con
eb health - Tu grupo de seguridad permite tráfico entrante HTTP/HTTPS
- No existen reglas de firewall ni restricciones de VPC
Problemas de salud en la aplicación
Consulta la salud ambiental:
eb health --refresh
Consulta registros detallados:
eb logs
Problemas con la asignación de puertos
Asegúrate de que tu aplicación escuche en el puerto especificado por la PORT variable de entorno (Elastic Beanstalk lo configura automáticamente).
Problemas de compilación o ejecución en .NET
Comprueba errores de compilación usando estos comandos:
# Clean and rebuild
dotnet clean
dotnet build --verbosity detailed
Verificar la versión de .NET:
dotnet --version
dotnet --list-sdks
Revisa si hay problemas con el paquete:
# List installed packages
dotnet list package
# Update packages
dotnet restore --force
Fallo en la cesión de licencias
Asigna manualmente una licencia válida de Microsoft 365, o utiliza una ruta de usuario sin licencia si es permitida.
Obtener ayuda
- Si encuentras problemas con la CLI del Agente 365 que no se cubren en esta sección de diagnóstico, revisa los problemas abiertos en GitHub o crea uno nuevo.
Más opciones de ayuda
Considera lo siguiente para encontrar ayuda:
Revisa el código de ejemplo y la documentación en los ejemplos
Revisa o envía otros problemas de GitHub en el repositorio del SDK correspondiente: