Краткое руководство. Обнаружение личных сведений (PII)

В этом кратком руководстве вы используете функцию обнаружения Azure language in Foundry Tools PII для идентификации и редактирования личных сведений в тексте. Вы можете приступить к работе с предпочтительной клиентской библиотекой, REST API или порталом Microsoft Foundry.

Если у вас нет подписки Azure, создайте учетную запись free перед началом работы.

Примечание

В этом кратком руководстве основное внимание уделяется тексту piI. Сведения о рабочих процессах бесед см. в разделе "Как обнаруживать и редактировать личные данные в беседах". Сведения о рабочих процессах документов см. в обзоре piI на основе документов и способах обнаружения и изменения личных сведений в собственных документах.

документация Reference | More samples | Package (NuGet) | Library source code

В этом кратком руководстве по созданию приложения обнаружения персональных данных (PII) с клиентской библиотекой для .NET. В следующем примере создается приложение C#, которое может определять распознанные конфиденциальные данные в тексте.

Совет

Вы можете попробовать платформу Microsoft Foundry для выполнения задач языка Azure без необходимости писать код.

Необходимые условия

Настройка

Создание ресурса Azure

Чтобы использовать приведенный ниже пример кода, необходимо развернуть ресурс Azure. Этот ресурс будет содержать ключ и конечную точку, используемую для проверки подлинности вызовов API, которые вы отправляете на язык Azure.

  1. Используйте следующую ссылку, чтобы создать языковой ресурс с помощью портала Azure. Вам нужно войти с помощью подписки Azure.

  2. На появившемся экране выбора дополнительных функций нажмите кнопку "Продолжить", чтобы создать ресурс.

    A снимок экрана с дополнительными параметрами функций на портале Azure.

  3. На экране "Создание языка " укажите следующие сведения:

    Детали Описание
    Подписки Учетная запись подписки, с которым будет связан ваш ресурс. Выберите подписку Azure в раскрывающемся меню.
    Группа ресурсов Группа ресурсов — это контейнер, в который хранятся создаваемые ресурсы. Нажмите кнопку "Создать" , чтобы создать новую группу ресурсов.
    Регионе Расположение ресурса языка. Различные регионы могут привести к задержке в зависимости от физического расположения, но не влияют на доступность ресурса во время выполнения. В этом кратком руководстве выберите доступный регион рядом с вами или выберите восточную часть США.
    Имя Имя ресурса языка. Это имя также будет использоваться для создания URL-адреса конечной точки, который приложения будут использовать для отправки запросов API.
    Ценовая категория Ценовая категория для ресурса языка. Вы можете использовать уровень "Бесплатный F0 ", чтобы попробовать службу и обновить ее позже до платного уровня для рабочей среды.

    A снимок экрана: сведения о создании ресурсов на портале Azure.

  4. Убедитесь, что установлен флажок "Уведомление об ответственном ИИ ".

  5. Выберите "Рецензирование и создание " в нижней части страницы.

  6. На появившемся экране убедитесь, что проверка прошла, и правильно ввели данные. Затем нажмите кнопку "Создать".

Получение ключа и конечной точки

Затем вам потребуется ключ и конечная точка из ресурса для подключения приложения к API. Вы вставьте ключ и конечную точку в код позже в кратком руководстве.

  1. После успешного развертывания ресурсов языка Azure нажмите кнопку Go to Resource в разделе Next Steps.

    Снимок экрана: следующие шаги после развертывания ресурса.

  2. На экране ресурса выберите ключи и конечную точку на левой панели. Вы будете использовать один из ключей и конечной точки в следующих шагах.

    Снимок экрана: раздел

Создание переменных среды

Приложение должно пройти проверку подлинности для отправки запросов API. Для рабочей среды используйте безопасный способ хранения и доступа к учетным данным. В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.

Чтобы задать переменную среды для ключа ресурса языка, откройте окно консоли и следуйте инструкциям в вашей операционной системе и среде разработки.

  • Чтобы задать LANGUAGE_KEY переменную среды, замените your-key одним из ключей ресурса.
  • Чтобы задать переменную среды, замените your-endpoint конечной LANGUAGE_ENDPOINT точкой ресурса.

Важно

Мы рекомендуем Microsoft Entra ID проверку подлинности с помощью управляемых удостоверений для ресурсов Azure, чтобы избежать хранения учетных данных в приложениях, работающих в облаке.

Используйте ключи API с осторожностью. Не включайте ключ API непосредственно в код и никогда не публикуйте его. При использовании ключей API безопасно храните их в Azure Key Vault, регулярно поворачивайте ключи и ограничивайте доступ к Azure Key Vault с помощью управления доступом на основе ролей и ограничений доступа к сети. Дополнительные сведения об использовании ключей API в приложениях см. в разделе API с ключами Azure Key Vault.

Дополнительные сведения о безопасности служб ИИ см. в разделе Authenticate запросов на Azure AI services.

setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Примечание

Если вам нужно получить доступ только к переменным среды в текущей работающей консоли, можно задать переменную set среды вместо setx.

После добавления переменных среды может потребоваться перезапустить все запущенные программы, которые потребуются для чтения переменных среды, включая окно консоли. Например, если вы используете Visual Studio в качестве редактора, перезапустите Visual Studio перед выполнением примера.

Создание нового приложения .NET Core

