Compartir vía


Procedimiento para usar Reconocimiento de entidades con nombre (NER)

La característica NER puede evaluar texto no estructurado y extraer entidades con nombre del texto en varias categorías predefinidas, por ejemplo: persona, ubicación, evento, producto y organización.

Opciones de desarrollo

Para usar el reconocimiento de entidad con nombre, deberá enviar texto no estructurado sin formato para su análisis y administrar la salida de la API en la aplicación. El análisis se realiza tal cual, sin personalización adicional al modelo usado en los datos. Hay dos maneras de usar el reconocimiento de entidades con nombre:

Opción de desarrollo Descripción
Language Studio Language Studio es una plataforma basada en la web que le permitirá probar la vinculación de entidades con ejemplos de texto sin tener cuentas de Azure y usando sus propios datos al registrarse. Para obtener más información, consulte el sitio web de Language Studio o la guía de inicio rápido de Language Studio.
API REST o biblioteca cliente (SDK de Azure) Integre el reconocimiento de entidades con nombre en las aplicaciones mediante la API REST o la biblioteca cliente disponible en una variedad de lenguajes. Para más información, consulte el inicio rápido de reconocimiento de entidades con nombre.

Determinación de cómo procesar los datos (opcional)

Idiomas de entrada

Al enviar documentos para su procesamiento, puede especificar en cuál de los idiomas admitidos están escritos. Si no especifica un idioma, la extracción de frases clave se establece de manera predeterminada en inglés. La API puede devolver desplazamientos en la respuesta para admitir diferentes codificaciones multilingües y emojis.

Envío de datos

El análisis se realiza tras la recepción de la solicitud. El uso de la característica NER de forma sincrónica no tiene estado. No se almacenan datos en la cuenta y los resultados se devuelven inmediatamente en la respuesta.

Cuando se usa esta característica de forma asincrónica, los resultados de la API están disponibles durante 24 horas desde el momento en que se ingiere la solicitud y se indica en la respuesta. Después de este período de tiempo, los resultados se purgan y ya no están disponibles para la recuperación.

La API intentará detectar las categorías de entidad definidas para un idioma de documento determinado.

Obtención de los resultados de NER

Cuando obtiene los resultados de NER, puede transmitirlos a una aplicación, o bien guardar la salida en un archivo en el sistema local. La respuesta de la API incluye entidades reconocidas, lo que incluye sus categorías y subcategorías, y las puntuaciones de confianza.

Selección de las entidades que se van a devolver

La API intenta detectar los tipos y las etiquetas de entidad definidos para el idioma de un documento determinado. Los tipos de entidad y las etiquetas reemplazan las categorías y subcategorías que usaban los modelos más antiguos, pues permiten definir entidades con más flexibilidad. También puede especificar qué entidades se detectan y devuelven. Use los parámetros opcionales includeList y excludeList con los tipos de entidad adecuados. En el ejemplo siguiente solo Location se detectaría. Puede especificar uno o varios tipos de entidad que se van a devolver. Dados los tipos y la jerarquía de etiquetas introducidas para esta versión, tiene la flexibilidad de filtrar por diferentes niveles de granularidad de la manera siguiente:

Entrada:

Nota:

En este ejemplo, devuelve solo el tipo de entidad "Location".

{
    "kind": "EntityRecognition",
    "parameters": 
    {
        "includeList" :
        [
            "Location"
        ]
    },
    "analysisInput":
    {
        "documents":
        [
            {
                "id":"1",
                "language": "en",
                "text": "We went to Contoso foodplace located at downtown Seattle last week for a dinner party, and we adore the spot! They provide marvelous food and they have a great menu. The chief cook happens to be the owner (I think his name is John Doe) and he is super nice, coming out of the kitchen and greeted us all. We enjoyed very much dining in the place! The pasta I ordered was tender and juicy, and the place was impeccably clean. You can even pre-order from their online menu at www.contosofoodplace.com, call 112-555-0176 or send email to order@contosofoodplace.com! The only complaint I have is the food didn't come fast enough. Overall I highly recommend it!"
            }
        ]
    }
}

