Como criar um projeto de NER personalizado

Neste artigo, saiba como configurar os requisitos para iniciar o NER personalizado e criar um projeto.

Pré-requisitos

Antes de começar a usar o NER personalizado, você precisará do seguinte:

Criar um recurso de Linguagem

Antes de começar a usar o NER personalizado, você precisará de um recurso de Linguagem de IA do Azure. É recomendável criar o recurso de Linguagem e conectar uma conta de armazenamento a ele no portal do Azure. A criação de um recurso no portal do Azure permite criar uma conta de armazenamento do Azure ao mesmo tempo, com todas as permissões necessárias pré-configuradas. Também é possível continuar a leitura do artigo para aprender a usar um recurso pré-existente e configurá-lo para trabalhar com o reconhecimento de entidade nomeada personalizada.

Você também precisará de uma conta de armazenamento do Azure para carregar os arquivos .txt, que serão usados no treinamento de um modelo para extrair as entidades.

Observação

  • Você precisa ter uma função de proprietário atribuída no grupo de recursos para criar um recurso de Linguagem.
  • Se você conectar uma conta de armazenamento pré-existente, deverá ter uma função de proprietário atribuída.

Criar recurso de Linguagem e conectar conta de armazenamento

Você pode criar um recurso da seguinte maneira:

  • O Portal do Azure
  • Language Studio
  • PowerShell

Observação

Você não deve mover a conta de armazenamento para um grupo de recursos ou uma assinatura diferente depois que é vinculada ao recurso de Linguagem.

Criar um recurso usando o portal do Azure

  1. Entre no portal do Azure para criar um novo recurso de Linguagem de IA do Azure.

  2. Na janela que aparece, selecione Classificação de textos personalizada e reconhecimento de entidade nomeada personalizada nos recursos personalizados. Selecione Continuar para criar seu recurso na parte inferior da tela.

    Captura de tela mostrando a classificação de textos personalizada e o reconhecimento de entidade nomeada personalizada no portal do Azure.

  3. Crie um recurso de Linguagem com os seguintes detalhes.

    Nome Descrição
    Subscription Sua assinatura do Azure.
    Resource group O grupo de recursos que conterá seu recurso. É possível usar um grupo existente ou criar um do zero.
    Região A região para seu recurso de linguagem. Por exemplo, “Oeste dos EUA 2”.
    Nome Um nome para seu recurso.
    Tipo de preço O tipo de preço do recurso de Linguagem. Use a camada Gratuita (F0) para experimentar o serviço.

    Observação

    Se você receber uma mensagem dizendo que "sua conta de logon não é uma proprietária do grupo de recursos da conta de armazenamento selecionada", sua conta precisará ter uma função de proprietário atribuída no grupo de recursos antes de criar um recurso de linguagem. Entre em contato com o proprietário da assinatura do Azure para obter ajuda.

  4. Na seção Classificação de textos personalizada e reconhecimento de entidade nomeada personalizada, selecione uma conta de armazenamento existente ou Nova conta de armazenamento. Esses valores são para ajudar você a começar a usar o recurso, e não são necessariamente os valores de conta de armazenamento que você usará nos ambientes de produção. Para evitar latência durante a criação do projeto, conecte-se às contas de armazenamento na mesma região que o recurso de Linguagem.

    Valor de conta de armazenamento Valor recomendado
    Nome da conta de armazenamento Qualquer nome
    Tipo de conta de armazenamento LRS Padrão
  5. Verifique se a opção Aviso de IA Responsável está marcada. Selecione Examinar + criar na parte inferior da página e depois Criar.

Criar um novo recurso de Linguagem no Language Studio

Se for seu primeiro login, você verá uma janela no Language Studio para escolher um recurso de Linguagem existente ou criar um novo. Também é possível criar um recurso clicando no ícone de configurações no canto superior direito, selecionando Recursos e, em seguida, Criar um novo recurso.

Crie um recurso de Linguagem com os seguintes detalhes.

Detalhes da instância Valor obrigatório
Assinatura do Azure sua assinatura do Azure
Grupo de recursos do Azure O grupo de recursos do Azure
Nome do recurso do Azure O nome do recurso do Azure
Location A região do recurso de Linguagem.
Tipo de preço O tipo de preço do recurso de Linguagem.

Importante

  • Verifique se você habilitou a Identidade Gerenciada ao criar um recurso de idioma.
  • Ler e confirmar aviso de IA Responsável