С помощью Visual Studio IDE создайте новое консольное приложение .NET Core. На этом шаге создается проект Hello World с одним исходным файлом C#: program.cs.

Установите клиентную библиотеку, щелкнув решение правой кнопкой мыши в Обозреватель решений и выбрав Manage NuGet Packages. В открывщемся диспетчере пакетов выберите Browse и найдите Azure.AI.TextAnalytics. Выберите версию 5.2.0и установите ее. Вы также можете использовать консоль диспетчер пакетов.

Пример кода

Скопируйте следующий код в файл program.cs и запустите код.

using Azure;
using System;
using Azure.AI.TextAnalytics;

namespace Example
{
    class Program
    {
        // This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
        static string languageKey = Environment.GetEnvironmentVariable("LANGUAGE_KEY");
        static string languageEndpoint = Environment.GetEnvironmentVariable("LANGUAGE_ENDPOINT");

        // Example method for detecting sensitive information (PII) from text 
        static void RecognizePIIExample(TextAnalyticsClient client)
        {
            string document = "Call our office at 312-555-1234, or send an email to support@contoso.com.";
        
            PiiEntityCollection entities = client.RecognizePiiEntities(document).Value;
        
            Console.WriteLine($"Redacted Text: {entities.RedactedText}");
            if (entities.Count > 0)
            {
                Console.WriteLine($"Recognized {entities.Count} PII entit{(entities.Count > 1 ? "ies" : "y")}:");
                foreach (PiiEntity entity in entities)
                {
                    Console.WriteLine($"Text: {entity.Text}, Category: {entity.Category}, SubCategory: {entity.SubCategory}, Confidence score: {entity.ConfidenceScore}");
                }
            }
            else
            {
                Console.WriteLine("No entities were found.");
            }
        }

        static void Main(string[] args)
        {
            if (string.IsNullOrWhiteSpace(languageKey) || string.IsNullOrWhiteSpace(languageEndpoint))
            {
                Console.WriteLine("Missing LANGUAGE_KEY or LANGUAGE_ENDPOINT environment variables.");
                return;
            }

            var endpoint = new Uri(languageEndpoint);
            var credentials = new AzureKeyCredential(languageKey);
            var client = new TextAnalyticsClient(endpoint, credentials);
            RecognizePIIExample(client);

            Console.Write("Press any key to exit.");
            Console.ReadKey();
        }

    }
}

Выход

Redacted Text: Call our office at ************, or send an email to *******************.
Recognized 2 PII entities:
Text: 312-555-1234, Category: PhoneNumber, SubCategory: , Confidence score: 0.8
Text: support@contoso.com, Category: Email, SubCategory: , Confidence score: 0.8

документация Reference | More samples | Package (Maven) | Исходный кодLibrary

Используйте это краткое руководство для создания приложения обнаружения личных сведений (PII) с клиентской библиотекой для Java. В следующем примере создается приложение Java, которое может определить recognized конфиденциальную информацию в тексте.

Совет

Вы можете попробовать платформу Microsoft Foundry для выполнения задач языка Azure без необходимости писать код.

Необходимые условия

Настройка

Создание ресурса Azure

Чтобы использовать приведенный ниже пример кода, необходимо развернуть ресурс Azure. Этот ресурс будет содержать ключ и конечную точку, используемую для проверки подлинности вызовов API, которые вы отправляете на язык Azure.

  1. Используйте следующую ссылку, чтобы создать языковой ресурс с помощью портала Azure. Вам нужно войти с помощью подписки Azure.

  2. На появившемся экране выбора дополнительных функций нажмите кнопку "Продолжить", чтобы создать ресурс.

    A снимок экрана с дополнительными параметрами функций на портале Azure.

  3. На экране "Создание языка " укажите следующие сведения:

    Детали Описание
    Подписки Учетная запись подписки, с которым будет связан ваш ресурс. Выберите подписку Azure в раскрывающемся меню.
    Группа ресурсов Группа ресурсов — это контейнер, в который хранятся создаваемые ресурсы. Нажмите кнопку "Создать" , чтобы создать новую группу ресурсов.
    Регионе Расположение ресурса языка. Различные регионы могут привести к задержке в зависимости от физического расположения, но не влияют на доступность ресурса во время выполнения. В этом кратком руководстве выберите доступный регион рядом с вами или выберите восточную часть США.
    Имя Имя ресурса языка. Это имя также будет использоваться для создания URL-адреса конечной точки, который приложения будут использовать для отправки запросов API.
    Ценовая категория Ценовая категория для ресурса языка. Вы можете использовать уровень "Бесплатный F0 ", чтобы попробовать службу и обновить ее позже до платного уровня для рабочей среды.

    A снимок экрана: сведения о создании ресурсов на портале Azure.

  4. Убедитесь, что установлен флажок "Уведомление об ответственном ИИ ".

  5. Выберите "Рецензирование и создание " в нижней части страницы.

  6. На появившемся экране убедитесь, что проверка прошла, и правильно ввели данные. Затем нажмите кнопку "Создать".

Получение ключа и конечной точки

Затем вам потребуется ключ и конечная точка из ресурса для подключения приложения к API. Вы вставьте ключ и конечную точку в код позже в кратком руководстве.

  1. После успешного развертывания ресурсов языка Azure нажмите кнопку Go to Resource в разделе Next Steps.

    Снимок экрана: следующие шаги после развертывания ресурса.

  2. На экране ресурса выберите ключи и конечную точку на левой панели. Вы будете использовать один из ключей и конечной точки в следующих шагах.

    Снимок экрана: раздел

