Quickstart: Classificação de texto personalizado

Use este artigo para começar com a criação de um projeto de classificação de texto personalizado onde você pode treinar modelos personalizados para classificação de texto. Um modelo é um objeto treinado para fazer uma certa tarefa. Para este sistema, os modelos classificam o texto. Os modelos são treinados pela aprendizagem a partir de dados marcados.

A classificação de texto personalizado suporta dois tipos de projetos:

  • Classificação de rótulo único - pode atribuir uma única classe para cada documento no seu conjunto de dados. Por exemplo, um guião de filme só podia ser classificado como "Romance" ou "Comédia".
  • Classificação multi-etiqueta - pode atribuir várias classes para cada documento no seu conjunto de dados. Por exemplo, um roteiro de filme pode ser classificado como "Comédia" ou "Romance" e "Comédia".

Neste arranque rápido, pode utilizar os conjuntos de dados da amostra fornecidos para construir uma classificação multi-etiquetas onde pode classificar scripts de filmes em uma ou mais categorias ou pode utilizar um conjunto de dados de classificação de rótulo único onde pode classificar resumos de artigos científicos num dos domínios definidos.

Pré-requisitos

Criar um novo recurso Azure Language e conta de armazenamento Azure

Antes de poder utilizar a classificação de texto personalizado, terá de criar um recurso Azure Language, que lhe dará as credenciais de que precisa para criar um projeto e começar a treinar um modelo. Também vai precisar de uma conta de armazenamento Azure, onde poderá fazer o upload do seu conjunto de dados que será utilizado na construção do seu modelo.

Importante

Para começar rapidamente, recomendamos a criação de um novo recurso Azure Language utilizando os passos fornecidos neste artigo, que lhe permitirão criar o recurso Language, e criar e/ou ligar uma conta de armazenamento ao mesmo tempo, o que é mais fácil do que fazê-lo mais tarde.

Se tiver um recurso pré-existente que gostaria de utilizar, terá de conectá-lo à conta de armazenamento.

Criar um novo recurso a partir do portal do Azure

  1. Vá ao portal do Azure para criar um novo recurso Azure Language.

  2. Na janela que aparece, selecione o reconhecimento personalizado de classificação & de texto personalizado denominado entidade a partir das funcionalidades personalizadas. Clique Em Continuar a criar o seu recurso na parte inferior do ecrã.

    A screenshot showing the selection option for custom text classification and custom named entity recognition in Azure portal.

  3. Crie um recurso idioma com os seguintes detalhes.

    Detalhe de instância Valor obrigatório
    Region Uma das regiões apoiadas. Pode usar "West US 2" para este arranque rápido.
    Escalão de preço Um dos níveis de preços suportados. Pode utilizar o nível Free (F0) para este arranque rápido.
  4. Na secção de reconhecimento de entidade personalizada de classificação & de texto personalizado , selecione uma conta de armazenamento existente ou selecione Nova conta de armazenamento. Note que estes valores são para ajudá-lo a começar, e não necessariamente os valores da conta de armazenamento que você vai querer usar em ambientes de produção. Para evitar a latência durante a construção do seu projeto, ligue-se a contas de armazenamento na mesma região que o seu recurso Language.

    valor da conta Armazenamento Valor recomendado
    Name Qualquer nome
    Tipo de conta Armazenamento (finalidade geral v1)
    Desempenho Standard
    Replicação Armazenamento localmente redundante (LRS)
  5. Certifique-se de que o Aviso de IA Responsável é verificado. Selecione 'Rever + criar na parte inferior da página' e, em seguida, selecione.

Faça o upload dos dados da amostra para o recipiente blob

Depois de ter criado uma conta de armazenamento Azure e a ter ligado ao seu recurso Language, terá de enviar os documentos do conjunto de dados da amostra para o diretório de raiz do seu recipiente. Estes documentos serão posteriormente utilizados para treinar o seu modelo.

  1. Descarregue o conjunto de dados da amostra para projetos de classificação de vários rótulos.

  2. Abra o ficheiro .zip e extrate a pasta que contém os documentos.

O conjunto de dados da amostra fornecido contém cerca de 200 documentos, cada um dos quais é um resumo para um filme. Cada documento pertence a uma ou mais das seguintes classes:

  • "Mistério"
  • "Drama"
  • "Thriller"
  • "Comédia"
  • "Ação"
  1. Na portal do Azure, navegue para a conta de armazenamento que criou e selecione-a.

  2. Na sua conta de armazenamento, selecione Recipientes do menu esquerdo, localizado abaixo do armazenamento de Dados. No ecrã que aparece, selecione + Recipiente. Dê ao recipiente o nome de exemplo-dados e deixe o nível de acesso público predefinido.

    A screenshot showing the main page for a storage account.

  3. Depois de o seu recipiente ter sido criado, selecione-o. Em seguida, clique no botão Upload para selecionar os .txt ficheiros que .json descarregou anteriormente.

    A screenshot showing the button for uploading files to the storage account.