Para usar o reconhecimento de entidade nomeada personalizada, é necessário criar uma conta de armazenamento do Azure, se você ainda não tiver uma.

Criar um novo recurso de Linguagem usando o PowerShell

É possível criar um novo recurso e uma conta de armazenamento usando o modelo de CLI e os arquivos de parâmetros a seguir, que estão hospedados no GitHub.

Edite os seguintes valores no arquivo de parâmetros:

Nome do parâmetro Descrição do valor
name Nome do recurso do Language
location Região que hospeda o recurso. Para saber mais, confira Limites de serviço.
sku Tipo de preço do recurso.
storageResourceName O nome da conta de armazenamento
storageLocation Região na qual sua conta de armazenamento está hospedada.
storageSkuType SKU da conta de armazenamento.
storageResourceGroupName Grupo de recursos da conta de armazenamento

Use o comando do PowerShell a seguir para implantar o modelo do ARM (Azure Resource Manager) com os arquivos que você editou.

New-AzResourceGroupDeployment -Name ExampleDeployment -ResourceGroupName ExampleResourceGroup `
  -TemplateFile <path-to-arm-template> `
  -TemplateParameterFile <path-to-parameters-file>

Consulte a documentação do modelo do ARM para saber como implantar modelos e arquivos de parâmetro.

Observação

  • O processo de conexão de uma conta de armazenamento ao recurso de Linguagem é irreversível, não pode ser desconectado posteriormente.
  • É possível conectar o recurso de linguagem a apenas uma conta de armazenamento.

Usando um recurso de Linguagem pré-existente

É possível usar um recurso de Linguagem existente para começar a usar o NER personalizado, desde que ele atenda aos requisitos abaixo:

Requisito Descrição
Regiões Verifique se o recurso existente está provisionado em uma das regiões com suporte. Caso contrário, será necessário criar um novo recurso em uma dessas regiões.
Tipo de preço Saiba mais sobre os tipos de preço com suporte.
Identidade gerenciada Habilite a configuração da identidade gerenciada do recurso. Se ela não estiver habilitada, veja a próxima seção.

Para usar o reconhecimento de entidade nomeada personalizada, é necessário criar uma conta de armazenamento do Azure, se você ainda não tiver uma.

Habilitar o gerenciamento de identidade para o recurso

O recurso de Linguagem deve ter gerenciamento de identidade, para habilitá-lo usando o portal do Azure:

  1. Acesse o recurso de Linguagem
  2. No menu à esquerda, na seção Gerenciamento de Recursos, selecione Identidade
  3. Na guia Atribuído pelo sistema, defina o Status como Ativado

Habilite o recurso de reconhecimento de entidade nomeada personalizada

Habilite o recurso Classificação de textos personalizada/Reconhecimento de entidade nomeada personalizada no portal do Azure.

  1. Acesse o recurso de linguagem no portal do Azure.
  2. No menu do lado esquerdo, na seção Gerenciamento de Recursos, selecione Recursos.
  3. Habilite o recurso Classificação de textos personalizada / Reconhecimento de entidade nomeada personalizada.
  4. Conecte-se à conta de armazenamento.
  5. Escolha Aplicar.

Importante

  • Verifique se o recurso de Linguagem tem a função de colaborador de dados do blob de armazenamento atribuída na conta de armazenamento que você está conectando.

Adicionar funções necessárias

Use as etapas a seguir para definir as funções necessárias do recurso de Linguagem e a conta de armazenamento.

Uma imagem animada mostrando como definir funções no portal do Azure.

Funções para o recurso de Linguagem de IA do Azure

  1. Acesse a conta de armazenamento e o recurso de Linguagem no portal do Azure.

  2. Selecione Controle de acesso (IAM) no menu de navegação à esquerda.

  3. Selecione Adicionar para Adicionar Atribuições de Função e escolha a função apropriada para a conta.

    Você precisa ter a função de proprietário ou colaborador atribuída no recurso de Linguagem.

  4. Em Atribuir acesso a, selecione Usuário, grupo ou entidade de serviço

  5. Selecione Selecionar membros

  6. Selecione o nome de usuário. É possível pesquisar nomes de usuário no campo Selecionar. Repita isso para todas as funções.

  7. Repita essas etapas para todas as contas de usuário que precisam de acesso a esse recurso.