Создание переменных среды

Приложение должно пройти проверку подлинности для отправки запросов API. Для рабочей среды используйте безопасный способ хранения и доступа к учетным данным. В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.

Чтобы задать переменную среды для ключа ресурса языка, откройте окно консоли и следуйте инструкциям в вашей операционной системе и среде разработки.

  • Чтобы задать LANGUAGE_KEY переменную среды, замените your-key одним из ключей ресурса.
  • Чтобы задать переменную среды, замените your-endpoint конечной LANGUAGE_ENDPOINT точкой ресурса.

Важно

Мы рекомендуем Microsoft Entra ID проверку подлинности с помощью управляемых удостоверений для ресурсов Azure, чтобы избежать хранения учетных данных в приложениях, работающих в облаке.

Используйте ключи API с осторожностью. Не включайте ключ API непосредственно в код и никогда не публикуйте его. При использовании ключей API безопасно храните их в Azure Key Vault, регулярно поворачивайте ключи и ограничивайте доступ к Azure Key Vault с помощью управления доступом на основе ролей и ограничений доступа к сети. Дополнительные сведения об использовании ключей API в приложениях см. в разделе API с ключами Azure Key Vault.

Дополнительные сведения о безопасности служб ИИ см. в разделе Authenticate запросов на Azure AI services.

setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Примечание

Если вам нужно получить доступ только к переменным среды в текущей работающей консоли, можно задать переменную set среды вместо setx.

После добавления переменных среды может потребоваться перезапустить все запущенные программы, которые потребуются для чтения переменных среды, включая окно консоли. Например, если вы используете Visual Studio в качестве редактора, перезапустите Visual Studio перед выполнением примера.

Добавление клиентской библиотеки

Создайте проект Maven в предпочтительной среде разработки или интегрированной среды разработки. Затем добавьте следующую зависимость в файлpom.xml проекта. Синтаксис реализации для других средств сборки можно найти в Интернете.

<dependencies>
     <dependency>
        <groupId>com.azure</groupId>
        <artifactId>azure-ai-textanalytics</artifactId>
        <version>5.2.0</version>
    </dependency>
</dependencies>

Пример кода

Создайте файл Java с именем Example.java. Откройте файл и скопируйте следующий код. Затем запустите код.

import com.azure.core.credential.AzureKeyCredential;
import com.azure.ai.textanalytics.models.*;
import com.azure.ai.textanalytics.TextAnalyticsClientBuilder;
import com.azure.ai.textanalytics.TextAnalyticsClient;

public class Example {

    // This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
    private static String languageKey = System.getenv("LANGUAGE_KEY");
    private static String languageEndpoint = System.getenv("LANGUAGE_ENDPOINT");

    public static void main(String[] args) {
        if (languageKey == null || languageKey.isBlank() || languageEndpoint == null || languageEndpoint.isBlank()) {
            throw new IllegalArgumentException("Missing LANGUAGE_KEY or LANGUAGE_ENDPOINT environment variables");
        }
        TextAnalyticsClient client = authenticateClient(languageKey, languageEndpoint);
        recognizePiiEntitiesExample(client);
    }
    // Method to authenticate the client object with your key and endpoint
    static TextAnalyticsClient authenticateClient(String key, String endpoint) {
        return new TextAnalyticsClientBuilder()
                .credential(new AzureKeyCredential(key))
                .endpoint(endpoint)
                .buildClient();
    }

    // Example method for detecting sensitive information (PII) from text
    static void recognizePiiEntitiesExample(TextAnalyticsClient client)
    {
        // The text that need be analyzed.
        String document = "My SSN is 859-98-0987";
        PiiEntityCollection piiEntityCollection = client.recognizePiiEntities(document);
        System.out.printf("Redacted Text: %s%n", piiEntityCollection.getRedactedText());
        piiEntityCollection.forEach(entity -> System.out.printf(
            "Recognized Personally Identifiable Information entity: %s, entity category: %s, entity subcategory: %s,"
                + " confidence score: %f.%n",
            entity.getText(), entity.getCategory(), entity.getSubcategory(), entity.getConfidenceScore()));
    }
}

Выход

Redacted Text: My SSN is ***********
Recognized Personally Identifiable Information entity: 859-98-0987, entity category: USSocialSecurityNumber, entity subcategory: null, confidence score: 0.650000.

документация Reference | More samples | Package (npm) | Library source code

Используйте это краткое руководство для создания приложения обнаружения личных сведений (PII) с клиентской библиотекой для Node.js. В следующем примере создается приложение JavaScript, которое может определять распознанные конфиденциальные данные в тексте.

Необходимые условия

Настройка

Создание ресурса Azure

