Habilidade cognitiva de detecção de PIIPII Detection cognitive skill

Importante

Essa habilidade está atualmente em versão prévia pública.This skill is currently in public preview. A funcionalidade de versão prévia é fornecida sem um Contrato de Nível de Serviço e, portanto, não é recomendada para cargas de trabalho de produção.Preview functionality is provided without a service level agreement, and is not recommended for production workloads. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.For more information, see Supplemental Terms of Use for Microsoft Azure Previews. No momento, não há suporte para Portal ou SDK do .NET.There is currently no portal or .NET SDK support.

A habilidade de detecção de PII extrai informações pessoais de um texto de entrada e oferece a você a opção de mascaramento.The PII Detection skill extracts personal information from an input text and gives you the option of masking it. Essa habilidade usa os modelos de machine learning fornecidos pela Análise de Texto nos Serviços Cognitivos.This skill uses the machine learning models provided by Text Analytics in Cognitive Services.

Observação

À medida que expandir o escopo aumentando a frequência de processamento, adicionando mais documentos ou adicionando mais algoritmos de IA, você precisará anexar um recurso de Serviços Cognitivos faturável.As you expand scope by increasing the frequency of processing, adding more documents, or adding more AI algorithms, you will need to attach a billable Cognitive Services resource. As cobranças são geradas ao chamar APIs nos Serviços Cognitivos e para a extração de imagem, como parte do estágio de quebra de documento na Pesquisa Cognitiva do Azure.Charges accrue when calling APIs in Cognitive Services, and for image extraction as part of the document-cracking stage in Azure Cognitive Search. Não há encargos para extração de texto em documentos.There are no charges for text extraction from documents.

A execução de habilidades integradas é cobrada nos preços pagos conforme o uso dos Serviços Cognitivos existentes.Execution of built-in skills is charged at the existing Cognitive Services pay-as-you go price. O preço da extração de imagem é descrito na página de preços da Pesquisa Cognitiva do Azure.Image extraction pricing is described on the Azure Cognitive Search pricing page.

@odata.type

Microsoft.Skills.Text.PIIDetectionSkillMicrosoft.Skills.Text.PIIDetectionSkill

Limites de dadosData limits

O tamanho máximo de um registro deve ser de 50.000 caracteres conforme medido por String.Length.The maximum size of a record should be 50,000 characters as measured by String.Length. Se você precisar dividir seus dados antes de enviá-los para a habilidade, considere o uso da habilidade de divisão de texto.If you need to chunk your data before sending it to the skill, consider using the Text Split skill.

Parâmetros de habilidadesSkill parameters

Os parâmetros diferenciam maiúsculas de minúsculas e todos são opcionais.Parameters are case-sensitive and all are optional.

Nome do parâmetroParameter name DescriçãoDescription
defaultLanguageCode Código de idioma do texto de entrada.Language code of the input text. Por enquanto, há en suporte apenas para.For now, only en is supported.
minimumPrecision Um valor entre 0,0 e 1,0.A value between 0.0 and 1.0. Se a pontuação de confiança (na piiEntities saída) for menor do que o minimumPrecision valor definido, a entidade não será retornada nem mascarada.If the confidence score (in the piiEntities output) is lower than the set minimumPrecision value, the entity is not returned or masked. O padrão é 0.0.The default is 0.0.
maskingMode Um parâmetro que fornece várias maneiras de mascarar as informações pessoais detectadas no texto de entrada.A parameter that provides various ways to mask the personal information detected in the input text. Há suporte para as seguintes opções:The following options are supported:
  • none (padrão): nenhuma máscara ocorre e a maskedText saída não será retornada.none (default): No masking occurs and the maskedText output will not be returned.
  • redact: Remove as entidades detectadas do texto de entrada e não substitui os valores excluídos.redact: Removes the detected entities from the input text and does not replace the deleted values. Nesse caso, o deslocamento na piiEntities saída será em relação ao texto original e não ao texto mascarado.In this case, the offset in the piiEntities output will be in relation to the original text, and not the masked text.
  • replace: Substitui as entidades detectadas pelo caractere fornecido no maskingCharacter parâmetro.replace: Replaces the detected entities with the character given in the maskingCharacter parameter. O caractere será repetido para o comprimento da entidade detectada para que os deslocamentos correspondam corretamente ao texto de entrada, bem como à saída maskedText .The character will be repeated to the length of the detected entity so that the offsets will correctly correspond to both the input text as well as the output maskedText.
