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.
En este artículo se muestra cómo integrar un bot de OpenAI conversacional con un chat de Azure Communication Services. El bot de chat de OpenAI usa Microsoft Bot Framework integrado con kernel semántico. El bot de OpenAI recupera y resume las respuestas de una base de conocimiento interna para responder a las preguntas del usuario en lenguaje natural.
Paso 1: Implementación de un modelo base con Azure AI Foundry
En el portal de Azure AI Foundry, siga el artículo Creación de un proyecto para crear un proyecto. Cuando se le solicite, cree un nuevo centro y acepte todas las configuraciones predeterminadas.
Abra el proyecto, vaya a Funcionalidades incluidas, seleccione Azure OpenAI Service y guarde la clave de API y la dirección URL del punto de conexión de servicio.
En el menú izquierdo, vaya a Mis recursos → Modelos y puntos de conexión. A continuación, haga clic en + Implementar modelo y elija Implementar modelo base.
Seleccione gpt-4o y haga clic en Confirmar.
Escriba un nombre de implementación de su elección y haga clic en Conectar e implementar.
Una vez completada la implementación, vuelva a Modelos y puntos de conexión para comprobar que el modelo se está ejecutando. En este ejemplo, el modelo implementado es gpt-4o.
Paso 2: Creación de un recurso de aplicación web
En Azure Portal, haga clic en Crear un recurso. En el cuadro de búsqueda, escriba aplicación web. Seleccione el icono Aplicación web.
En Crear aplicación web, seleccione o escriba los detalles de la aplicación, incluida la región en la que quiere implementarla.
Seleccione Revisar y crear para validar la implementación y revisar los detalles de esta. Seleccione Crear.
Cuando se crea el recurso de aplicación web, copie la dirección URL del nombre de host que se muestra en los detalles del recurso. La dirección URL formará parte del punto de conexión que cree para la aplicación web.
Paso 3: Creación de un recurso de Azure Bot Service
En Azure Portal, haga clic en Crear un recurso. En el cuadro de búsqueda, escriba bot. Seleccione el icono de Azure Bot .
En Crear un bot de Azure, seleccione Multi Tenant como Tipo de aplicación y Crear nuevo identificador de aplicación de Microsoft" como Tipo de creación.
Seleccione Revisar y crear para validar la implementación y revisar los detalles de esta. Seleccione Crear.
Obtenga el identificador de la aplicación de bot y cree la contraseña. Registre estos valores para usarlos para configuraciones posteriores.
Paso 4: Creación de un punto de conexión de mensajería para el bot
Azure Bot Service normalmente espera a que el controlador de aplicaciones web de la aplicación de bot exponga un punto de conexión con el formato /api/messages
. El punto de conexión controla todos los mensajes enviados al bot.
A continuación, en el recurso de bot, cree un punto de conexión de mensajería de aplicación web:
En Azure Portal, vaya al recurso de Azure Bot. En el menú de recursos, seleccione Configuración.
En Configuración, en Punto de conexión de Mensajes, pegue la dirección URL del nombre de host de la aplicación web que copió en la sección anterior. Agregue a la URL con
/api/messages
.Selecciona Aplicar.
Paso 5: Creación de un recurso de Azure Communication Service
En Azure Portal, seleccione Crear un recurso. En el cuadro de búsqueda, escriba Communication Services. Seleccione el azulejo Communication Services.
En Crear un servicio de comunicación de Azure, puede especificar la suscripción, el grupo de recursos, el nombre del recurso de Communication Services y la geografía asociada al recurso.
Seleccione Revisar y crear para validar la implementación y revisar los detalles de esta. A continuación, seleccione Crear.
Vaya al recurso. Seleccione Configuración - Identidades y Tokens de Acceso de Usuario>Chat, a continuación, haga clic en Generar. Guarde el token de identidad y acceso de usuario para su uso futuro.
Paso 6: Habilitar el canal de chat de Communication Services
Cuando tenga un recurso de Communication Services, puede configurar un canal de Communication Services en el recurso del bot. Este proceso genera un identificador de usuario de Bot Azure Communication Services para el bot.
En Azure Portal, vaya al recurso de Azure Bot. En el menú de recursos, seleccione Canales. En la lista de canales disponibles, seleccione Communication Services - Chat.
Seleccione Conectar para ver una lista de los recursos de Communication Services que están disponibles en su suscripción.
En el panel Nueva conexión, seleccione el recurso de chat de Communication Services y, después, seleccione Aplicar.
Cuando se comprueban los detalles del recurso, se muestra un identificador de usuario de Bot Azure Communication Services en la columna Bot Azure Communication Services Id (Id. de Bot Azure Communication Services ). Guarde el identificador para su uso posterior.
Paso 7: Implementación de la aplicación web
Abra la carpeta
ChatBot
en el Repositorio de muestra en Visual Studio Code (VS Code). Asegúrese de usar VS Code porque admite el identificador de Entra de Microsoft en la implementación de código.Reemplace los marcadores de posición del repositorio de ejemplo por valores reales:
- En el
SemanticKernelService.cs
archivo, rellene los valores de las variablesmodelId
,endpoint
yapiKey
. - En el
appsettings.json
archivo, rellene los valores de las variablesMicrosoftAppId
yMicrosoftAppPassword
usando elbot app id
y elbot password
que registró en el Paso 3.
- En el
Instale la extensión de Azure App Service en VS Code.
Inicie sesión en su cuenta de Azure en VS Code. Para acceder al panel de inicio de sesión, haga clic en el icono de Azure en la barra de actividad del lado de la ventana.
Instale la extensión de Azure App Service en VS Code.
Compile el proyecto ejecutando el comando siguiente en el directorio raíz del proyecto "ChatBot".
dotnet publish -c Release -o ./bin/Publish
Este comando genera las bin
carpetas y obj
.
Para implementar la aplicación web, haga clic con el botón derecho en la nueva
/bin/Publish
carpeta y seleccione Implementar en aplicación web.Elija la aplicación web de Azure App Service en la que quiere implementar la aplicación. Confirme el despliegue.
Paso 8: Ejecución de la demostración
Siga los pasos anteriores a "Obtener un cliente de subprocesos de chat" en Agregar chat a la aplicación para crear una aplicación de chat e iniciar un subproceso.
Notas clave:
- Ya ha creado el recurso del Servicio de Comunicación de Azure en el portal, por lo que puede usar directamente
<Azure Communication Services endpoint>
,<Access_ID>
y<Access_Token>
en el código. - Al crear un hilo, es necesario crear un objeto
ChatParticipant
utilizando elBot Azure Communication Services User ID
creado en El Paso 6: habilitar el Canal de chat de Communication Services como<Access_ID>
para representar al usuario del bot. - Guarde el
Thread Id
para su uso posterior.
- Ya ha creado el recurso del Servicio de Comunicación de Azure en el portal, por lo que puede usar directamente
Abra la composición de la Biblioteca de UI: UI de hilos de Azure Communication Services Chat: unirse a un hilo de chat existente.
Proporcione la información necesaria para unirse a un subproceso de chat existente.
- Nombre para mostrar: puede elegir el que prefiera.
- Identificador de usuario para el usuario: el
<Access_ID>
guardado en el paso 8.1. - Token válido para el usuario: el
<Access_Token>
guardado en el paso 8.1. - Punto de conexión de Azure Communication Services: el
<Azure Communication Services endpoint>
guardado en el paso 8.1. - Hilo existente:
Thread Id
guardado en el paso 8.1.
Haga las siguientes preguntas en secuencia:
- Preguntas 1: Mi identificador de usuario es 110. Compré un portátil hace varios días. ¿Podría ayudar a realizar un seguimiento de la entrega?
- Pregunta 2: Solicité una devolución para mi Power Bank. ¿Alguna actualización?
- Pregunta 3: Compré auriculares Bluetooth hace 2 días, pero aún no se han enviado. ¿Por qué?
OpenAI recupera los datos relevantes para la semántica de la pregunta y proporciona una respuesta basada en los datos disponibles.
Marcas
Este proyecto puede contener marcas comerciales o logotipos para proyectos, productos o servicios. El uso autorizado de marcas comerciales o logotipos de Microsoft está sujeto a las Instrucciones sobre marcas y marcas comerciales de Microsoft y debe seguirlas.
El uso de marcas comerciales o logotipos de Microsoft en versiones modificadas de este proyecto no debe causar confusión ni implicar el patrocinio de Microsoft.
Cualquier uso de marcas comerciales o logotipos de terceros está sujeto a las directivas de dichos terceros.
Artículos relacionados
- Agregue un bot a la aplicación de chat.
- Únase a un subproceso de chat existente desde la biblioteca de interfaz de usuario del subproceso de chat de Azure Communication Services.