Reconnaître les entités contenant des informations d’identification personnelle

Effectué

La détection des informations d’identification personnelle (PII) est une fonctionnalité offerte par azure Language. Il identifie, catégorise et réacte les informations d’identification personnelle (PII) dans du texte non structuré. Les informations personnelles incluent des adresses e-mail, des numéros de téléphone, des informations de paiement, etc.

Il existe plusieurs façons d’appeler l’API de détection des informations personnelles. Ici, vous utilisez l’extension azure_ai pour traiter les informations personnelles à partir du texte dans les requêtes SQL.

Conditions préalables

Vous avez besoin d’un serveur flexible Azure Database pour PostgreSQL, avec l’extension azure_aiactivée et configurée. Vous devez également l’autoriser avec Azure Cognitive Services en définissant la clé et le point de terminaison d’une ressource de langage.

Scénarios

Utilisez la détection d’informations personnelles pour plusieurs applications, notamment :

  • Étiquettes de confidentialité : catégoriser les documents ou les e-mails en fonction des types d’informations personnelles. Le texte contenant des numéros de téléphone peut être marqué confidentiel, tandis que les numéros de carte de crédit ou de compte bancaire seraient étiquetés hautement secrets.
  • Expurgation dans le cadre du support et des tâches opérationnelles : De nombreuses tâches opérationnelles, par exemple le triage des incidents ou le routage du support, ne nécessitent pas d’informations personnelles. Les entreprises peuvent utiliser la rédaction des informations personnelles pour filtrer les informations client inutiles pour la tâche d’un employé.
  • Réduire les informations personnelles afin de réduire les préjugés inconscients : une entreprise peut supprimer des noms, des adresses et d’autres informations pour aider à atténuer le sexe inconscient ou d’autres préjugés.

Détection des informations personnelles dans SQL avec Azure Cognitive Services

Le serveur flexible Azure Database pour PostgreSQL azure_ai extension fournit des fonctions définies par l’utilisateur (UDF) pour accéder directement aux fonctionnalités d’IA à partir de SQL. L’API de détection d’informations personnelles est accessible avec la azure_cognitive.recognize_pii_entities fonction fournie par azure_ai:

azure_cognitive.recognize_pii_entities(
 text text,
 language text,
 timeout_ms integer DEFAULT 3600000,
 throw_on_error boolean DEFAULT true,
 domain text DEFAULT 'none'::text,
 disable_service_logs boolean DEFAULT false
)

Les paramètres requis sont text, l’entrée, language la langue dans laquelle text est écrit. Par exemple, en-us il s’agit de l’anglais américain et fr du français. Consultez la prise en charge linguistique pour obtenir la liste complète des langues disponibles.

Par défaut, la reconnaissance d’entité est arrêtée si elle ne se termine pas dans 3 600 000 ms = 1 heure. Vous pouvez personnaliser ce délai en modifiant timeout_ms.

Si une erreur se produit, le comportement par défaut consiste à lever une exception, ce qui entraîne une restauration des transactions. Vous pouvez désactiver ce comportement en définissant throw_on_error sur false.

Le domain paramètre peut être utilisé pour personnaliser le type de données personnelles identifiées. Pour le moment, le paramètre par défaut none utilise les informations d’identification personnelle générales, et le domaine phi identifie les informations médicales personnelles.

Consultez la documentation de l’extension Azure Cognitive Services pour obtenir la documentation complète sur les paramètres.

Par exemple, en invoquant cette requête :

SELECT azure_cognitive.recognize_pii_entities('My phone number is +1555555555, and the address of my office is 16255 NE 36th Way, Redmond, WA 98052.', 'en-us');

Donne ce résultat :

("My phone number is ***********, and the address of my office is ************************************.","{""(+1555555555,PhoneNumber,\\""\\"",0.8)"",""(\\""16255 NE 36th Way, Redmond, WA 98052\\"",Address,\\""\\"",1)""}")

Le service PII a détecté le numéro de téléphone avec un score de confiance de 0,8 et l’adresse avec un score de confiance de 1. Il a également retourné l’entrée après avoir expurgé les deux points de données relatifs aux informations d’identification personnelle.

Vous pouvez utiliser des colonnes de tableau pour le texte d’entrée :

SELECT description, azure_cognitive.recognize_pii_entities(description, 'en-us')
FROM listings LIMIT 1;

Qui retourne (avec \x activé pour l’affichage étendu) :

recognize_pii_entities | ("New modern house built in 2013. Spectacular sunset/water views, light, rooftop deck and lounge area, hot tub, 5 bedrooms, gourmet kitchen. Perfect for 2-3 families, walk to downtown. Located in highly desirable Queen Anne neighborhood. Our house is modern, light and fresh with a warm simple palette accented with barnwood, steel and concrete. Open living spaces for entertaining, gourmet kitchen, deck off the kitchen, reading nook, half bath and smaller tv room off kitchen. Fireplace with sofa and sitting area. Basement room is great for ****...this room has patio access and a garage door that opens into the space with basketball hoop right outside. A queen bedroom and full bath are in the basement with concrete heated floors. A queen sleeper sofa is in the tv area in the basement. This room has a door if privacy is needed. Great for a second ****** with ****. The 2nd floor has 4 bedrooms (one queen in master, one twin bedroom, another bedroom has twin bunk beds and the last","{""(kids,PersonType,\\""\\"",0.73)"",""(family,PersonType,\\""\\"",0.71)"",""(kids,PersonType,\\""\\"",0.65)""}")

Résumé

La détection d’informations personnelles identifie et classe les informations d’identification personnelle dans le texte d’entrée non structuré. Le modèle de langage Azure Cognitive Services effectue le gros travail et l’extension azure_ai d’Azure Database pour PostgreSQL fournit l’API azure_cognitive.recognize_pii_entities pour détecter et réacter les informations personnelles directement dans les requêtes SQL.