Planeamiento de la aplicación de respuesta de preguntas personalizada

Para planear la aplicación de respuesta a preguntas personalizada, debe comprender cómo funciona esta característica y cómo interactúa con otros servicios de Azure. También debe tener una idea sólida de los conceptos de los proyectos.

Recursos de Azure

Cada recurso de Azure creado con la respuesta a preguntas personalizada tiene una finalidad concreta. Cada recurso tiene su propia finalidad, límites y plan de tarifa. Es importante comprender la función de estos recursos para que pueda usar ese conocimiento en el proceso de planeamiento.

Recurso Propósito
Recurso de idioma Creación, telemetría y punto de conexión de consulta de predicciones
Recurso de Azure AI Search Almacenamiento y búsqueda de datos

Planeamiento de recursos

El rendimiento de la respuesta a preguntas personalizada está actualmente limitado a 10 registros de texto por segundo tanto para las API de administración como para las de predicción. A fin de obtener un rendimiento de 10 registros de texto por segundo con el servicio, se recomienda la SKU S1 (una instancia) de Azure AI Search.

Recurso de idioma

Un único recurso de idioma que tenga habilitada la característica de respuesta a preguntas personalizada puede hospedar más de un proyecto. El número de proyectos está determinado por la cantidad de índices admitidos en el plan de tarifa de Azure AI Search. Obtenga más información sobre la relación de los índices con los proyectos.

Tamaño y rendimiento del proyecto

Cuando compile una aplicación real, planee recursos suficientes para el tamaño del proyecto y las solicitudes de predicción de consultas que espere.

Un tamaño de proyecto se controla mediante:

La solicitud de predicción de consultas del proyecto se controla mediante el plan de la aplicación web y la propia aplicación web. Consulte la configuración recomendada para decidir el plan de tarifa.

Descripción del impacto de la selección de recursos

Para seleccionar los recursos de manera adecuada, el proyecto debe responder a las predicciones de consultas correctamente.

Si el proyecto no funciona de forma correcta, el problema suele deberse a una administración de recursos inadecuada.

En el caso de una selección de recursos incorrecta, es necesario investigar para determinar qué recurso debe cambiar.

Project

Un proyecto está asociado directamente a su recurso de idioma. Contiene los pares de preguntas y respuestas (PyR) que se usan para responder a las solicitudes de predicción de consultas.

Consideraciones de idioma

Ahora puede tener proyectos en distintos idiomas dentro del mismo recurso de idioma en la que esté habilitada la característica de respuesta a preguntas. Al crear el primer proyecto, puede elegir si quiere usar el recurso para proyectos en un único idioma que se aplique a todos los proyectos posteriores o si prefiere seleccionar el idioma cada vez que se cree un proyecto.

Ingesta de orígenes de datos

Respuesta personalizada a preguntas también admite documentos sin estructurar. Puede cargar un archivo con contenido de este tipo.

Actualmente no se admiten direcciones URL para contenido sin estructurar.

El proceso de ingesta convierte los tipos de contenido admitidos a Markdown. La edición posterior de la respuesta se realiza con Markdown. Después de crear un proyecto, puede editar pares de preguntas y respuestas en Language Studio mediante la creación de texto enriquecido.

Consideraciones sobre el formato de los datos

Dado que el formato final de un par de pregunta y respuesta es Markdown, es importante entender la compatibilidad con Markdown.

Personalidad de bot

Agregue una personalidad de bot al proyecto con charla. Esta personalidad incluye respuestas en un determinado tono de conversación, como profesional y amistoso. La función de charla se proporciona como un conjunto conversacional, que puede agregar, editar y quitar como le convenga.

Se recomienda una personalidad de bot si el bot se conecta al proyecto. Puede usar la charla en el proyecto incluso si también se conecta a otros servicios, pero debe revisar cómo interactúa el servicio de bot para saber si ese es el diseño de arquitectura correcto para su uso.

Flujo de conversación con un proyecto

Normalmente, el flujo de conversación empieza con un saludo por parte de un usuario, como Hi o Hello. El proyecto puede responder de manera general, como Hi, how can I help you, y también proporcionar una serie de solicitudes de seguimiento para continuar con la conversación.

Debe diseñar el flujo de conversación con un bucle en mente para que el usuario sepa cómo usar el bot y que este no lo abandone durante la conversación. Los mensajes de seguimiento proporcionan vinculación entre los pares de preguntas y respuestas, que hacen posible el flujo de conversación.

Creación con colaboradores

