Клиентская библиотека анализа текста Azure для JavaScript версии 1.1.0

Azure Cognitive Service для языка — это облачная служба, которая обеспечивает расширенную обработку естественного языка с использованием необработанного текста и включает следующие main функции:

Примечание: Этот пакет SDK предназначен для API Языка Azure Cognitive Service версии 2023-04-01.

  • Распознавание языка
  • Анализ тональности
  • Извлечение ключевых фраз
  • Распознавание именованных сущностей
  • Распознавание личных сведений
  • Связывание сущностей
  • Анализ здравоохранения
  • Сводные данные по извлечению
  • Абстрактное сводные данные
  • Пользовательское распознавание сущностей
  • Настраиваемая классификация документов
  • Поддержка нескольких действий на документ

Используйте клиентские библиотеки, чтобы:

  • Определите, на каком языке написано текст.
  • Определите, что клиенты думают о вашей торговой марке или теме, анализируя необработанный текст на предмет положительных или отрицательных тональности.
  • Автоматическое извлечение ключевых фраз в тексте поможет быстро определить основные мысли.
  • Определите и классифицируйте сущности в тексте как люди, места, организации, дату и время, количество, проценты, валюты, особенности здравоохранения и многое другое.
  • Выполните несколько указанных выше задач одновременно.

Основные ссылки:

Переход с @azure/ai-text-analytics рекомендаций⚠️

Подробные инструкции по обновлению кода приложения с версии 5.x клиентской библиотеки Анализ текста ИИ до новой клиентской библиотеки текста языка ИИ см. в руководстве по миграции.

What's New

Начало работы

Поддерживаемые в настоящее время среды

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

Предварительные требования

Если вы используете Azure CLI, замените <your-resource-group-name> и <your-resource-name> собственными уникальными именами:

az cognitiveservices account create --kind TextAnalytics --resource-group <your-resource-group-name> --name <your-resource-name> --sku <your-sku-name> --location <your-location>

Установите пакет @azure/ai-language-text.

Установите клиентскую библиотеку анализа текста Azure для JavaScript с помощью npm:

npm install @azure/ai-language-text

Создание и проверка подлинности TextAnalysisClient

Чтобы создать клиентский объект для доступа к API языка, вам потребуется endpoint языковой ресурс и credential. Клиент анализа текста может использовать учетные данные Azure Active Directory или учетные данные ключа API для проверки подлинности.

Конечную точку для языкового ресурса можно найти на портале Azure или с помощью приведенного ниже фрагмента кода Azure CLI :

az cognitiveservices account show --name <your-resource-name> --resource-group <your-resource-group-name> --query "properties.endpoint"

Использование ключа API

Используйте портал Azure , чтобы перейти к ресурсу Language и получить ключ API, или используйте приведенный ниже фрагмент кода Azure CLI :

Примечание: Иногда ключ API называется ключом подписки или ключом API подписки.

az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>

Получив ключ API и конечную точку AzureKeyCredential , вы можете использовать класс для проверки подлинности клиента следующим образом:

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

const client = new TextAnalysisClient("<endpoint>", new AzureKeyCredential("<API key>"));

Использование учетных данных Azure Active Directory

Проверка подлинности с помощью ключа API клиента используется в большинстве примеров, но вы также можете пройти проверку подлинности в Azure Active Directory с помощью библиотеки удостоверений Azure. Чтобы использовать поставщик DefaultAzureCredential, показанный ниже, или другие поставщики учетных данных, предоставляемые вместе с пакетом AZURE SDK, установите @azure/identity пакет :

npm install @azure/identity

Вам также потребуется зарегистрировать новое приложение AAD и предоставить доступ к языку, назначив "Cognitive Services User" роль субъекту-службе (обратите внимание: другие роли, например "Owner" , не предоставляют необходимых разрешений, достаточно только "Cognitive Services User" для выполнения примеров и примера кода).