maskingCharacter O caractere usado para mascarar o texto se o maskingMode parâmetro for definido como replace .The character used to mask the text if the maskingMode parameter is set to replace. Há suporte para as seguintes opções: * (padrão), # , X .The following options are supported: * (default), #, X. Esse parâmetro só pode ser null se maskingMode não estiver definido como replace .This parameter can only be null if maskingMode is not set to replace.

Entradas de habilidadesSkill inputs

Nome de entradaInput name DescriçãoDescription
languageCode Opcional.Optional. O padrão é en.Default is en.
text O texto para analisar.The text to analyze.

Saídas de habilidadesSkill outputs

Nome de saídaOutput name DescriçãoDescription
piiEntities Uma matriz de tipos complexos que contêm os seguintes campos:An array of complex types that contains the following fields:
  • texto (a PII real como extraída)text (The actual PII as extracted)
  • typetype
  • SubtiposubType
  • Score (maior valor significa que é mais provável que seja uma entidade real)score (Higher value means it's more likely to be a real entity)
  • deslocamento (no texto de entrada)offset (into the input text)
  • comprimentolength

Possíveis tipos e subtipos podem ser encontrados aqui.Possible types and subTypes can be found here.
maskedText Se maskingMode for definido como um valor diferente de none , essa saída será o resultado da cadeia de caracteres do mascaramento executado no texto de entrada, conforme descrito pelo selecionado maskingMode .If maskingMode is set to a value other than none, this output will be the string result of the masking performed on the input text as described by the selected maskingMode. Se maskingMode for definido como none , essa saída não estará presente.If maskingMode is set to none, this output will not be present.

Definição de exemploSample definition

  {
    "@odata.type": "#Microsoft.Skills.Text.PIIDetectionSkill",
    "defaultLanguageCode": "en",
    "minimumPrecision": 0.5,
    "maskingMode": "replace",
    "maskingCharacter": "*",
    "inputs": [
      {
        "name": "text",
        "source": "/document/content"
      }
    ],
    "outputs": [
      {
        "name": "piiEntities"
      },
      {
        "name": "maskedText"
      }
    ]
  }

Entrada de exemploSample input

{
    "values": [
      {
        "recordId": "1",
        "data":
           {
             "text": "Microsoft employee with ssn 859-98-0987 is using our awesome API's."
           }
      }
    ]
}

Saída de exemploSample output

{
  "values": [
    {
      "recordId": "1",
      "data" : 
      {
        "piiEntities":[ 
           { 
              "text":"859-98-0987",
              "type":"U.S. Social Security Number (SSN)",
              "subtype":"",
              "offset":28,
              "length":11,
              "score":0.65
           }
        ],
        "maskedText": "Microsoft employee with ssn *********** is using our awesome API's."
      }
    }
  ]
}

Os deslocamentos retornados para entidades na saída dessa habilidade são retornados diretamente da API de análise de texto, o que significa que, se você estiver usando-os para indexar na cadeia de caracteres original, deverá usar a classe StringInfo no .net para extrair o conteúdo correto.The offsets returned for entities in the output of this skill are directly returned from the Text Analytics API, which means if you are using them to index into the original string, you should use the StringInfo class in .NET in order to extract the correct content. Mais detalhes podem ser encontrados aqui.More details can be found here.

Erros e avisosErrors and warnings

Se não houver suporte para o código de idioma do documento, um aviso será retornado e nenhuma entidade será extraída.If the language code for the document is unsupported, a warning is returned and no entities are extracted. Se o texto estiver vazio, um aviso será retornado.If your text is empty, a warning is returned. Se o texto for maior que 50.000 caracteres, somente os primeiros 50.000 caracteres serão analisados e um aviso será emitido.If your text is larger than 50,000 characters, only the first 50,000 characters will be analyzed and a warning will be issued.

Se a habilidade retornar um aviso, a saída maskedText poderá estar vazia, o que pode afetar as habilidades de downstream que esperam a saída.If the skill returns a warning, the output maskedText may be empty, which can impact any downstream skills that expect the output. Por esse motivo, certifique-se de investigar todos os avisos relacionados à saída ausente ao escrever sua definição de Skill.For this reason, be sure to investigate all warnings related to missing output when writing your skillset definition.

Confira tambémSee also