Criar um projeto de classificação de texto personalizado

Uma vez configurado o seu recipiente de recursos e armazenamento, crie um novo projeto de classificação de texto personalizado. Um projeto é uma área de trabalho para construir os seus modelos de ML personalizados com base nos seus dados. O seu projeto só pode ser acedido por si e por outros que tenham acesso ao recurso idioma que está a ser utilizado.

  1. Inscreva-se no Estúdio de Línguas. Uma janela parece permitir-lhe selecionar a sua subscrição e recurso de idioma. Selecione o seu recurso Language.

  2. Na secção de texto classifique o Language Studio, selecione classificação de texto personalizado.

    A screenshot showing the location of custom text classification in the Language Studio landing page.

  3. Selecione Criar novo projeto a partir do menu superior na página dos seus projetos. A criação de um projeto permitirá rotular dados, treinar, avaliar, melhorar e implementar os seus modelos.

    A screenshot of the project creation page.

  4. Depois de clicar, Criar um novo projeto, um ecrã parece permitir-lhe ligar a sua conta de armazenamento. Se já ligou uma conta de armazenamento, verá o armazenamento contado ligado. Caso contrário, escolha a sua conta de armazenamento a partir do dropdown que aparece e clique na conta de armazenamento Ligação; isto definirá as funções necessárias para a sua conta de armazenamento. Este passo possivelmente devolverá um erro se não for designado como proprietário na conta de armazenamento.

    Nota

    • Só precisa de fazer este passo uma vez para cada novo recurso linguístico que utiliza.
    • Este processo é irreversível, se ligar uma conta de armazenamento ao seu recurso idioma não poderá desligá-la mais tarde.
    • Só pode ligar o seu recurso Language a uma conta de armazenamento.

    A screenshot of the storage connection screen for custom classification projects.

  5. Selecione o tipo de projeto. Pode criar um projeto de classificação multi-etiqueta onde cada documento pode pertencer a uma ou mais classes ou a um projeto de classificação de rótulo único , onde cada documento pode pertencer apenas a uma classe. O tipo selecionado não pode ser alterado mais tarde. Saiba mais sobre os tipos de projetos

    A screenshot of the available custom classification project types.

  6. Insira as informações do projeto, incluindo um nome, descrição e a linguagem dos documentos no seu projeto. Não poderá mudar o nome do seu projeto mais tarde. Clique em Seguinte.

    Dica

    O seu conjunto de dados não tem de estar inteiramente na mesma língua. Pode ter vários documentos, cada um com diferentes línguas apoiadas. Se o seu conjunto de dados contiver documentos de diferentes idiomas ou se espera texto de diferentes idiomas durante o tempo de funcionamento, selecione ative a opção de conjunto de dados multilingue quando introduzir as informações básicas para o seu projeto. Esta opção pode ser ativada mais tarde a partir da página de definições Project.

  7. Selecione o recipiente onde fez o upload do conjunto de dados.

    Nota

    Se já rotulou os seus dados, certifique-se de que segue o formato suportado e clique em Sim, os meus documentos já estão rotulados e eu formatei ficheiro de etiquetas JSON e seleciono o ficheiro de etiquetas do menu suspenso abaixo. Clique em Seguinte.

  8. Reveja os dados introduzidos e selecione Criar Project.

Preparar o seu modelo

Normalmente, depois de criar um projeto, vá em frente e comece a rotular os documentos que tem no recipiente ligado ao seu projeto. Para este arranque rápido, importou um conjunto de dados com rótulo de amostra e iniciou o seu projeto com o ficheiro de etiquetas JSON da amostra.

Para começar a treinar o seu modelo dentro do Estúdio de Línguas:

  1. Selecione trabalhos de formação do menu do lado esquerdo.

  2. Selecione Iniciar um trabalho de formação a partir do menu superior.

  3. Selecione Train um novo modelo e escreva o nome modelo na caixa de texto. Também pode substituir um modelo existente selecionando esta opção e escolhendo o modelo deseja substituir do menu suspenso. A sobreposição de um modelo treinado é irreversível, mas não afetará os seus modelos implantados até que implemente o novo modelo.

    Create a new training job

  4. Selecione método de divisão de dados. Pode escolher dividir automaticamente o conjunto de testes a partir de dados de treino onde o sistema irá dividir os seus dados rotulados entre os conjuntos de treino e teste, de acordo com as percentagens especificadas. Ou pode utilizar uma divisão manual de dados de treino e teste, esta opção só está ativada se tiver adicionado documentos ao seu conjunto de testes durante a rotulagem dos dados. Veja como treinar um modelo para obter mais informações sobre a divisão de dados.

  5. Clique no botão Comboio .

  6. Se clicar no ID do trabalho de formação da lista, aparecerá um painel lateral onde poderá verificar o progresso do Treino, o estado do Trabalho e outros detalhes para este trabalho.

    Nota

    • Só trabalhos de formação concluídos com sucesso gerarão modelos.
    • O treino pode demorar algum tempo entre alguns minutos e várias horas com base no tamanho dos seus dados rotulados.
    • Só pode ter um trabalho de preparação em execução de cada vez. Não pode iniciar outro trabalho de preparação no mesmo projeto sem que o trabalho em execução esteja concluído.