En los ejemplos anteriores se devolverían entidades que se encuentran en el tipo de entidad Location, como las entidades etiquetadas GPE, Structural y Geological como se describe en tipos de entidad y etiquetas. También podríamos filtrar aún más las entidades devueltas mediante una de las etiquetas de entidad para el tipo de entidad Location, como filtrar aquellas que solo tienen la etiqueta GPE:


    "parameters": 
    {
        "includeList" :
        [
            "GPE"
        ]
    }
    

Este método devuelve todas las entidades Location que solo se encuentran bajo la etiqueta GPE y omite cualquier otra entidad que se incluya en el tipo de etiquetado Location con cualquier otra etiqueta de entidad, como las entidades Location etiquetadas con Structural y Geological. También podríamos profundizar más en nuestros resultados mediante el parámetro excludeList. Las entidades etiquetadas GPE se pueden etiquetar con City, State, CountryRegion y Continent. Por ejemplo, podríamos excluir las etiquetas Continent y CountryRegion para nuestro ejemplo:


    "parameters": 
    {
        "includeList" :
        [
            "GPE"
        ],
        "excludeList": :
        [
            "Continent",
            "CountryRegion"
        ]
    }
    

Estos parámetros nos permiten filtrar solo aquellos tipos de entidad que sean Location, ya que la etiqueta de entidad GPE incluida en el parámetro includeList se encuentra bajo el tipo Location. A continuación, filtramos solo por entidades geopolíticas y excluimos las entidades etiquetadas con Continent y CountryRegion.

Atributos de salida adicionales

Para proporcionar a los usuarios una mayor comprensión de los tipos de una entidad y mejorar la usabilidad, NER admite estos atributos en la salida:

Nombre del atributo Tipo Definición
type Cadena El tipo más específico de entidad detectada.

Por ejemplo, "Seattle" tiene los atributos City, GPE (entidad geopolítica) y Location. La clasificación más granular para "Seattle" es City. El tipo sería City para el texto "Seattle".
tags Lista (etiquetas) Lista de objetos de etiqueta que expresa la afinidad de la entidad detectada con una jerarquía o cualquier otra agrupación.

Una etiqueta contiene dos campos:
name: nombre único para la etiqueta.
2. confidenceScore: puntuación de confianza asociada para una etiqueta que va de 0 a 1.

Este tagName único se usa para filtrar en los parámetros inclusionList y exclusionList.
metadata Object Los metadatos son un objeto que contiene más datos sobre el tipo de entidad detectado. Cambia en función del campo metadataKind.

Salida de ejemplo

Esta salida de ejemplo incluye un ejemplo de los atributos de salida adicionales.

{ 
    "kind": "EntityRecognitionResults", 
    "results": { 
        "documents": [ 
            { 
                "id": "1", 
                "entities": [ 
                    { 
                        "text": "Microsoft", 
                        "category": "Organization", 
                        "type": "Organization", 
                        "offset": 0, 
                        "length": 9, 
                        "confidenceScore": 0.97, 
                        "tags": [ 
                            { 
                                "name": "Organization", 
                                "confidenceScore": 0.97 
                            } 
                        ] 
                    }, 
                    { 
                        "text": "One", 
                        "category": "Quantity", 
                        "type": "Number", 
                        "subcategory": "Number", 
                        "offset": 21, 
                        "length": 3, 
                        "confidenceScore": 0.9, 
                        "tags": [ 
                            { 
                                "name": "Number", 
                                "confidenceScore": 0.8 
                            }, 
                            { 
                                "name": "Quantity", 
                                "confidenceScore": 0.8 
                            }, 
                            { 
                                "name": "Numeric", 
                                "confidenceScore": 0.8 
                            } 
                        ], 
                        "metadata": { 
                            "metadataKind": "NumberMetadata", 
                            "numberKind": "Integer", 
                            "value": 1.0 
                        } 
                    } 
                ], 
                "warnings": [] 
            } 
        ], 
        "errors": [], 
        "modelVersion": "2023-09-01" 
    } 
} 

Especificación del modelo de NER

De manera predeterminada, esta característica usará el modelo de IA disponible más reciente en el texto. También puede configurar las solicitudes de API para usar una versión del modelo específica.

Límites de servicio y datos

Para obtener información sobre el tamaño y el número de solicitudes que puede enviar por minuto y segundo, consulte el artículo sobre límites del servicio.

Pasos siguientes

Introducción al reconocimiento de entidades con nombre