Funções para sua conta de armazenamento

  1. Acesse a página da conta de armazenamento no portal do Azure.
  2. Selecione Controle de acesso (IAM) no menu de navegação à esquerda.
  3. Selecione Adicionar para Adicionar Atribuições de Função e escolha a função de Colaborador de dados do blob Armazenamento na conta de armazenamento.
  4. Em Atribuir acesso a, selecione Identidade Gerenciada.
  5. Selecione Selecionar membros
  6. Selecione a assinatura e Linguagem como a identidade gerenciada. É possível pesquisar nomes de usuário no campo Selecionar.

Funções para seu usuário

Importante

Se você ignorar esta etapa, receberá um erro 403 ao tentar se conectar ao seu projeto personalizado. É importante que o usuário atual tenha essa função para acessar dados de blob da conta de armazenamento, mesmo que você seja o proprietário da conta de armazenamento.

  1. Acesse a página da conta de armazenamento no portal do Azure.
  2. Selecione Controle de acesso (IAM) no menu de navegação à esquerda.
  3. Selecione Adicionar para Adicionar Atribuições de Função e escolha a função de Colaborador de dados do blob Armazenamento na conta de armazenamento.
  4. Em Atribuir acesso a, selecione Usuário, grupo ou entidade de serviço.
  5. Selecione Selecionar membros
  6. Selecione seu Usuário. É possível pesquisar nomes de usuário no campo Selecionar.

Importante

Se você tiver uma rede virtual ou um ponto de extremidade privado, selecione Permitir que os serviços do Azure na lista de serviços confiáveis acessem essa conta de armazenamento no portal do Azure.

Habilite o CORS para sua conta de armazenamento

Permita os métodos (GET, PUT, DELETE) ao habilitar o CORS (compartilhamento de recursos entre origens). Defina o campo de origens permitido como https://language.cognitive.azure.com. Permita todo o cabeçalho adicionando * aos valores de cabeçalho permitidos e defina a idade máxima como 500.

Uma captura de tela mostrando como usar o CORS para contas de armazenamento.

Crie um projeto de reconhecimento de entidade nomeada personalizado

Depois de configurar o recurso e o contêiner de armazenamento, crie um novo projeto NER personalizado. Um projeto é uma área de trabalho para a criação de modelos de IA personalizados com base em seus dados. Seu projeto só pode ser acessado por você e por outras pessoas que têm acesso ao recurso do Azure que está sendo usado. Se você rotulou os dados, pode usá-los para começar a usar o recurso ao importar um projeto.

  1. Entre no Language Studio. Uma janela será exibida para permitir que você selecione sua assinatura e o recurso idioma. Selecione o recurso de idioma que você criou na etapa acima.

  2. Na seção Extrair informações do Language Studio, selecione Reconhecimento de entidade nomeada personalizada.

    Uma captura de tela mostrando o local do NER personalizado na página de aterrissagem do Language Studio.

  3. Selecione Criar projeto no menu superior na página de projetos. A criação de um projeto permitirá que você marque dados, treine, avalie, melhore e implante seus modelos.

    Uma captura de tela da página de criação do projeto.

  4. Depois de clicar em Criar projeto, uma janela será exibida para permitir que você conecte sua conta de armazenamento. Se você já tiver conectado uma conta de armazenamento, verá o armazenamento conectado. Caso contrário, escolha a conta de armazenamento na lista suspensa que aparece e selecione Conectar conta de armazenamento. Isso definirá as funções necessárias para a sua conta de armazenamento. É possível que essa etapa retorne um erro se você não for atribuído como proprietário na conta de armazenamento.

    Observação

    • Para começar logo, é recomendável criar um novo recurso de Linguagem do Azure por meio das etapas fornecidas abaixo, o que permitirá que você crie o recurso e configure uma conta de armazenamento ao mesmo tempo, o que é mais fácil do que fazê-lo mais tarde.
    • Esse processo é irreversível, se você conectar uma conta de armazenamento ao recurso de idioma, não poderá desconectá-la posteriormente.
    • É possível conectar o recurso de idioma a apenas uma conta de armazenamento.

    Uma captura de tela mostrando a tela de conexão de armazenamento.

  5. Insira as informações do projeto, incluindo um nome, uma descrição e o idioma dos arquivos em seu projeto. Se você estiver usando o conjunto de dados de exemplo, selecione Inglês. Você não poderá alterar o nome do projeto mais tarde. Selecione Avançar

    Dica

    Seu conjunto de dados não precisa estar totalmente no mesmo idioma. Você pode ter vários documentos, cada um com diferentes idiomas compatíveis. Se o conjunto de dados contiver documentos de idiomas diferentes ou se você esperar um texto de diferentes idiomas durante o runtime, selecione Habilitar conjunto de dados multilíngue ao inserir as informações básicas no projeto. Essa opção pode ser habilitada posteriormente na página Configurações do projeto.

  6. Selecione o contêiner em que você carregou o conjunto de dados. Se você já rotulou os dados, certifique-se de que seguem o formato com suporte e selecione Sim, meus arquivos já estão rotulados e formatei o arquivo de rótulos JSON e selecione o arquivo de rótulos no menu suspenso. Selecione Avançar.

  7. Revise os dados inseridos e selecione Criar Projeto.