Desdobre o seu modelo

Geralmente, depois de treinar um modelo, você iria rever os seus detalhes de avaliação e fazer melhorias se necessário. Neste arranque rápido, basta implementar o seu modelo e disponibilizá-lo para que experimente em Language Studio, ou pode chamar a API de previsão.

Para implementar o seu modelo a partir do Estúdio de Línguas:

  1. Selecione Implementar uma modelo do menu do lado esquerdo.

  2. Clique em Adicionar implementação para iniciar um novo trabalho de implantação.

    A screenshot showing the deployment button

  3. Selecione Criar uma nova implementação para criar uma nova implementação e atribuir uma modelo treinada a partir do dropdown abaixo. Também pode substituir uma implementação existente selecionando esta opção e selecionar o modelo treinado que pretende atribuir a ela a partir do dropdown abaixo.

    Nota

    A sobreescrita de uma implementação existente não requer alterações na sua chamada de API de previsão, mas os resultados que obtém serão baseados na modelo recentemente atribuída.

    A screenshot showing the deployment screen

  4. clique em Enviar para iniciar o trabalho de implementação.

  5. Após o sucesso da implementação, aparecerá uma data de validade ao lado. A expiração da implementação é quando o seu modelo implantado não estará disponível para ser usado para previsão, o que normalmente acontece doze meses após o termo de uma configuração de treino.

Testar o seu modelo

Depois de o seu modelo ser implementado, pode começar a usá-lo para classificar o seu texto através da API de Previsão. Para este arranque rápido, utilizará o Language Studio para submeter a tarefa de classificação de texto personalizada e visualizar os resultados. No conjunto de dados da amostra que descarregou anteriormente, pode encontrar alguns documentos de teste que pode utilizar neste passo.

Para testar os seus modelos implantados dentro do Language Studio:

  1. Selecione as implementações de teste a partir do menu no lado esquerdo do ecrã.

  2. Selecione a modelo deseja testar. Só é possível testar modelos que sejam atribuídos a implementações.

  3. Para projetos multilingues, selecione o idioma do texto que está a testar usando o dropdown linguístico.

  4. Selecione a implementação desejada para consultar/testar a partir do dropdown.

  5. Introduza o texto que pretende submeter no pedido, ou faça o upload de um .txt documento para utilizar.

  6. Clique em Executar o teste a partir do menu superior.

  7. No separador Resultados , pode ver as classes previstas para o seu texto. Também pode ver a resposta JSON no separador JSON . Segue-se um exemplo para um projeto de classificação de vários rótulos. Um projeto de classificação de rótulo único só devolverá uma classe no resultado.

    A screenshot showing model test results for a multi label classification project. The example is from CMU Movie Summary, CC BY-SA 3.0, modified by Microsoft

Limpar projetos

Quando já não precisa do seu projeto, pode eliminar o seu projeto usando o Language Studio. Selecione a classificação de texto personalizada no topo e, em seguida, selecione o projeto que pretende eliminar. Clique em Apagar a partir do menu superior para eliminar o projeto.

Pré-requisitos

Criar um novo recurso Azure Language e conta de armazenamento Azure

Antes de poder utilizar a classificação de texto personalizado, terá de criar um recurso Azure Language, que lhe dará as credenciais de que precisa para criar um projeto e começar a treinar um modelo. Também vai precisar de uma conta de armazenamento Azure, onde poderá fazer o upload do seu conjunto de dados que será utilizado na construção do seu modelo.

Importante

Para começar rapidamente, recomendamos a criação de um novo recurso Azure Language utilizando os passos fornecidos neste artigo, que lhe permitirão criar o recurso Language, e criar e/ou ligar uma conta de armazenamento ao mesmo tempo, o que é mais fácil do que fazê-lo mais tarde.

Se tiver um recurso pré-existente que gostaria de utilizar, terá de conectá-lo à conta de armazenamento.

