Compartir a través de


Filtrado de las respuestas con metadatos

QnA Maker permite agregar metadatos, en forma de pares clave-valor, a los pares de preguntas y respuestas. Luego puede usar esta información para filtrar los resultados de las consultas de usuario y para almacenar información adicional que se puede usar en las conversaciones de seguimiento.

Nota

El servicio QnA Maker se retirará del mercado el 31 de marzo de 2025. Ya hay disponible una versión más reciente de la funcionalidad de preguntas y respuestas como parte de Lenguaje de Azure AI. Para más información sobre las funcionalidades de respuesta a preguntas en el servicio de lenguaje, consulte Respuesta a preguntas. A partir del 1 de octubre de 2022 no podrá crear nuevos recursos de QnA Maker. Para obtener información sobre la migración de bases de conocimiento de QnA Maker existentes para responder preguntas, consulte la guía de migración.

Almacenamiento de preguntas y respuestas con una entidad QnA

Resulta importante entender cómo QnA Maker almacena los datos de preguntas y respuestas. En la siguiente ilustración se muestra una entidad QnA:

Ilustración de una entidad QnA

Cada entidad QnA tiene un identificador único y persistente. Puede usar el identificador para realizar actualizaciones en una entidad QnA determinada.

Uso de metadatos para filtrar las respuestas por etiquetas de metadatos personalizadas

Agregar los metadatos le permite filtrar las respuestas según estas etiquetas de metadatos. Agregue la columna de metadatos desde el menú View Options (Ver opciones). Para agregar los metadatos a la base de conocimiento, seleccione el icono + de los metadatos para agregar un par de metadatos. Este par consta de una clave y un valor.

Captura de pantalla de incorporación de metadatos

Filtrar los resultados con strictFilters para las etiquetas de metadatos

Considere la pregunta del usuario "¿Cuándo cierra este hotel?", donde la intención está implícita para el restaurante "Paradise".

Puesto que los resultados solo son necesarios para el restaurante "Paradise", puede establecer un filtro en la llamada GenerateAnswer para los metadatos "Nombre del restaurante". Esto se muestra en el ejemplo siguiente:

{
    "question": "When does this hotel close?",
    "top": 1,
    "strictFilters": [ { "name": "restaurant", "value": "paradise"}]
}

Filtrar por origen

En caso de que tenga varios orígenes de contenido en la base de conocimiento y quiera limitar los resultados a un conjunto determinado de orígenes, puede hacerlo con la palabra clave reservada source_name_metadata, como se muestra a continuación.

"strictFilters": [
    {
        "name": "category",
        "value": "api"
    },
   {
        "name": "source_name_metadata",
        "value": "boby_brown_docx"
    },
   {
        "name": "source_name_metadata",
        "value": "chitchat.tsv"
   }
]

AND lógico de manera predeterminada

Para combinar varios filtros de metadatos en la consulta, agregue los filtros de metadatos adicionales a la matriz de la propiedad strictFilters. De manera predeterminada, los valores se combinan lógicamente (AND). Una combinación lógica requiere que todos los filtros coincidan con los pares PyR para que se devuelva el par en la respuesta.

Esto es equivalente a utilizar la propiedad strictFiltersCompoundOperationType con el valor de AND.

OR lógico mediante la propiedad strictFiltersCompoundOperationType

Al combinar varios filtros de metadatos, si solo le preocupa uno o algunos de los filtros que coinciden, use la propiedad strictFiltersCompoundOperationType con el valor de OR.

Esto permite que knowledge base devuelva respuestas cuando algún filtro coincida, pero no devolverá respuestas que no tengan metadatos.

{
    "question": "When do facilities in this hotel close?",
    "top": 1,
    "strictFilters": [
      { "name": "type","value": "restaurant"},
      { "name": "type", "value": "bar"},
      { "name": "type", "value": "poolbar"}
    ],
    "strictFiltersCompoundOperationType": "OR"
}

Ejemplos de metadatos en los inicios rápidos

Obtenga más información sobre los metadatos en el inicio rápido del portal de QnA Maker sobre metadatos:

Uso de los resultados de las preguntas y respuestas para mantener el contexto de la conversación

La respuesta a GenerateAnswer contiene la información de los metadatos correspondientes al par de pregunta y respuesta coincidente. Puede usar esta información en la aplicación cliente para almacenar el contexto de la conversación anterior para su uso en conversiones posteriores.

{
    "answers": [
        {
            "questions": [
                "What is the closing time?"
            ],
            "answer": "10.30 PM",
            "score": 100,
            "id": 1,
            "source": "Editorial",
            "metadata": [
                {
                    "name": "restaurant",
                    "value": "paradise"
                },
                {
                    "name": "location",
                    "value": "secunderabad"
                }
            ]
        }
    ]
}

Pasos siguientes