Задайте значения идентификатора клиента, идентификатора клиента и секрета клиента приложения AAD в качестве переменных среды: AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET.

const { TextAnalysisClient } = require("@azure/ai-language-text");
const { DefaultAzureCredential } = require("@azure/identity");

const client = new TextAnalysisClient("<endpoint>", new DefaultAzureCredential());

Основные понятия

TextAnalysisClient

TextAnalysisClient — это основной интерфейс для разработчиков, использующих клиентную библиотеку анализа текста. Изучите методы этого клиентского объекта, чтобы понять различные функции языковой службы, к которым можно получить доступ.

Входные данные

Документ представляет собой единую единицу входных данных для анализа прогнозными моделями в языковой службе. Операции с TextAnalysisClient принимают коллекцию входных данных для анализа в виде пакета. Методы операций имеют перегрузки, позволяющие представить входные данные в виде строк или объектов с вложенными метаданными.

Например, каждый документ может быть передан в виде строки в массиве, например.

const documents = [
  "I hated the movie. It was so slow!",
  "The movie made it into my top ten favorites.",
  "What a great movie!",
];

или, если вы хотите передать документ id для каждого элемента или languagecountryHint/, они могут быть предоставлены в виде списка TextDocumentInput или DetectLanguageInput в зависимости от операции;

const textDocumentInputs = [
  { id: "1", language: "en", text: "I hated the movie. It was so slow!" },
  { id: "2", language: "en", text: "The movie made it into my top ten favorites." },
  { id: "3", language: "en", text: "What a great movie!" },
];

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

Возвращаемое значение

Возвращаемое значение, соответствующее одному документу, является либо успешным результатом, либо объектом ошибки. Каждый TextAnalysisClient метод возвращает разнородный массив результатов и ошибок, которые соответствуют входным данным по индексу. Текстовый ввод и его результат будут иметь одинаковый индекс во входных и результирующих коллекциях.

Результатом, таким как SentimentAnalysisResult, является результатом языковой операции, содержащей прогноз или прогнозы для одного текстового ввода. Тип результата операции также может включать сведения о входном документе и способе его обработки.

Объект error , указывает, TextAnalysisErrorResultчто служба обнаружила ошибку во время обработки документа и содержит сведения об ошибке.

Обработка ошибок документа

В коллекции, возвращаемой операцией, ошибки отличаются от успешных ответов по наличию error свойства , которое содержит внутренний TextAnalysisError объект при обнаружении ошибки. Для объектов успешных результатов это свойство всегдаundefined имеет значение .

Например, чтобы отфильтровать все ошибки, можно использовать следующую команду filter:

const results = await client.analyze("SentimentAnalysis", documents);
const onlySuccessful = results.filter((result) => result.error === undefined);

Примечание. Пользователи TypeScript могут воспользоваться преимуществами более эффективной проверки типов объектов результатов и ошибок, если compilerOptions.strictNullChecks в tsconfig.json конфигурации задано значение true . Пример:

const [result] = await client.analyze("SentimentAnalysis", ["Hello world!"]);

if (result.error !== undefined) {
  // In this if block, TypeScript will be sure that the type of `result` is
  // `TextAnalysisError` if compilerOptions.strictNullChecks is enabled in
  // the tsconfig.json

  console.log(result.error);
}

Примеры

Использование клиента

Предварительно созданные задачи

Пользовательские задачи

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

Ведение журнала

Включение ведения журнала может помочь выявить полезные сведения о сбоях. Чтобы просмотреть журнал HTTP-запросов и ответов, задайте для переменной среды AZURE_LOG_LEVEL значение info. Кроме того, ведение журнала можно включить во время выполнения, вызвав setLogLevel в @azure/logger:

const { setLogLevel } = require("@azure/logger");

setLogLevel("info");

Более подробные инструкции по включению журналов см. в документации по пакету @azure и средства ведения журнала.

Дальнейшие действия

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

Участие

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

Просмотры