Чтобы использовать приведенный ниже пример кода, необходимо развернуть ресурс Azure. Этот ресурс будет содержать ключ и конечную точку, используемую для проверки подлинности вызовов API, которые вы отправляете на язык Azure.

  1. Используйте следующую ссылку, чтобы создать языковой ресурс с помощью портала Azure. Вам нужно войти с помощью подписки Azure.

  2. На появившемся экране выбора дополнительных функций нажмите кнопку "Продолжить", чтобы создать ресурс.

    A снимок экрана с дополнительными параметрами функций на портале Azure.

  3. На экране "Создание языка " укажите следующие сведения:

    Детали Описание
    Подписки Учетная запись подписки, с которым будет связан ваш ресурс. Выберите подписку Azure в раскрывающемся меню.
    Группа ресурсов Группа ресурсов — это контейнер, в который хранятся создаваемые ресурсы. Нажмите кнопку "Создать" , чтобы создать новую группу ресурсов.
    Регионе Расположение ресурса языка. Различные регионы могут привести к задержке в зависимости от физического расположения, но не влияют на доступность ресурса во время выполнения. В этом кратком руководстве выберите доступный регион рядом с вами или выберите восточную часть США.
    Имя Имя ресурса языка. Это имя также будет использоваться для создания URL-адреса конечной точки, который приложения будут использовать для отправки запросов API.
    Ценовая категория Ценовая категория для ресурса языка. Вы можете использовать уровень "Бесплатный F0 ", чтобы попробовать службу и обновить ее позже до платного уровня для рабочей среды.

    A снимок экрана: сведения о создании ресурсов на портале Azure.

  4. Убедитесь, что установлен флажок "Уведомление об ответственном ИИ ".

  5. Выберите "Рецензирование и создание " в нижней части страницы.

  6. На появившемся экране убедитесь, что проверка прошла, и правильно ввели данные. Затем нажмите кнопку "Создать".

Получение ключа и конечной точки

Затем вам потребуется ключ и конечная точка из ресурса для подключения приложения к API. Вы вставьте ключ и конечную точку в код позже в кратком руководстве.

  1. После успешного развертывания ресурсов языка Azure нажмите кнопку Go to Resource в разделе Next Steps.

    Снимок экрана: следующие шаги после развертывания ресурса.

  2. На экране ресурса выберите ключи и конечную точку на левой панели. Вы будете использовать один из ключей и конечной точки в следующих шагах.

    Снимок экрана: раздел

Создание переменных среды

Приложение должно пройти проверку подлинности для отправки запросов API. Для рабочей среды используйте безопасный способ хранения и доступа к учетным данным. В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.

Чтобы задать переменную среды для ключа ресурса языка, откройте окно консоли и следуйте инструкциям в вашей операционной системе и среде разработки.

  • Чтобы задать LANGUAGE_KEY переменную среды, замените your-key одним из ключей ресурса.
  • Чтобы задать переменную среды, замените your-endpoint конечной LANGUAGE_ENDPOINT точкой ресурса.

Важно

Мы рекомендуем Microsoft Entra ID проверку подлинности с помощью управляемых удостоверений для ресурсов Azure, чтобы избежать хранения учетных данных в приложениях, работающих в облаке.

Используйте ключи API с осторожностью. Не включайте ключ API непосредственно в код и никогда не публикуйте его. При использовании ключей API безопасно храните их в Azure Key Vault, регулярно поворачивайте ключи и ограничивайте доступ к Azure Key Vault с помощью управления доступом на основе ролей и ограничений доступа к сети. Дополнительные сведения об использовании ключей API в приложениях см. в разделе API с ключами Azure Key Vault.

Дополнительные сведения о безопасности служб ИИ см. в разделе Authenticate запросов на Azure AI services.

setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Примечание

Если вам нужно получить доступ только к переменным среды в текущей работающей консоли, можно задать переменную set среды вместо setx.

После добавления переменных среды может потребоваться перезапустить все запущенные программы, которые потребуются для чтения переменных среды, включая окно консоли. Например, если вы используете Visual Studio в качестве редактора, перезапустите Visual Studio перед выполнением примера.

Создание нового приложения Node.js

В окне консоли (например, cmd, PowerShell или Bash) создайте новый каталог для приложения и перейдите к нему.

mkdir myapp

cd myapp

npm init Выполните команду, чтобы создать приложение узла с файломpackage.json.

npm init

Установка клиентской библиотеки

Установите пакет npm:

npm install @azure/ai-text-analytics

Пример кода

Откройте файл и скопируйте следующий пример и запустите код.

"use strict";

const { TextAnalyticsClient, AzureKeyCredential } = require("@azure/ai-text-analytics");

// This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
const key = process.env.LANGUAGE_KEY;
const endpoint = process.env.LANGUAGE_ENDPOINT;

if (!key || !endpoint) {
  throw new Error("Missing LANGUAGE_KEY or LANGUAGE_ENDPOINT environment variables.");
}

async function main() {
    console.log(`PII recognition sample`);

  const client = new TextAnalyticsClient(endpoint, new AzureKeyCredential(key));

  const documents = ["My phone number is 555-555-5555"];

    const results = await client.recognizePiiEntities(documents, "en");

    for (const result of results) {
      if (result.error) {
        console.error("Encountered an error:", result.error);
        continue;
      }

      console.log(`Redacted text: "${result.redactedText}"`);
      console.log("PII entities:");
      for (const entity of result.entities) {
        console.log(`\t- "${entity.text}" of type ${entity.category}`);
      }
    }
}

main().catch((err) => {
console.error("The sample encountered an error:", err);
});

Выход

PII recognition sample
Redacted text: "My phone number is ************"
PII entities:
        - "555-555-5555" of type PhoneNumber