Criar um novo recurso a partir do portal do Azure

  1. Vá ao portal do Azure para criar um novo recurso Azure Language.

  2. Na janela que aparece, selecione o reconhecimento personalizado de classificação & de texto personalizado denominado entidade a partir das funcionalidades personalizadas. Clique Em Continuar a criar o seu recurso na parte inferior do ecrã.

    A screenshot showing the selection option for custom text classification and custom named entity recognition in Azure portal.

  3. Crie um recurso idioma com os seguintes detalhes.

    Detalhe de instância Valor obrigatório
    Region Uma das regiões apoiadas. Pode usar "West US 2" para este arranque rápido.
    Escalão de preço Um dos níveis de preços suportados. Pode utilizar o nível Free (F0) para este arranque rápido.
  4. Na secção de reconhecimento de entidade personalizada de classificação & de texto personalizado , selecione uma conta de armazenamento existente ou selecione Nova conta de armazenamento. Note que estes valores são para ajudá-lo a começar, e não necessariamente os valores da conta de armazenamento que você vai querer usar em ambientes de produção. Para evitar a latência durante a construção do seu projeto, ligue-se a contas de armazenamento na mesma região que o seu recurso Language.

    valor da conta Armazenamento Valor recomendado
    Name Qualquer nome
    Tipo de conta Armazenamento (finalidade geral v1)
    Desempenho Standard
    Replicação Armazenamento localmente redundante (LRS)
  5. Certifique-se de que o Aviso de IA Responsável é verificado. Selecione 'Rever + criar na parte inferior da página' e, em seguida, selecione.

Faça o upload dos dados da amostra para o recipiente blob

Depois de ter criado uma conta de armazenamento Azure e a ter ligado ao seu recurso Language, terá de enviar os documentos do conjunto de dados da amostra para o diretório de raiz do seu recipiente. Estes documentos serão posteriormente utilizados para treinar o seu modelo.

  1. Descarregue o conjunto de dados da amostra para projetos de classificação de vários rótulos.

  2. Abra o ficheiro .zip e extrate a pasta que contém os documentos.

O conjunto de dados da amostra fornecido contém cerca de 200 documentos, cada um dos quais é um resumo para um filme. Cada documento pertence a uma ou mais das seguintes classes:

  • "Mistério"
  • "Drama"
  • "Thriller"
  • "Comédia"
  • "Ação"
  1. Na portal do Azure, navegue para a conta de armazenamento que criou e selecione-a.

  2. Na sua conta de armazenamento, selecione Recipientes do menu esquerdo, localizado abaixo do armazenamento de Dados. No ecrã que aparece, selecione + Recipiente. Dê ao recipiente o nome de exemplo-dados e deixe o nível de acesso público predefinido.

    A screenshot showing the main page for a storage account.

  3. Depois de o seu recipiente ter sido criado, selecione-o. Em seguida, clique no botão Upload para selecionar os .txt ficheiros que .json descarregou anteriormente.

    A screenshot showing the button for uploading files to the storage account.

Obtenha as suas chaves de recursos e ponto final

  • Vá à página geral do seu recurso na portal do Azure

  • A partir do menu do lado esquerdo, selecione Keys e Endpoint. Você usará o ponto final e a chave para os pedidos da API

A screenshot showing the key and endpoint page in the Azure portal.

Criar um projeto de classificação de texto personalizado

Uma vez configurado o seu recipiente de recursos e armazenamento, crie um novo projeto de classificação de texto personalizado. Um projeto é uma área de trabalho para construir os seus modelos de ML personalizados com base nos seus dados. O seu projeto só pode ser acedido por si e por outros que tenham acesso ao recurso idioma que está a ser utilizado.

Desencadear trabalho de projeto de importação

Envie um pedido DE POST utilizando o seguinte URL, cabeçalhos e corpo JSON para importar o seu ficheiro de etiquetas. Certifique-se de que o ficheiro das suas etiquetas segue o formato aceite.

Se já existe um projeto com o mesmo nome, os dados desse projeto são substituídos.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}/:import?api-version={API-VERSION}
Marcador de posição Valor Exemplo
{ENDPOINT} O ponto final para autenticar o seu pedido de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} O nome para o seu projeto. Este valor é sensível a casos. myProject
{API-VERSION} A versão da API que está a ligar. O valor aqui referenciado é para a versão mais recente lançada. Saiba mais sobre outras versões API disponíveis 2022-05-01

Cabeçalhos

Utilize o seguinte cabeçalho para autenticar o seu pedido.

Chave Valor
Ocp-Apim-Subscription-Key A chave do seu recurso. Utilizado para autenticar os seus pedidos de API.

Corpo

Utilize o seguinte JSON no seu pedido. Substitua os valores de espaço reservado abaixo pelos seus próprios valores.

