Compartir a través de


Detección y redacción de información de identificación personal en texto

Lenguaje de Azure AI es un servicio basado en la nube que aplica características de procesamiento del lenguaje natural (NLP) a datos basados en texto. La característica DCP puede evaluar texto no estructurado, extraer y tachar datos personales (PII) e información sanitaria (PHI) en texto en varias categorías predefinidas.

Opciones de desarrollo

Para usar la detección de información de identificación personal (PII), debe enviar texto para su análisis y controlar 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 la detección de PII:

Opción de desarrollo Descripción
Azure AI Foundry Azure AI Foundry es una plataforma basada en web que le permite usar la detección de información personal identificable utilizando ejemplos de texto y sus propios datos cuando se registra. Para más información, consulte el sitio web de Fundición de IA de Azure o la documentación de Fundición de IA de Azure.
API REST o biblioteca cliente (SDK de Azure) Integre la detección de PII en las aplicaciones mediante la API REST o la biblioteca cliente disponible en una variedad de lenguajes. Para más información, consulte la guía de inicio rápido de detección de PII.

Especificación del modelo de detección de DCP

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.

Idiomas de entrada

Al enviar texto de entrada para que se procese, puede especificar en cuál de los idiomas admitidos están escritos. Si no especifica un idioma, el valor predeterminado de la extracción es inglés. La API puede devolver desplazamientos en la respuesta para admitir diferentes codificaciones multilingües y emojis.

La directiva de tachado (solo versión 2024-11-5-preview)

En la versión 2024-11-5-preview, puede definir el parámetro redactionPolicy para reflejar la directiva de tachado que se usará al tachar texto. El campo de directiva admite tres tipos de directiva:

  • DoNotRedact
  • MaskWithCharacter (valor predeterminado)
  • MaskWithEntityType

La DoNotRedact directiva permite al usuario devolver la respuesta sin el redactedText campo , es decir, "John Doe recibió una llamada del 424-878-9192".

La política de MaskWithRedactionCharacter permite que redactedText se enmascare con un carácter (como "*"), conservando la longitud y el desplazamiento del texto original, es decir, "******** recibió una llamada de ************". Este es el comportamiento existente.

También hay un campo opcional denominado redactionCharacter donde puede escribir el carácter que se va a usar en el tachado si emplea la directiva MaskWithCharacter.

La MaskWithEntityType directiva permite enmascarar el texto de la entidad PII detectada con el tipo de entidad detectado, es decir, "[PERSON_1] recibió una llamada de [PHONENUMBER_1]".

Selección de las entidades que se van a devolver

La API intenta detectar las categorías de entidad definidas para el idioma de una entrada de texto determinada. Si desea especificar qué entidades se detectarán y devolverán, use el parámetro piiCategories opcional con las categorías de entidad adecuadas. Este parámetro también puede permitirle detectar entidades que no están habilitadas de forma predeterminada para el lenguaje del texto de entrada. En el siguiente ejemplo, solo se detectaría Person. Puede especificar uno o varios tipos de entidad que se van a devolver.

Sugerencia

Si no incluye default al especificar las categorías de entidad, la API solo devuelve las categorías de entidad que especifique.

Entrada:

Nota:

En este ejemplo, devuelve solo el tipo de entidad person.

https://<your-language-resource-endpoint>/language/:analyze-text?api-version=2022-05-01

{
    "kind": "PiiEntityRecognition",
    "parameters": 
    {
        "modelVersion": "latest",
        "piiCategories" :
        [
            "Person"
        ]
    },
    "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!"
            }
        ]
    },
    "kind": "PiiEntityRecognition", 
    "parameters": { 
        "redactionPolicy": { 
            "policyKind": "MaskWithCharacter"  
             //MaskWithCharacter|MaskWithEntityType|DoNotRedact 
            "redactionCharacter": "*"  
}

Salida:


{
    "kind": "PiiEntityRecognitionResults",
    "results": {
        "documents": [
            {
                "redactedText": "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 ********) 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!",
                "id": "1",
                "entities": [
                    {
                        "text": "John Doe",
                        "category": "Person",
                        "offset": 226,
                        "length": 8,
                        "confidenceScore": 0.98
                    }
                ],
                "warnings": []
            }
        ],
        "errors": [],
        "modelVersion": "2021-01-15"
    }
}

Adaptación de PII al dominio

Para adaptarse al vocabulario personalizado de un cliente que se usa para identificar entidades (también conocidas como "contexto"), la característica permite a los entitySynonyms clientes definir sus propios sinónimos para tipos de entidad específicos. El objetivo de esta característica es ayudar a detectar entidades en contextos con los que el modelo no está familiarizado, sino que se usan en las entradas del cliente asegurándose de que los términos únicos del cliente se reconocen y se asocian correctamente durante el proceso de detección.

La opción valueExclusionPolicy permite a los clientes adaptar el servicio PII para escenarios en los que prefieren que ciertos términos no se detecten ni redacten, incluso si esos términos caen dentro de una categoría de PII que están interesados en detectar. Por ejemplo, un departamento de policía podría querer que los identificadores personales se redacten en la mayoría de los casos, excepto los términos como "oficial de policía", "sospechoso" y "testigo".

Los clientes ahora pueden adaptar la detección del servicio PII especificando su propia expresión regular mediante un archivo de configuración para el reconocimiento de expresiones regulares. Consulte nuestras guías prácticas de contenedores para ver un tutorial sobre cómo instalar y ejecutar contenedores de detección de PII.

Puede encontrar un tutorial más detallado en la guía de procedimientos "Adaptación de PII a su dominio".

Envío de datos

El análisis se realiza tras la recepción de la solicitud. El uso de la característica de detección de DCP de forma asincró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.

Obtención de resultados de DCP

Cuando obtiene los resultados de la detección de DCP, 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. También se devuelve la cadena de texto con las entidades DCP tachadas.

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

Información general sobre la información de identificación personal (DCP)