документация Reference | More samples | Package (PyPi) | Library source code

Используйте это краткое руководство для создания приложения обнаружения личных сведений (PII) с клиентской библиотекой для Python. В следующем примере вы создадите приложение Python, которое может определять конфиденциальные данные recognized конфиденциальной информации в тексте.

Необходимые условия

Настройка

Создание ресурса Azure

Чтобы использовать приведенный ниже пример кода, необходимо развернуть ресурс Azure. Этот ресурс будет содержать ключ и конечную точку, используемую для проверки подлинности вызовов API, которые вы отправляете на язык Azure.

  1. Используйте следующую ссылку, чтобы создать языковой ресурс с помощью портала Azure. Вам нужно войти с помощью подписки Azure.

  2. На появившемся экране выбора дополнительных функций нажмите кнопку "Продолжить", чтобы создать ресурс.

    A снимок экрана с дополнительными параметрами функций на портале Azure.

  3. На экране "Создание языка " укажите следующие сведения:

    Детали Описание
    Подписки Учетная запись подписки, с которым будет связан ваш ресурс. Выберите подписку Azure в раскрывающемся меню.
    Группа ресурсов Группа ресурсов — это контейнер, в который хранятся создаваемые ресурсы. Нажмите кнопку "Создать" , чтобы создать новую группу ресурсов.
    Регионе Расположение ресурса языка. Различные регионы могут привести к задержке в зависимости от физического расположения, но не влияют на доступность ресурса во время выполнения. В этом кратком руководстве выберите доступный регион рядом с вами или выберите восточную часть США.
    Имя Имя ресурса языка. Это имя также будет использоваться для создания URL-адреса конечной точки, который приложения будут использовать для отправки запросов API.
    Ценовая категория Ценовая категория для ресурса языка. Вы можете использовать уровень "Бесплатный F0 ", чтобы попробовать службу и обновить ее позже до платного уровня для рабочей среды.

    A снимок экрана: сведения о создании ресурсов на портале Azure.

  4. Убедитесь, что установлен флажок "Уведомление об ответственном ИИ ".

  5. Выберите "Рецензирование и создание " в нижней части страницы.

  6. На появившемся экране убедитесь, что проверка прошла, и правильно ввели данные. Затем нажмите кнопку "Создать".

Получение ключа и конечной точки

Затем вам потребуется ключ и конечная точка из ресурса для подключения приложения к API. Вы вставьте ключ и конечную точку в код позже в кратком руководстве.

  1. После успешного развертывания ресурсов языка Azure нажмите кнопку Go to Resource в разделе Next Steps.

    Снимок экрана: следующие шаги после развертывания ресурса.

  2. На экране ресурса выберите ключи и конечную точку на левой панели. Вы будете использовать один из ключей и конечной точки в следующих шагах.

    Снимок экрана: раздел

Создание переменных среды

Приложение должно пройти проверку подлинности для отправки запросов API. Для рабочей среды используйте безопасный способ хранения и доступа к учетным данным. В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.

Чтобы задать переменную среды для ключа ресурса языка, откройте окно консоли и следуйте инструкциям в вашей операционной системе и среде разработки.

  • Чтобы задать LANGUAGE_KEY переменную среды, замените your-key одним из ключей ресурса.
  • Чтобы задать переменную среды, замените your-endpoint конечной LANGUAGE_ENDPOINT точкой ресурса.

Важно

Мы рекомендуем Microsoft Entra ID проверку подлинности с помощью управляемых удостоверений для ресурсов Azure, чтобы избежать хранения учетных данных в приложениях, работающих в облаке.

Используйте ключи API с осторожностью. Не включайте ключ API непосредственно в код и никогда не публикуйте его. При использовании ключей API безопасно храните их в Azure Key Vault, регулярно поворачивайте ключи и ограничивайте доступ к Azure Key Vault с помощью управления доступом на основе ролей и ограничений доступа к сети. Дополнительные сведения об использовании ключей API в приложениях см. в разделе API с ключами Azure Key Vault.

Дополнительные сведения о безопасности служб ИИ см. в разделе Authenticate запросов на Azure AI services.

setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Примечание

Если вам нужно получить доступ только к переменным среды в текущей работающей консоли, можно задать переменную set среды вместо setx.

После добавления переменных среды может потребоваться перезапустить все запущенные программы, которые потребуются для чтения переменных среды, включая окно консоли. Например, если вы используете Visual Studio в качестве редактора, перезапустите Visual Studio перед выполнением примера.

Установка клиентской библиотеки

После установки Python можно установить клиентская библиотека с помощью следующих компонентов:

pip install azure-ai-textanalytics==5.2.0

Пример кода

Создайте файл Python и скопируйте приведенный ниже код. Затем запустите код.

import os

from azure.ai.textanalytics import TextAnalyticsClient
from azure.core.credentials import AzureKeyCredential

# This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
language_key = os.environ.get("LANGUAGE_KEY")
language_endpoint = os.environ.get("LANGUAGE_ENDPOINT")

if not language_key or not language_endpoint:
        raise ValueError("Missing LANGUAGE_KEY or LANGUAGE_ENDPOINT environment variables")

# Authenticate the client using your key and endpoint 
def authenticate_client():
    ta_credential = AzureKeyCredential(language_key)
    text_analytics_client = TextAnalyticsClient(
            endpoint=language_endpoint, 
            credential=ta_credential)
    return text_analytics_client