{
  "projectFileVersion": "{API-VERSION}",
  "stringIndexType": "Utf16CodeUnit",
  "metadata": {
    "projectName": "{PROJECT-NAME}",
    "storageInputContainerName": "{CONTAINER-NAME}",
    "projectKind": "customMultiLabelClassification",
    "description": "Trying out custom multi label text classification",
    "language": "{LANGUAGE-CODE}",
    "multilingual": true,
    "settings": {}
  },
  "assets": {
    "projectKind": "customMultiLabelClassification",
    "classes": [
      {
        "category": "Class1"
      },
      {
        "category": "Class2"
      }
    ],
    "documents": [
      {
        "location": "{DOCUMENT-NAME}",
        "language": "{LANGUAGE-CODE}",
        "dataset": "{DATASET}",
        "classes": [
          {
            "category": "Class1"
          },
          {
            "category": "Class2"
          }
        ]
      },
      {
        "location": "{DOCUMENT-NAME}",
        "language": "{LANGUAGE-CODE}",
        "dataset": "{DATASET}",
        "classes": [
          {
            "category": "Class2"
          }
        ]
      }
    ]
  }
}

Chave Marcador de posição Valor Exemplo
api-version {API-VERSION} A versão da API que está a ligar. A versão aqui utilizada deve ser a mesma versão API no URL. Saiba mais sobre outras versões API disponíveis 2022-05-01
projectName {PROJECT-NAME} O nome do seu projeto. Este valor é sensível a casos. myProject
projetoAeo customMultiLabelClassification O seu tipo de projeto. customMultiLabelClassification
language {LANGUAGE-CODE} Uma cadeia especificando o código de linguagem para os documentos utilizados no seu projeto. Se o seu projeto for um projeto multilíngue, escolha o código linguístico da maioria dos documentos. Consulte o suporte linguístico para saber mais sobre o suporte multilingues. en-us
multilingues true Um valor booleano que lhe permite ter documentos em vários idiomas no seu conjunto de dados e quando o seu modelo é implementado pode consultar o modelo em qualquer idioma suportado (não necessariamente incluído nos seus documentos de formação. Consulte o suporte linguístico para saber mais sobre o suporte multilingues. true
storageInputContainerName {CONTAINER-NAME} O nome do seu recipiente de armazenamento Azure onde carregou os seus documentos. myContainer
classes [] Array contendo todas as aulas que tem no projeto. Estas são as aulas em que quer classificar os seus documentos. []
Documentos [] Matriz que contém todos os documentos do seu projeto e quais as aulas rotuladas para este documento. []
localização {DOCUMENT-NAME} A localização dos documentos no contentor de armazenamento. Uma vez que todos os documentos estão na raiz do recipiente, este deve ser o nome do documento. doc1.txt
conjunto de dados {DATASET} O conjunto de testes a que este documento irá quando se separar antes do treino. Veja como treinar um modelo para obter mais informações sobre a divisão de dados. Os valores possíveis para este campo são Train e Test. Train

Assim que enviar o seu pedido de API, receberá uma 202 resposta indicando que o trabalho foi submetido corretamente. Nos cabeçalhos de resposta, extraia o operation-location valor. Será formatado assim:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} é usado para identificar o seu pedido, uma vez que esta operação é assíncronea. Você vai usar este URL para obter o estatuto de trabalho importado.

Possíveis cenários de erro para este pedido:

  • O recurso selecionado não tem permissões adequadas para a conta de armazenamento.
  • O storageInputContainerName especificado não existe.
  • O código idioma inválido é usado, ou se o código de idioma não é string.
  • multilingual valor é uma corda e não um boolean.

Obter estatuto de trabalho de importação

Utilize o seguinte pedido GET para obter o estado da sua importação do seu projeto. Substitua os valores de espaço reservado abaixo pelos seus próprios valores.

URL do Pedido

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}
Marcador de posição Valor Exemplo
{ENDPOINT} O ponto final para autenticar o seu pedido de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} O nome do seu projeto. Este valor é sensível a casos. myProject
{JOB-ID} A identificação para localizar o estado de treino do seu modelo. Este valor está no valor do location cabeçalho que recebeu no passo anterior. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} A versão da API que está a ligar. O valor aqui referenciado é para a versão mais recente lançada. Saiba mais sobre outras versões API disponíveis 2022-05-01

Cabeçalhos

Utilize o seguinte cabeçalho para autenticar o seu pedido.

Chave Valor
Ocp-Apim-Subscription-Key A chave do seu recurso. Utilizado para autenticar os seus pedidos de API.

Preparar o seu modelo

Normalmente, depois de criar um projeto, vá em frente e comece a marcar os documentos que tem no recipiente ligado ao seu projeto. Para este arranque rápido, importou um conjunto de dados marcado por amostras e iniciou o seu projeto com o ficheiro de etiquetas JSON da amostra.