Projeto de importação

Se você já rotulou os dados, pode usá-los para começar a usar o serviço. Verifique se os dados rotulados seguem os formatos de dados aceitos.

  1. Entre no Language Studio. Uma janela será exibida para permitir que você selecione sua assinatura e o recurso idioma. Selecione o recurso de idioma.

  2. Na seção Extrair informações do Language Studio, selecione Reconhecimento de entidade nomeada personalizada.

    Uma captura de tela mostrando o local do recurso NER personalizado na página de aterrissagem do Language Studio.

  3. Selecione Criar projeto no menu superior na página de projetos. A criação de um projeto permitirá que você marque dados, treine, avalie, melhore e implante seus modelos.

    Uma captura de tela da página de criação do projeto.

  4. Depois de selecionar Criar projeto, uma tela será exibida para permitir que você conecte sua conta de armazenamento. Se você não conseguir encontrar a sua conta de armazenamento, verifique se você criou um recurso seguindo as etapas recomendadas. Se você já tiver conectado uma conta de armazenamento ao recurso de Linguagem, verá a conta de armazenamento conectada.

    Observação

    • Você só precisa fazer essa etapa uma vez para cada novo recurso de linguagem usado.
    • Esse processo é irreversível, se você conectar uma conta de armazenamento ao recurso de idioma, não poderá desconectá-la posteriormente.
    • É possível conectar o recurso de idioma a apenas uma conta de armazenamento.

    Uma captura de tela da tela de conexão de armazenamento para novos projetos.

  5. Insira as informações do projeto, incluindo um nome, uma descrição e o idioma dos arquivos em seu projeto. Você não poderá alterar o nome do projeto mais tarde. Selecione Avançar.

    Dica

    Seu conjunto de dados não precisa estar totalmente no mesmo idioma. Você pode ter vários documentos, cada um com diferentes idiomas compatíveis. Se o conjunto de dados contiver documentos de idiomas diferentes ou se você esperar um texto de diferentes idiomas durante o runtime, selecione Habilitar conjunto de dados multilíngue ao inserir as informações básicas no projeto. Essa opção pode ser habilitada posteriormente na página Configurações do projeto.

  6. Selecione o contêiner em que você carregou o conjunto de dados.

  7. Clique em Sim, meus arquivos já estão rotulados e formatei o arquivo de rótulos JSON e selecione o arquivo de rótulos no menu suspenso abaixo para importar o arquivo de rótulos JSON. Verifique se ele segue o formato com suporte.

  8. Selecione Avançar.

  9. Revise os dados inseridos e selecione Criar Projeto.

Obter os detalhes do projeto

  1. Acesse a página de configurações do projeto no Language Studio.

  2. Você pode ver os detalhes do projeto.

  3. Nesta página, você pode atualizar a descrição do projeto e habilitar/desabilitar o conjunto de dados multilíngue nas configurações do projeto.

  4. Você também pode exibir a conta de armazenamento conectada e o contêiner para o recurso de Linguagem.

  5. Você também pode recuperar a chave de recurso primária nesta página.

    Captura de tela da página de configurações do projeto no Language Studio.

Excluir projeto

Quando não precisar mais do seu projeto, poderá excluí-lo do projeto usando o Language Studio. Selecione NER (reconhecimento de entidade nomeada personalizada) na parte superior, selecione o projeto que deseja excluir e selecione Excluir no menu superior.

Próximas etapas

  • É necessário ter uma noção do esquema de projeto que será usado para rotular os dados.

  • Depois que o projeto for criado, você poderá começar a rotular seus dados, o que informará ao modelo de extração de entidade como interpretar o texto, além de servir para treinamento e avaliação.