client = authenticate_client()

# Example method for detecting sensitive information (PII) from text 
def pii_recognition_example(client):
    documents = [
        "The employee's SSN is 859-98-0987.",
        "The employee's phone number is 555-555-5555."
    ]
    response = client.recognize_pii_entities(documents, language="en")
    result = [doc for doc in response if not doc.is_error]
    for doc in result:
        print("Redacted Text: {}".format(doc.redacted_text))
        for entity in doc.entities:
            print("Entity: {}".format(entity.text))
            print("\tCategory: {}".format(entity.category))
            print("\tConfidence Score: {}".format(entity.confidence_score))
            print("\tOffset: {}".format(entity.offset))
            print("\tLength: {}".format(entity.length))
pii_recognition_example(client)

Выход

Redacted Text: The ********'s SSN is ***********.
Entity: employee
        Category: PersonType
        Confidence Score: 0.97
        Offset: 4
        Length: 8
Entity: 859-98-0987
        Category: USSocialSecurityNumber
        Confidence Score: 0.65
        Offset: 22
        Length: 11
Redacted Text: The ********'s phone number is ************.
Entity: employee
        Category: PersonType
        Confidence Score: 0.96
        Offset: 4
        Length: 8
Entity: 555-555-5555
        Category: PhoneNumber
        Confidence Score: 0.8
        Offset: 31
        Length: 12

Справочная документация

Используйте это краткое руководство для отправки запросов на обнаружение персональных данных (PII) с помощью REST API. В следующем примере используется cURL для идентификации распознанной конфиденциальной информации в тексте.

Необходимые условия

Настройка

Создание ресурса Azure

Чтобы использовать приведенный ниже пример кода, необходимо развернуть ресурс Azure. Этот ресурс будет содержать ключ и конечную точку, используемую для проверки подлинности вызовов API, которые вы отправляете на язык Azure.

  1. Используйте следующую ссылку, чтобы создать языковой ресурс с помощью портала Azure. Вам нужно войти с помощью подписки Azure.

  2. На появившемся экране выбора дополнительных функций нажмите кнопку "Продолжить", чтобы создать ресурс.

    A снимок экрана с дополнительными параметрами функций на портале Azure.

  3. На экране "Создание языка " укажите следующие сведения:

    Детали Описание
    Подписки Учетная запись подписки, с которым будет связан ваш ресурс. Выберите подписку Azure в раскрывающемся меню.
    Группа ресурсов Группа ресурсов — это контейнер, в который хранятся создаваемые ресурсы. Нажмите кнопку "Создать" , чтобы создать новую группу ресурсов.
    Регионе Расположение ресурса языка. Различные регионы могут привести к задержке в зависимости от физического расположения, но не влияют на доступность ресурса во время выполнения. В этом кратком руководстве выберите доступный регион рядом с вами или выберите восточную часть США.
    Имя Имя ресурса языка. Это имя также будет использоваться для создания URL-адреса конечной точки, который приложения будут использовать для отправки запросов API.
    Ценовая категория Ценовая категория для ресурса языка. Вы можете использовать уровень "Бесплатный F0 ", чтобы попробовать службу и обновить ее позже до платного уровня для рабочей среды.

    A снимок экрана: сведения о создании ресурсов на портале Azure.

  4. Убедитесь, что установлен флажок "Уведомление об ответственном ИИ ".

  5. Выберите "Рецензирование и создание " в нижней части страницы.

  6. На появившемся экране убедитесь, что проверка прошла, и правильно ввели данные. Затем нажмите кнопку "Создать".

Получение ключа и конечной точки

Затем вам потребуется ключ и конечная точка из ресурса для подключения приложения к API. Вы вставьте ключ и конечную точку в код позже в кратком руководстве.

  1. После успешного развертывания ресурсов языка Azure нажмите кнопку Go to Resource в разделе Next Steps.

    Снимок экрана: следующие шаги после развертывания ресурса.

  2. На экране ресурса выберите ключи и конечную точку на левой панели. Вы будете использовать один из ключей и конечной точки в следующих шагах.

    Снимок экрана: раздел

Создание переменных среды

Приложение должно пройти проверку подлинности для отправки запросов API. Для рабочей среды используйте безопасный способ хранения и доступа к учетным данным. В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.

Чтобы задать переменную среды для ключа ресурса языка, откройте окно консоли и следуйте инструкциям в вашей операционной системе и среде разработки.

  • Чтобы задать LANGUAGE_KEY переменную среды, замените your-key одним из ключей ресурса.
  • Чтобы задать переменную среды, замените your-endpoint конечной LANGUAGE_ENDPOINT точкой ресурса.

Важно

Мы рекомендуем Microsoft Entra ID проверку подлинности с помощью управляемых удостоверений для ресурсов Azure, чтобы избежать хранения учетных данных в приложениях, работающих в облаке.

Используйте ключи API с осторожностью. Не включайте ключ API непосредственно в код и никогда не публикуйте его. При использовании ключей API безопасно храните их в Azure Key Vault, регулярно поворачивайте ключи и ограничивайте доступ к Azure Key Vault с помощью управления доступом на основе ролей и ограничений доступа к сети. Дополнительные сведения об использовании ключей API в приложениях см. в разделе API с ключами Azure Key Vault.