Los colaboradores podrían ser otros desarrolladores que comparten la pila de desarrollo completa de la aplicación del proyecto o tal vez se limiten a crear el proyecto.

la creación del proyecto admite varios permisos de acceso basado en roles que se aplican en Azure Portal para limitar el ámbito de las capacidades de un colaborador.

Integración con aplicaciones cliente

La integración con aplicaciones cliente se realiza enviando una consulta al punto de conexión del tiempo de ejecución de predicción. Se envía una consulta al proyecto concreto con una solicitud basada en REST o en el SDK al punto de conexión de la aplicación web de respuesta a preguntas personalizada.

Para autenticar correctamente una solicitud de cliente, la aplicación cliente debe enviar las credenciales correctas y el identificador del proyecto. Si usa un Servicio de Bot de Azure AI, defina esta configuración como parte de la configuración del bot en Azure Portal.

Flujo de conversación en una aplicación cliente

El flujo de conversación en una aplicación cliente, como un bot de Azure, y puede requerir alguna funcionalidad antes y después de interactuar con el proyecto.

¿La aplicación cliente admite el flujo de conversación, ya sea proporcionando medios alternativos para controlar los mensajes de seguimiento o incluyendo una charla? Si es así, diséñelos antes y asegúrese de que la consulta de la aplicación cliente la controle correctamente otro servicio o cuando se envíe al proyecto.

Aprendizaje activo desde una aplicación cliente

La respuesta a preguntas personalizada usa el aprendizaje activo para mejorar el proyecto mediante la sugerencia de preguntas alternativas a una respuesta. La aplicación cliente es responsable de una parte de este aprendizaje activo. A través de las solicitudes de conversación, la aplicación cliente puede determinar que el proyecto ha devuelto una respuesta que no es útil para el usuario y puede determinar una respuesta mejor. La aplicación cliente debe enviar esta información de nuevo al proyecto para mejorar la calidad de la predicción.

Aportación de una respuesta predeterminada

Si el proyecto no encuentra una respuesta, devuelve la respuesta predeterminada. Esta respuesta se puede configurar en la página de Configuración.

Esta respuesta predeterminada es diferente de la que ofrece el bot de Azure. La respuesta predeterminada para el bot de Azure se define en Azure Portal como parte de la configuración. Se devuelve cuando no se cumple el umbral de puntuación.

Predicción

La predicción es la respuesta del proyecto e incluye más información que simplemente la respuesta. Para obtener una respuesta de predicción de consulta, use la API de respuesta a preguntas personalizada.

Fluctuaciones de la puntuación de predicción

Una puntuación puede cambiar en función de varios factores:

  • Número de respuestas solicitadas en la respuesta con la propiedad top
  • La variedad de preguntas alternativas disponibles
  • El filtrado de metadatos
  • Consulta enviada al proyecto test o production.

Análisis con Azure Monitor

Para la respuesta a preguntas personalizada, se ofrece telemetría a través del servicio Azure Monitor. Use nuestras principales consultas para entender las métricas.

Ciclo de vida del desarrollo

El ciclo de vida del desarrollo de un proyecto es constante, ya que consta de la edición, la prueba y la publicación del proyecto.

Desarrollo del proyecto de pares de preguntas y respuestas

Los pares de preguntas y respuestas deben diseñarse y desarrollarse en función del uso de la aplicación cliente.

Cada par puede contener:

  • Metadatos: se pueden filtrar al realizar consultas para permitirle etiquetar los pares de preguntas y respuestas con información adicional sobre el origen, el contenido, el formato y la finalidad de los datos.
  • Solicitudes de seguimiento: ayudan a determinar una ruta en el proyecto para que el usuario llegue a la respuesta correcta.
  • Preguntas alternativas: importantes para permitir que la búsqueda haga coincidir la respuesta con otras formas de la pregunta. Las sugerencias de aprendizaje activo se convierten en preguntas alternativas.

Desarrollo de DevOps

El desarrollo de un proyecto para insertarla en una canalización de DevOps requiere que el proyecto esté aislado durante las pruebas por lotes.

Un proyecto comparte el índice de Azure AI Search con todos los demás proyectos del recurso de idioma. Aunque el proyecto está aislado por partición, si se comparte el índice, se puede producir una diferencia en la puntuación cuando se compara con el proyecto publicado.

Para tener la misma puntuación en los proyectos test y production, aísle un recurso de idioma en un único proyecto. En esta arquitectura, el recurso solo necesita persistir tanto tiempo como la prueba por lotes aislada.

Pasos siguientes