Compartir a través de


Crea un agente Agent 365 desplegado en Amazon Web Services (AWS)

Importante

Debe formar parte del programa de versión preliminar 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.

Aprende a construir, alojar, registrar y publicar un agente Agent 365 que funcione en AWS Elastic Beanstalk, usando la CLI del Agente 365. Microsoft Entra y Graph proporcionan la identidad, los permisos y el plano técnico del agente, mientras que AWS Elastic Beanstalk proporciona el tiempo de ejecución.

Si quieres dirigir a tu agente a tu código que reside detrás de un endpoint de AWS, solo necesitas el siguiente paso: Configura para hosting no Azure. Luego, sigue todos los demás pasos del Ciclo de Vida del Agente 365.

Objetivos

Aprenda a usar el Agente 365 y Microsoft 365 como plano de control y:

  • Desplegar el runtime del agente en AWS Elastic Beanstalk
  • Configuración de a365.config.json para el hospedaje no Azure
  • 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 del agente
  • (Opcional) Publicar en superficies de las aplicaciones de Microsoft 365
  • Interacciones de prueba de extremo a extremo

Prerrequisitos

Antes de comenzar, asegúrese de que se cumplen los siguientes requisitos previos de Azure o Microsoft 365, AWS y entorno local.

requisitos previos de Azure/Microsoft 365

Confirme su acceso al tenant de Microsoft Entra e instale las siguientes herramientas para crear identidades, modelos y registrar su agente.

  • Un inquilino de Microsoft Entra con:

    • Permiso o rol para crear aplicaciones y planos de agentes (Administrador Global o equivalente)
    • Membresía en el programa Frontier preview para obtener acceso anticipado a Microsoft Agent 365.
    • Al menos una licencia de Microsoft 365 disponible para el usuario del Agente
  • CLI de Azure instalado y iniciado sesión.

  • Agente 365 CLI instalado

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
  • CLI de Elastic Beanstalk instalada

Requisitos previos para el entorno del desarrollo local

Instala y configura las siguientes herramientas localmente para construir, ejecutar y desplegar el agente.

Creación e implementación de un agente de .NET

Las siguientes instrucciones describen cómo crear un agente mínimo que:

  • Responde a GET
  • Acepta actividades de Bot Framework en solicitudes POST

Crear directorio de proyectos

mkdir aws-a365-agent
cd aws-a365-agent

Inicializar .NET proyecto

Para agilizar tu experiencia, este artículo utiliza una muestra ya preparada. Clonar el repositorio de Agent365 Samples y dirígete al ejemplo dotnet\semantic-kernel\sample-agent.

El agente de ejemplo de Kernel semántico: C#/.NET incluye:

  • Una API web de ASP.NET Core mínima
  • Manejador de mensajes del Bot Framework en
  • Punto final de comprobación de salud en
  • integración de Kernel semántico para las funcionalidades de inteligencia artificial

Accede a la plataforma y verifica que el proyecto se compile con éxito:

dotnet restore
dotnet build

Configurar modelo

Sigue las instrucciones del Paso 2: Configuración de LLM para configurar el proyecto usando tu clave Open API.

Prueba localmente (opcional)

  1. Antes de desplegarte en AWS, prueba tu agente localmente:

    # Run the application
    dotnet run
    
  2. Prueba los puntos finales en otro terminal:

    # Test agent endpoint locally
    curl http://localhost:3978
    
  3. Pulsa para 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 e implementar desde Visual Studio

Utiliza el AWS Toolkit para Visual Studio, para publicar la aplicación en Elastic Beanstalk mediante un asistente guiado.

  1. En Explorador de soluciones, haga clic con el botón derecho en el proyecto.

  2. Selecciona Publicar en AWS Elastic Beanstalk.

  3. Sigue el Asistente de Despliegue de Beanstalk:

    • Elige tu perfil de credenciales de AWS.
    • Seleccionar Región (Por ejemplo, ).
    • Seleccione Plataforma (.NET Core on Linux).
    • Configura la configuración del entorno.
  4. Seleccione Implementar.

El asistente construye, empaqueta y despliega tu aplicación en AWS.

Opción B: Compilar y desplegar en AWS Elastic Beanstalk con CLI