Дополнительные сведения о безопасности служб ИИ см. в разделе Authenticate запросов на Azure AI services.

setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Примечание

Если вам нужно получить доступ только к переменным среды в текущей работающей консоли, можно задать переменную set среды вместо setx.

После добавления переменных среды может потребоваться перезапустить все запущенные программы, которые потребуются для чтения переменных среды, включая окно консоли. Например, если вы используете Visual Studio в качестве редактора, перезапустите Visual Studio перед выполнением примера.

Создание JSON-файла с примером текста запроса

В редакторе кода создайте файл с именем test_pii_payload.json и скопируйте следующий пример JSON. Этот пример запроса будет отправлен в API на следующем шаге.

{
    "kind": "PiiEntityRecognition",
    "parameters": {
        "modelVersion": "latest"
    },
    "analysisInput":{
        "documents":[
            {
                "id":"1",
                "language": "en",
                "text": "Call our office at 312-555-1234, or send an email to support@contoso.com"
            }
        ]
    }
}

Сохраните test_pii_payload.json место на компьютере. Например, рабочий стол.

Отправка запроса API обнаружения персональных данных (PII)

Используйте следующие команды, чтобы отправить запрос API с помощью используемой программы. Скопируйте команду в терминал и запустите ее.

Параметр Описание
-X POST <endpoint> Указывает конечную точку для доступа к API.
-H Content-Type: application/json Тип контента для отправки данных JSON.
-H "Ocp-Apim-Subscription-Key: <key>" Указывает ключ для доступа к API.
-d <documents> JSON, содержащий документы, которые нужно отправить.

Замените C:\Users\<myaccount>\Desktop\test_pii_payload.json расположением примера файла запроса JSON, созданного на предыдущем шаге.

Командная строка

curl -X POST "%LANGUAGE_ENDPOINT%/language/:analyze-text?api-version=2022-05-01" ^
-H "Content-Type: application/json" ^
-H "Ocp-Apim-Subscription-Key: %LANGUAGE_KEY%" ^
-d "@C:\Users\<myaccount>\Desktop\test_pii_payload.json"

Powershell

