Partilhar via


Como usar o Reconhecimento de Entidade Nomeada (NER)

O recurso NER pode avaliar texto não estruturado e extrair entidades nomeadas do texto em várias categorias predefinidas, por exemplo: pessoa, local, evento, produto e organização.

Opções de desenvolvimento

Para usar o reconhecimento de entidade nomeada, envie texto bruto não estruturado para análise e manipule a saída da API em seu aplicativo. A análise é realizada no estado em que se encontra, sem personalização adicional ao modelo usado em seus dados. Há duas maneiras de usar o reconhecimento de entidade nomeada:

Opção de desenvolvimento Description
Estúdio de linguagem O Language Studio é uma plataforma baseada na Web que permite que você tente vincular entidades com exemplos de texto sem uma conta do Azure e seus próprios dados quando você se inscreve. Para obter mais informações, consulte o site do Language Studio ou o início rápido do language studio.
API REST ou biblioteca de cliente (SDK do Azure) Integre o reconhecimento de entidade nomeada em seus aplicativos usando a API REST ou a biblioteca de cliente disponível em vários idiomas. Para obter mais informações, consulte o guia de início rápido de reconhecimento de entidade nomeada.

Determinar como processar os dados (opcional)

Línguas de entrada

Ao enviar documentos para serem processados, você pode especificar em quais dos idiomas suportados eles estão escritos. se você não especificar um idioma, a extração de frases-chave será padronizada para o inglês. A API pode retornar deslocamentos na resposta para suportar diferentes codificações multilíngues e emojis.

Envio de dados

A análise é realizada aquando da receção do pedido. Usar o recurso NER de forma síncrona é sem monitoração de estado. Nenhum dado é armazenado em sua conta e os resultados são retornados imediatamente na resposta.

Ao usar esse recurso de forma assíncrona, os resultados da API ficam disponíveis por 24 horas a partir do momento em que a solicitação foi ingerida e são indicados na resposta. Após esse período de tempo, os resultados são limpos e não estão mais disponíveis para recuperação.

A API tenta detetar as categorias de entidade definidas para um determinado idioma de documento.

Obter resultados NER

Quando você obtém resultados do NER, você pode transmitir os resultados para um aplicativo ou salvar a saída em um arquivo no sistema local. A resposta da API inclui entidades reconhecidas, incluindo suas categorias e subcategorias, e pontuações de confiança.

Selecionar quais entidades serão retornadas

A API tenta detetar os tipos de entidade definidos e as tags para um determinado idioma de documento. Os tipos de entidade e as tags substituem as categorias e subcategorias que os modelos mais antigos usam para definir entidades para maior flexibilidade. Você também pode especificar quais entidades são detetadas e retornadas, usar o opcional includeList e excludeList os parâmetros com os tipos de entidade apropriados. O exemplo a seguir detetaria apenas Location. Você pode especificar um ou mais tipos de entidade a serem retornados. Dada a hierarquia de tipos e tags introduzida para esta versão, você tem a flexibilidade de filtrar em diferentes níveis de granularidade da seguinte forma:

Entrada:

Nota

Neste exemplo, ele retorna apenas o tipo de entidade "Local".

{
    "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!"
            }
        ]
    }
}

Os exemplos acima retornariam entidades que se enquadram no Location tipo de entidade, como , GPEe Geological entidades marcadas, Structuralconforme descrito por tipos de entidade e tags. Também podemos filtrar ainda mais as entidades retornadas filtrando usando uma das tags de entidade para o Location tipo de entidade, como filtrar sobre GPE tag apenas conforme descrito:


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

Esse método retorna todas as Location entidades que se enquadram apenas na GPE tag e ignora qualquer outra entidade que se enquadre no Location tipo que está marcado com qualquer outra marca de entidade, como Structural ou Geological entidades marcadas Location . Também podemos detalhar ainda mais nossos resultados usando o excludeList parâmetro. GPE As entidades marcadas podem ser marcadas com as seguintes tags: City, State, CountryRegion, Continent. Poderíamos, por exemplo, excluir Continent e CountryRegion marcar o nosso exemplo:


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

Usando esses parâmetros, podemos filtrar com êxito apenas Location os tipos de entidade, uma vez que a includeList GPE tag de entidade incluída no parâmetro se enquadra no Location tipo. Em seguida, filtramos apenas entidades geopolíticas e excluímos quaisquer entidades marcadas com Continent ou CountryRegion tags.

Atributos de saída adicionais

Para fornecer aos usuários mais informações sobre os tipos de uma entidade e fornecer maior usabilidade, o NER suporta estes atributos na saída:

Nome do atributo Tipo Definição
type String O tipo mais específico de entidade detetada.

Por exemplo, "Seattle" é um City, a GPE (Entidade Geopolítica) e um Location. A classificação mais granular para "Seattle" é que é um Cityarquivo . O tipo seria City para o texto "Seattle".
tags Lista (tags) Uma lista de objetos de marca que expressa a afinidade da entidade detetada com uma hierarquia ou qualquer outro agrupamento.

Uma tag contém dois campos:
1. name: Um nome exclusivo para a tag.
2. confidenceScore: A pontuação de confiança associada para uma tag que varia de 0 a 1.

Este tagName exclusivo é usado para filtrar os inclusionList parâmetros e exclusionList .
metadata Object Metadados são um objeto que contém mais dados sobre o tipo de entidade detetado. Muda com base no campo metadataKind.

Saída de exemplo

Esta saída de exemplo inclui um exemplo dos atributos de saída adicionais.

{ 
    "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" 
    } 
} 

Especificar o modelo NER

Por padrão, esse recurso usa o modelo de IA mais recente disponível em seu texto. Você também pode configurar suas solicitações de API para usar uma versão de modelo específica.

Limites de serviço e dados

Para obter informações sobre o tamanho e o número de solicitações que você pode enviar por minuto e segundo, consulte o artigo Limites de serviço.

Próximos passos

Visão geral do Reconhecimento de Entidade Nomeada