Comece a treinar o seu modelo

Depois de o seu projeto ter sido importado, pode começar a treinar o seu modelo.

Submeta um pedido de CORREIO utilizando o seguinte URL, cabeçalhos e corpo JSON para submeter um trabalho de formação. Substitua os valores de espaço reservado abaixo pelos seus próprios valores.

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/:train?api-version={API-VERSION}
Marcador de posição Valor Exemplo
{ENDPOINT} O ponto final para autenticar o seu pedido de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} O nome do seu projeto. Este valor é sensível a casos. myProject
{API-VERSION} A versão da API que está a ligar. O valor aqui referenciado é para a versão mais recente lançada. Saiba mais sobre outras versões API disponíveis 2022-05-01

Cabeçalhos

Utilize o seguinte cabeçalho para autenticar o seu pedido.

Chave Valor
Ocp-Apim-Subscription-Key A chave do seu recurso. Utilizado para autenticar os seus pedidos de API.

Corpo do pedido

Utilize o seguinte JSON no seu corpo de pedido. O modelo será dado assim que o {MODEL-NAME} treino estiver completo. Só trabalhos de formação bem sucedidos produzirão modelos.

{
  "modelLabel": "{MODEL-NAME}",
  "trainingConfigVersion": "{CONFIG-VERSION}",
  "evaluationOptions": {
    "kind": "percentage", 
    "trainingSplitPercentage": 80,
    "testingSplitPercentage": 20
}
Chave Marcador de posição Valor Exemplo
modeloLabel {MODEL-NAME} O nome modelo que será atribuído ao seu modelo uma vez treinado com sucesso. myModel
formaçãoConfigVersão {CONFIG-VERSION} Esta é a versão modelo que será usada para treinar o modelo. 2022-05-01
avaliaçõesOpções Opção de dividir os seus dados através de conjuntos de treino e teste. {}
tipo percentage Métodos divididos. Os valores possíveis são percentage ou manual. Veja como treinar um modelo para mais informações. percentage
formaçãoSplitPercentage 80 Percentagem dos seus dados marcados para serem incluídos no conjunto de treino. O valor recomendado é 80. 80
testesSplitPercentage 20 Percentagem dos seus dados marcados para serem incluídos no conjunto de testes. O valor recomendado é 20. 20

Nota

O trainingSplitPercentage e testingSplitPercentage só é necessário se Kind for definido percentage e a soma de ambas as percentagens deve ser igual a 100.

Assim que enviar o seu pedido de API, receberá uma 202 resposta indicando que o trabalho foi submetido corretamente. Nos cabeçalhos de resposta, extraia o location valor. Será formatado assim:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} é utilizado para identificar o seu pedido, uma vez que esta operação é assíncronea. Você pode usar este URL para obter o estado de treino.

Obter estatuto de emprego de formação

O treino pode demorar entre 10 e 30 minutos. Pode utilizar o seguinte pedido para continuar a sondar o estado do trabalho de formação até estar concluído com sucesso.

Use o seguinte pedido GET para obter o estado do progresso de formação do seu modelo. Substitua os valores de espaço reservado abaixo pelos seus próprios valores.

URL do Pedido

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}
Marcador de posição Valor Exemplo
{ENDPOINT} O ponto final para autenticar o seu pedido de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} O nome do seu projeto. Este valor é sensível a casos. myProject
{JOB-ID} A identificação para localizar o estado de treino do seu modelo. Este valor está no valor do location cabeçalho que recebeu no passo anterior. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} A versão da API que está a ligar. O valor aqui referenciado é para a versão mais recente lançada. Consulte modelo ciclo de vida para saber mais sobre outras versões API disponíveis. 2022-05-01

Cabeçalhos

Utilize o seguinte cabeçalho para autenticar o seu pedido.

Chave Valor
Ocp-Apim-Subscription-Key A chave do seu recurso. Utilizado para autenticar os seus pedidos de API.

Corpo de Resposta

Assim que enviar o pedido, terá a seguinte resposta.

{
  "result": {
    "modelLabel": "{MODEL-NAME}",
    "trainingConfigVersion": "{CONFIG-VERSION}",
    "estimatedEndDateTime": "2022-04-18T15:47:58.8190649Z",
    "trainingStatus": {
      "percentComplete": 3,
      "startDateTime": "2022-04-18T15:45:06.8190649Z",
      "status": "running"
    },
    "evaluationStatus": {
      "percentComplete": 0,
      "status": "notStarted"
    }
  },
  "jobId": "{JOB-ID}",
  "createdDateTime": "2022-04-18T15:44:44Z",
  "lastUpdatedDateTime": "2022-04-18T15:45:48Z",
  "expirationDateTime": "2022-04-25T15:44:44Z",
  "status": "running"
}