curl.exe -X POST $env:LANGUAGE_ENDPOINT/language/:analyze-text?api-version=2022-05-01 `
-H "Content-Type: application/json" `
-H "Ocp-Apim-Subscription-Key: $env:LANGUAGE_KEY" `
-d "@C:\Users\<myaccount>\Desktop\test_pii_payload.json"

Ответ JSON

{
	"kind": "PiiEntityRecognitionResults",
	"results": {
		"documents": [{
			"redactedText": "Call our office at ************, or send an email to *******************",
			"id": "1",
			"entities": [{
				"text": "312-555-1234",
				"category": "PhoneNumber",
				"offset": 19,
				"length": 12,
				"confidenceScore": 0.8
			}, {
				"text": "support@contoso.com",
				"category": "Email",
				"offset": 53,
				"length": 19,
				"confidenceScore": 0.8
			}],
			"warnings": []
		}],
		"errors": [],
		"modelVersion": "2021-01-15"
	}
}

Необходимые условия

Совет

  • Если у вас уже есть Azure язык в средстве Foundry или ресурс с несколькими службами ( независимо от того, используется ли он самостоятельно или через Language Studio), вы можете продолжать использовать эти существующие языковые ресурсы на портале Foundry Microsoft.
  • Дополнительные сведения см. в разделе Connect services на портале Microsoft Foundry.
  • Рекомендуется использовать ресурс Foundry для оптимального взаимодействия. Вы также можете следовать этим инструкциям с помощью ресурса языка.

Примечание

Это содержимое относится к порталу Foundry (новый), который поддерживает только проекты Foundry и обеспечивает упрощенный доступ к моделям, агентам и средствам. Чтобы убедиться, что вы используете Foundry (новое), убедитесь, что версия в баннере портала находится в позиции.

Вы можете использовать Foundry (новое) для:

  • Извлечение личных данных (PII) из текста
  • Настройка политик редактирования и исключенных значений
  • Проверка обнаруженных сущностей и оценки достоверности

Активный проект отображается в левом верхнем углу. Чтобы создать проект, выполните приведенные действия.

  1. Откройте раскрывающееся меню проекта.

  2. Введите имя проекта или выберите существующую.

  3. Выберите "Создать проект".

    Снимок экрана: домашняя страница Foundry (новая)

Существует два способа доступа к интерфейсу личных сведений (PII):

  1. Выберите вкладку "Обнаружение " на панели навигации в правом верхнем углу, чтобы перейти на страницу "Модели ".

    • В строке поиска в разделе моделей введите Azure и нажмите клавишу ВВОД.
    • Затем выберите Azure-Language-Text-PII redaction из результатов поиска.
    • Наконец, нажмите кнопку "Открыть на детской площадке ".
  2. Выберите вкладку "Сборка " в правом верхнем углу панели навигации.

    • В левой панели навигации выберите "Модели".
    • Перейдите на вкладку служб ИИ .
    • Затем выберите Azure-Language-Text-PII redaction, чтобы перейти на площадку.

Извлечение PII из текста

Модель Azure-Language-Text-PII redaction используется для идентификации и редактирования личных сведений в тексте. Интерфейс предоставляет параметры конфигурации для настройки параметров обнаружения и изменения, а также подробные выходные данные для проверки обнаруженных сущностей и их оценки достоверности.

  1. На вкладке Playground в раскрывающемся меню выберите Azure язык — текстовое редактирование piI.

  2. Выделите пример текста, используйте значок с помощью слипа для отправки текста или введите собственный текст.

  3. На боковой панели "Настройка" можно задать следующие параметры:

    Параметр Описание
    Версия API Выберите версию API, которую вы предпочитаете использовать.
    Версия модели Выберите версию модели, которую вы предпочитаете использовать.
    Язык Выберите язык, на котором написан исходный текст.
    Выбор типов для включения Выберите типы piI, которые нужно изменить.
    Значение для исключения Укажите значения, которые необходимо исключить из обнаружения. Например, если вы хотите изменить адреса электронной почты, но хотите исключить их из определенного домена, можно ввести этот домен в качестве исключенного значения.
    Синонимы Укажите альтернативные имена для определенных типов сущностей. Например, если ввести "Microsoft" в качестве исключенного значения, можно также указать определенные синонимы, такие как MSFT и Microsoft Corporation.
    Тип политики Выберите тип политики редактирования для применения (маска символов, маска сущности или без маски).
  4. После выбора нажмите кнопку "Обнаружить ". Обнаруженные сущности выделены в тексте, и вы можете просмотреть сопровождающие сведения в формате текста или в виде ответа JSON.

    Снимок экрана: выходные данные обнаружения текста piI на детской площадке Foundry.

    Поле Описание
    Тип Обнаруженный тип.
    Уверенность Уровень достоверности модели относительно правильности определения типа сущности.
    Смещение Число символов, обнаруженных сущностью с начала текста.
    Длина Длина символа сущности.

Убедитесь, что обнаруженные сущности соответствуют пин-данным в входном тексте. Вы можете использовать кнопку "Изменить ", чтобы изменить параметры настройки и повторно запустить обнаружение по мере необходимости.

Извлечение личных данных из бесед 🆕

Функция извлечения piI из бесед обнаруживает и маскирует личную идентификацию информации в тексте беседы. Эта функция предназначена для обработки уникальной структуры и контекста бесед, таких как диалоги или журналы чата.

  1. На вкладке Playground выберите Azure язык — редактирование личных сведений в раскрывающемся меню.

  2. Выберите пример расшифровки, используйте значок скрепки для отправки расшифровки или ввода текста беседы.

  3. Отформатируйте беседу с каждым включением новой строки и включите метки говорящего, если это возможно. Если идентификатор участника, двоеточие, сообщение или новая строка не используются последовательно, выходные данные могут быть непредвиденными. Ниже приведен пример хорошо отформатированного текста беседы:

    Speaker 1: Hello, how are you?
    Speaker 2: I'm good, thank you! How about you?
    Speaker 1: I'm doing well, thanks for asking.
    
  4. На боковой панели "Настройка" задайте предпочитаемые параметры для версии API, версии модели, языка, типов, политики редактирования и исключенных значений.

    Параметр Описание
    Версия API Выберите версию API, которую вы предпочитаете использовать.
    Версия модели Выберите версию модели, которую вы предпочитаете использовать.
    Язык Выберите язык, на котором написан исходный текст.
    Выбор типов для включения Выберите типы piI, которые нужно изменить.
    Указание символа редакта Выберите символ, используемый для маскирования конфиденциального текста.
  5. После выбора нажмите кнопку "Обнаружить ". Обнаруженные сущности выделены в тексте, и вы можете просмотреть сопровождающие сведения в формате текста или в виде ответа JSON.

    Снимок экрана: выходные данные обнаружения бесед piI на игровой площадке Foundry.

    Поле Описание
    Тип Обнаруженный тип.
    Уверенность Уровень достоверности модели относительно правильности определения типа сущности.
    Смещение Число символов, обнаруженных сущностью с начала текста.
    Длина Длина символа сущности.

Убедитесь, что обнаруженные сущности соответствуют piI в входной беседе. Вы можете использовать кнопку "Изменить ", чтобы изменить параметры настройки и повторно запустить обнаружение по мере необходимости.

Устранение неполадок

Проблема Разрешение
При вызове 401 API возникает ошибка или 403 ошибка. Убедитесь, что ключ и конечная точка верны для того же ресурса Azure ИИ. Если вы недавно изменили назначения ролей, подождите несколько минут и повторите попытку.
Вы получаете ошибку об отсутствующих переменных среды. Перед запуском примера убедитесь LANGUAGE_KEY и LANGUAGE_ENDPOINT задайте их в среде.
Интерфейс Foundry не соответствует шагам. На портале Foundry используйте переключатель версии для переключения между Foundry (классической) и Foundry (новая), а затем перейдите на вкладку сопоставления в разделе Foundry.
В тексте не обнаружены сущности. Убедитесь, что входной текст содержит распознаваемые шаблоны PII (имена, адреса, номера телефонов). Убедитесь, что фильтр типов содержит ожидаемые категории сущностей.
API возвращает ошибку InvalidLanguage . Убедитесь, что код языка в запросе соответствует одному из поддерживаемых языков.

Очистка ресурсов

Если вам больше не нужны ресурсы, созданные в этом кратком руководстве, удалите отдельный ресурс или всю группу ресурсов. При удалении группы ресурсов также удаляются все другие ресурсы, связанные с ним.