Biblioteca de cliente de Análise de Texto do Azure para JavaScript – versão 1.1.0

O Serviço Cognitivo do Azure para Linguagem é um serviço baseado na cloud que fornece processamento avançado de linguagem natural em texto não processado e inclui as seguintes funcionalidades principais:

Nota: Este SDK destina-se ao Serviço Cognitivo do Azure para a versão 2023-04-01 da API de Idioma.

  • Deteção de Idioma
  • Análise de Sentimentos
  • Extração de Expressões-Chave
  • Reconhecimento de Entidades Nomeadas
  • Reconhecimento de Informações Pessoais
  • Ligar à Entidade
  • Análise de Cuidados de Saúde
  • Resumo Extrativo
  • Resumo Abstrativo
  • Reconhecimento de Entidades Personalizadas
  • Classificação personalizada de documentos
  • Suportar Múltiplas Ações Por Documento

Utilize a biblioteca de cliente para:

  • Detetar em que texto de entrada de idioma está escrito.
  • Determine o que os clientes pensam da sua marca ou tópico ao analisar texto não processado para obter pistas sobre sentimentos positivos ou negativos.
  • Extraia expressões-chave automaticamente para identificar rapidamente os pontos principais.
  • Identifique e categorize entidades no seu texto como pessoas, locais, organizações, data/hora, quantidades, percentagens, moedas, cuidados de saúde específicos e muito mais.
  • Efetue várias das tarefas acima ao mesmo tempo.

Ligações principais:

Migrar do @azure/ai-text-analytics aconselhamento⚠️

Consulte o Guia de Migração para obter instruções detalhadas sobre como atualizar o código da aplicação a partir da versão 5.x da biblioteca de cliente de IA Análise de Texto para a nova biblioteca de cliente de Texto da Linguagem de IA.

Novidades

Introdução

Ambientes atualmente suportados

Veja a nossa política de suporte para obter mais detalhes.

Pré-requisitos

Se utilizar a CLI do Azure, substitua <your-resource-group-name> e <your-resource-name> pelos seus próprios nomes exclusivos:

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

Instalar o pacote @azure/ai-language-text

Instale a biblioteca de cliente da Análise de Texto do Azure para JavaScript com npm:

npm install @azure/ai-language-text

Criar e autenticar um TextAnalysisClient

Para criar um objeto de cliente para aceder à API de Idioma, precisará do endpoint recurso Idioma e de um credential. O cliente de Análise de Texto pode utilizar credenciais do Azure Active Directory ou uma credencial de chave de API para autenticar.

Pode encontrar o ponto final do recurso de Idioma no Portal do Azure ou com o fragmento da CLI do Azure abaixo:

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

Utilizar uma Chave de API

Utilize o Portal do Azure para navegar para o recurso de Idioma e obter uma chave de API ou utilize o fragmento da CLI do Azure abaixo:

Nota: Por vezes, a chave de API é referida como uma "chave de subscrição" ou "chave de API de subscrição".

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

Assim que tiver uma chave de API e um ponto final, pode utilizar a AzureKeyCredential classe para autenticar o cliente da seguinte forma:

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

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

Utilizar uma Credencial do Azure Active Directory

A autenticação da chave de API de cliente é utilizada na maioria dos exemplos, mas também pode autenticar com o Azure Active Directory com a biblioteca de Identidade do Azure. Para utilizar o fornecedor DefaultAzureCredential mostrado abaixo ou outros fornecedores de credenciais fornecidos com o SDK do Azure, instale o @azure/identity pacote:

npm install @azure/identity

Também terá de registar uma nova aplicação do AAD e conceder acesso ao Idioma ao atribuir a "Cognitive Services User" função ao principal de serviço (nota: outras funções como "Owner" não concederão as permissões necessárias, apenas "Cognitive Services User" serão suficientes para executar os exemplos e o código de exemplo).

Defina os valores do ID de cliente, do ID do inquilino e do segredo do cliente da aplicação do AAD como variáveis de ambiente: AZURE_CLIENT_ID, , AZURE_TENANT_IDAZURE_CLIENT_SECRET.

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

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

Conceitos-chave

TextAnalysisClient

TextAnalysisClient é a interface principal para programadores que utilizam a biblioteca de cliente análise de texto. Explore os métodos neste objeto de cliente para compreender as diferentes funcionalidades do serviço Idioma a que pode aceder.

Entrada

Um documento representa uma única unidade de entrada a ser analisada pelos modelos preditivos no serviço Idioma. As operações no TextAnalysisClient assumem uma coleção de entradas a serem analisadas como um lote. Os métodos de operação têm sobrecargas que permitem que as entradas sejam representadas como cadeias ou como objetos com metadados anexados.

Por exemplo, cada documento pode ser transmitido como uma cadeia numa matriz, por exemplo,

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

ou, se quiser transmitir um documento id por item ou languagecountryHint/, estes podem ser fornecidos como uma lista ou TextDocumentInputDetectLanguageInput dependendo da operação;

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!" },
];

Veja limitações de serviço para a entrada, incluindo limites de comprimento do documento, tamanho máximo do lote e codificações de texto suportadas.

Devolver Valor

O valor devolvido correspondente a um único documento é um resultado bem-sucedido ou um objeto de erro. Cada TextAnalysisClient método devolve uma matriz heterogénea de resultados e erros que correspondem às entradas por índice. Uma entrada de texto e o respetivo resultado terão o mesmo índice nas coleções de entrada e de resultados.

Um resultado, como SentimentAnalysisResult, é o resultado de uma operação de Idioma, que contém uma predição ou predições sobre uma única entrada de texto. O tipo de resultado de uma operação também pode incluir, opcionalmente, informações sobre o documento de entrada e como foi processado.

O objeto de erro , TextAnalysisErrorResult, indica que o serviço encontrou um erro ao processar o documento e contém informações sobre o erro.

Processamento de Erros do Documento

Na coleção devolvida por uma operação, os erros distinguem-se das respostas com êxito pela presença da error propriedade, que contém o objeto interno TextAnalysisError se for encontrado um erro. Para objetos de resultado bem-sucedidos, esta propriedade é sempreundefined.

Por exemplo, para filtrar todos os erros, pode utilizar o seguinte filter:

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

Nota: os utilizadores do TypeScript podem beneficiar de uma melhor verificação de tipos de objetos de resultado e erro se compilerOptions.strictNullChecks estiverem definidos como true na tsconfig.json configuração. Por exemplo:

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);
}

Amostras

Utilização do Cliente

Tarefas Pré-criadas

Tarefas Personalizadas

Resolução de problemas

Registo

Ativar o registo pode ajudar a descobrir informações úteis sobre falhas. Para ver um registo de pedidos e respostas HTTP, defina a variável de AZURE_LOG_LEVEL ambiente como info. Em alternativa, o registo pode ser ativado no runtime ao chamar setLogLevel no @azure/logger:

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

setLogLevel("info");

Para obter instruções mais detalhadas sobre como ativar os registos, pode ver os documentos do pacote @azure/logger.

Passos seguintes

Veja o diretório de exemplos para obter exemplos detalhados sobre como utilizar esta biblioteca.

Contribuir

Se quiser contribuir para esta biblioteca, leia o guia de contribuição para saber mais sobre como criar e testar o código.

Impressões