Desdobre o seu modelo

Geralmente, depois de treinar um modelo, você iria rever os seus detalhes de avaliação e fazer melhorias se necessário. Neste arranque rápido, basta implementar o seu modelo e disponibilizá-lo para que experimente em Language Studio, ou pode chamar a API de previsão.

Submeter trabalho de implantação

Submeta um pedido DEMS utilizando o seguinte URL, cabeçalhos e corpo JSON para submeter um trabalho de implantação. Substitua os valores de espaço reservado abaixo pelos seus próprios valores.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}/deployments/{deploymentName}?api-version={API-VERSION}
Marcador de posição Valor Exemplo
{ENDPOINT} O ponto final para autenticar o seu pedido de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} O nome do seu projeto. Este valor é sensível a casos. myProject
{DEPLOYMENT-NAME} O nome da sua implantação. Este valor é sensível a casos. staging
{API-VERSION} A versão da API que está a ligar. O valor aqui referenciado é para a versão mais recente lançada. Saiba mais sobre outras versões API disponíveis 2022-05-01

Cabeçalhos

Utilize o seguinte cabeçalho para autenticar o seu pedido.

Chave Valor
Ocp-Apim-Subscription-Key A chave do seu recurso. Utilizado para autenticar os seus pedidos de API.

Corpo do pedido

Utilize o seguinte JSON no corpo do seu pedido. Use o nome do modelo que designa para a implantação.

{
  "trainedModelLabel": "{MODEL-NAME}",
}
Chave Marcador de posição Valor Exemplo
treinadoModelLabel {MODEL-NAME} O modelo nome que será atribuído à sua implantação. Só é possível atribuir modelos treinados com sucesso. Este valor é sensível a casos. myModel

Assim que enviar o seu pedido de API, receberá uma 202 resposta indicando que o trabalho foi submetido corretamente. Nos cabeçalhos de resposta, extraia o operation-location valor. Será formatado assim:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} é utilizado para identificar o seu pedido, uma vez que esta operação é assíncronea. Pode utilizar este URL para obter o estado de implantação.

Obter estatuto de emprego de implantação

Utilize o seguinte pedido GET para consultar o estado do trabalho de implantação. Pode utilizar o URL que recebeu do passo anterior ou substituir os valores de espaços reservados abaixo pelos seus próprios valores.

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Marcador de posição Valor Exemplo
{ENDPOINT} O ponto final para autenticar o seu pedido de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} O nome do seu projeto. Este valor é sensível a casos. myProject
{DEPLOYMENT-NAME} O nome da sua implantação. Este valor é sensível a casos. staging
{JOB-ID} A identificação para localizar o estado de treino do seu modelo. Isto está no valor do location cabeçalho que recebeu no passo anterior. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} A versão da API que está a ligar. O valor aqui referenciado é para a versão mais recente lançada. Saiba mais sobre outras versões API disponíveis 2022-05-01

Cabeçalhos

Utilize o seguinte cabeçalho para autenticar o seu pedido.

Chave Valor
Ocp-Apim-Subscription-Key A chave do seu recurso. Utilizado para autenticar os seus pedidos de API.

Corpo de Resposta

Assim que enviar o pedido, receberá a seguinte resposta. Continue a sondar este ponto final até que o parâmetro de estado mude para "ter sucesso". Deve obter um 200 código que indique o sucesso do pedido.

{
    "jobId":"{JOB-ID}",
    "createdDateTime":"{CREATED-TIME}",
    "lastUpdatedDateTime":"{UPDATED-TIME}",
    "expirationDateTime":"{EXPIRATION-TIME}",
    "status":"running"
}

Classificar texto

Depois de o seu modelo ser implementado com sucesso, pode começar a usá-lo para classificar o seu texto através da API de Previsão. No conjunto de dados da amostra que descarregou anteriormente, pode encontrar alguns documentos de teste que pode utilizar neste passo.

Submeta uma tarefa de classificação de texto personalizado

Utilize este pedido POST para iniciar uma tarefa de classificação de texto.

{ENDPOINT}/language/analyze-text/jobs?api-version={API-VERSION}
Marcador de posição Valor Exemplo
{ENDPOINT} O ponto final para autenticar o seu pedido de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API-VERSION} A versão da API que está a ligar. O valor aqui referenciado é para a versão mais recente lançada. Consulte o ciclo de vida do Modelo para saber mais sobre outras versões API disponíveis. 2022-05-01

Cabeçalhos

Chave Valor
Ocp-Apim-Subscription-Key A sua chave que dá acesso a esta API.

Corpo