Use la CLI de Elastic Beanstalk para empaquetar e implementar el agente de .NET en un entorno de Amazon Linux 2 de 64 bits. Asegúrate de que la CLI de AWS y la de EB estén configuradas. La app se vincula a la variable de entorno establecida por Beanstalk.

  1. Compile y publique la aplicación de .NET:

    # Publish for Linux runtime (AWS Elastic Beanstalk uses Amazon Linux)
    dotnet publish -c Release -o ./publish --runtime linux-x64
    

    Crea un Procfile con el siguiente contenido.

    web: dotnet ./SemanticKernelSampleAgent.dll
    
  2. Inicialice Elastic Beanstalk para .NET. Se te pide que elijas Región y Plataforma:

    eb init
    
  3. Seleccione:

    • Plataforma:
    • Región: Tu región AWS preferida (por ejemplo: )
  4. Crea un paquete de despliegue y despliega:

    cd publish
    zip -r ../deploy.zip .
    cd ..
    eb create aws-a365-agent-env
    eb deploy
    

    Este comando:

    • Crea una aplicación de Elastic Beanstalk.
    • Crea un entorno con un balanceador de carga.
    • Despliega tu aplicación.
    • Provisiona los recursos necesarios de AWS.
  5. Cuando hayas terminado, consigue tu endpoint de Elastic Beanstalk.

    eb status
    

    Apunta tu punto final. Debe tener el siguiente aspecto:

    http://aws-a365-agent-env.us-east-1.elasticbeanstalk.com
    

    Este endpoint es el utilizado por 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.

Configuración para el hospedaje que no es de Azure

Crea en tu carpeta de proyecto Elastic Beanstalk ejecutando :

Importante

Para el hospedaje no Azure, establezca estos valores:

  • : tu URL de Elastic Beanstalk con la ruta
  • :

El 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 +
"needDeployment": false Indica a la CLI "Hospedo mi propio servidor; no se implemente en Azure'
deploymentProjectPath Donde se produce el estampado

Agente de construcción 365

Después de que el código de tu agente se ejecute en 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 manera integral

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 Elastic Beanstalk

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, ves:

POST 200 /api/messages
Received activity: { ... }

Agente de prueba que aparece del Agente 365

Dependiendo de tu entorno, puedes probar a tu agente desde diferentes superficies:

  • Sitio de prueba de agentes
  • Equipos (si se publican)
  • Agente Shell
  • Superficies federadas

Puedes enviar mensajes y verificar los registros de tus Elastic Beanstalk. 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 utilizando interfaces de Agent 365 y supervisa los registros de Elastic Beanstalk.

# Stream logs in real-time
eb logs --stream

No necesitas recrear tu identidad, blueprint, endpoint del bot ni permisos.

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.

Sugerencia

La Guía de Resolución de Problemas del Agente 365 contiene recomendaciones de alto nivel para la solución de problemas, mejores prácticas y enlaces a contenido de solución de problemas para cada parte del ciclo de vida del desarrollo del Agente 365.

El endpoint de mensajería no está recibiendo solicitudes

Consulta los siguientes detalles:

  • Tu punto final es exactamente:
    http://<your-app>.elasticbeanstalk.com/api/messages
  • El entorno de Elastic Beanstalk está en buen estado. Para realizar la comprobación, utilice el .
  • Tu grupo de seguridad permite tráfico HTTP o HTTPS entrante.
  • No hay reglas de firewall ni restricciones de VPC.

Problemas de salud de la aplicación

Consulta la salud ambiental:

eb health --refresh

Consulta registros detallados:

eb logs

Problemas con la vinculación de puertos

Asegúrate de que tu aplicación escuche en el puerto especificado por la variable de entorno (Elastic Beanstalk establece este valor automáticamente).

.NET problemas de compilación o tiempo de ejecución

Comprobar si hay errores de compilación usando estos comandos:

# Clean and rebuild
dotnet clean
dotnet build --verbosity detailed

Compruebe .NET versión:

dotnet --version
dotnet --list-sdks

Comprobar si hay problemas con el paquete:

# List installed packages
dotnet list package

# Update packages
dotnet restore --force

Fallo en la cesión de licencias

Asigne manualmente una licencia de Microsoft 365 válida o use una ruta de acceso de usuario sin licencia si se admite.