{
  "displayName": "Classifying documents",
  "analysisInput": {
    "documents": [
      {
        "id": "1",
        "language": "{LANGUAGE-CODE}",
        "text": "Text1"
      },
      {
        "id": "2",
        "language": "{LANGUAGE-CODE}",
        "text": "Text2"
      }
    ]
  },
  "tasks": [
     {
      "kind": "CustomMultiLabelClassification",
      "taskName": "Multi Label Classification",
      "parameters": {
        "projectName": "{PROJECT-NAME}",
        "deploymentName": "{DEPLOYMENT-NAME}"
      }
    }
  ]
}
Chave Marcador de posição Valor Exemplo
displayName {JOB-NAME} Seu nome de trabalho. MyJobName
documents [{},{}] Lista de documentos para executar tarefas. [{},{}]
id {DOC-ID} Nome do documento ou identificação. doc1
language {LANGUAGE-CODE} Uma cadeia especificando o código de linguagem para o documento. Se esta chave não for especificada, o serviço assumirá a linguagem padrão do projeto que foi selecionado durante a criação do projeto. Consulte o suporte linguístico para obter uma lista de códigos linguísticos suportados. en-us
text {DOC-TEXT} Documente a tarefa de executar as tarefas. Lorem ipsum dolor sit amet
tasks Lista de tarefas que queremos realizar. []
taskName CustomMultiLabelClassification O nome da tarefa CustomMultiLabelClassification
parameters Lista de parâmetros para passar para a tarefa.
project-name {PROJECT-NAME} O nome para o seu projeto. Este valor é sensível a casos. myProject
deployment-name {DEPLOYMENT-NAME} O nome da sua implantação. Este valor é sensível a casos. prod

Resposta

Receberá uma resposta de 202 indicando sucesso. Nos cabeçalhos de resposta, extrato operation-location. operation-location é formatado assim:

{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}

Pode utilizar este URL para consultar o estado de conclusão da tarefa e obter os resultados quando a tarefa estiver concluída.

Obtenha resultados de tarefas

Utilize o seguinte pedido GET para consultar o estado/resultados da tarefa de classificação de texto.

{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}
Marcador de posição Valor Exemplo
{ENDPOINT} O ponto final para autenticar o seu pedido de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API-VERSION} A versão da API que está a ligar. O valor aqui referenciado é para a versão mais recente modelo versão. 2022-05-01

Cabeçalhos

Chave Valor
Ocp-Apim-Subscription-Key A sua chave que dá acesso a esta API.

Corpo da resposta

A resposta será um documento JSON com os seguintes parâmetros.

{
  "createdDateTime": "2021-05-19T14:32:25.578Z",
  "displayName": "MyJobName",
  "expirationDateTime": "2021-05-19T14:32:25.578Z",
  "jobId": "xxxx-xxxxxx-xxxxx-xxxx",
  "lastUpdateDateTime": "2021-05-19T14:32:25.578Z",
  "status": "succeeded",
  "tasks": {
    "completed": 1,
    "failed": 0,
    "inProgress": 0,
    "total": 1,
    "items": [
      {
        "kind": "customMultiClassificationTasks",
        "taskName": "Classify documents",
        "lastUpdateDateTime": "2020-10-01T15:01:03Z",
        "status": "succeeded",
        "results": {
          "documents": [
            {
              "id": "{DOC-ID}",
              "classes": [
                  {
                      "category": "Class_1",
                      "confidenceScore": 0.0551877357
                  }
              ],
              "warnings": []
            }
          ],
          "errors": [],
          "modelVersion": "2020-04-01"
        }
      }
    ]
  }
}

Limpar os recursos

Quando já não precisar do seu projeto, pode eliminá-lo com o seguinte pedido DELETE . Substitua os valores do espaço reservado pelos seus próprios valores.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}?api-version={API-VERSION}
Marcador de posição Valor Exemplo
{ENDPOINT} O ponto final para autenticar o seu pedido de API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} O nome para o seu projeto. Este valor é sensível a casos. myProject
{API-VERSION} A versão da API que está a ligar. O valor aqui referenciado é para a versão mais recente lançada. Saiba mais sobre outras versões API disponíveis 2022-05-01

Cabeçalhos

Utilize o seguinte cabeçalho para autenticar o seu pedido.

Chave Valor
Ocp-Apim-Subscription-Key A chave do seu recurso. Utilizado para autenticar os seus pedidos de API.

Assim que enviar o seu pedido de API, receberá uma 202 resposta indicando sucesso, o que significa que o seu projeto foi eliminado. Uma chamada bem sucedida resulta com um Operation-Location cabeçalho usado para verificar o estado do trabalho.

Passos seguintes

Depois de criar uma classificação de texto personalizada modelo, pode:

Quando começar a criar os seus próprios projetos de classificação de texto personalizados, use os artigos de como fazer para saber mais sobre o desenvolvimento do seu modelo com maior detalhe: