Biblioteca de cliente da Análise de Texto do Azure para JavaScript - versão 1.1.0
Serviço Cognitivo do Azure para de Idiomas é um serviço baseado em nuvem que fornece processamento avançado de linguagem natural sobre texto bruto e inclui os seguintes recursos principais:
Nota: Este SDK destina-se ao Serviço Cognitivo do Azure para a API de Idiomas versão 2023-04-01.
- Deteção de idioma
- Análise de Sentimento
- Extração de frases-chave
- Reconhecimento de entidade nomeada
- Reconhecimento de Informações Pessoalmente Identificáveis
- Vinculação de entidades
- Análise de cuidados de saúde
- Sumarização extrativa
- Sumarização abstrata
- Reconhecimento de entidade personalizada
- Classificação de documentos personalizados
- Suporte a várias ações por documento
Use a biblioteca de cliente para:
- Detete em que idioma o texto de entrada está escrito.
- Determine o que os clientes pensam da sua marca ou tópico analisando o texto bruto em busca de pistas sobre sentimentos positivos ou negativos.
- Extraia automaticamente frases-chave 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.
- Execute várias das tarefas acima de uma só vez.
Ligações principais:
Migrando de @azure/ai-text-analytics⚠️ de consultoria
Consulte o Guia de Migração para obter instruções detalhadas sobre como atualizar o código do aplicativo da versão 5.x da biblioteca de cliente do AI Text Analytics para a nova biblioteca do cliente AI Language Text.
O que há de novo
- de Sumarização Abstrativa
- Análise de Cuidados de Saúde
Primeiros passos
Ambientes atualmente suportados
- versões LTS do Node.js
- Versões mais recentes do Safari, Chrome, Edge e Firefox.
Consulte o nosso de política de suporte
Pré-requisitos
- Uma assinatura do Azure.
- Um de Serviços Cognitivos ou um recurso linguístico
existente. Se precisar criar o recurso, você pode usar a do Portal doAzure ou da CLI do Azure seguindo as etapas em este documento .
Se você usar a CLI do Azure, substitua <your-resource-group-name>
e <your-resource-name>
por 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 de 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 cliente para acessar a API de idioma, você precisará do endpoint
do recurso Language e de um credential
. O cliente de Análise de Texto pode usar credenciais do Azure Ative Directory ou uma credencial de chave de API para autenticar.
Você pode encontrar o ponto de extremidade para seu recurso de idioma no Portal do
az cognitiveservices account show --name <your-resource-name> --resource-group <your-resource-group-name> --query "properties.endpoint"
Usando uma chave de API
Use o Portal do
Nota: Às vezes, a chave da API é chamada de "chave de assinatura" ou "chave da API de assinatura".
az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>
Depois de ter uma chave de API e um ponto de extremidade, você pode usar a classe AzureKeyCredential
para autenticar o cliente da seguinte maneira:
const { TextAnalysisClient, AzureKeyCredential } = require("@azure/ai-language-text");
const client = new TextAnalysisClient("<endpoint>", new AzureKeyCredential("<API key>"));
Usando uma credencial do Azure Ative Directory
A autenticação de chave de API do cliente é usada na maioria dos exemplos, mas você também pode autenticar com o Azure Ative Directory usando a biblioteca de Identidade do Azure. Para usar o provedor de DefaultAzureCredential mostrado abaixo ou outros provedores de credenciais fornecidos com o SDK do Azure, instale o pacote @azure/identity
:
npm install @azure/identity
Você também precisará registrar um novo aplicativo AAD e conceder acesso ao idioma atribuindo a função "Cognitive Services User"
à sua entidade de serviço (observação: 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 do cliente, ID do locatário e segredo do cliente do aplicativo AAD como variáveis de ambiente: 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());
Conceitos-chave
TextAnalysisClient
TextAnalysisClient
é a interface principal para desenvolvedores que usam a biblioteca de cliente de Análise de Texto. Explore os métodos neste objeto de cliente para entender os diferentes recursos do serviço de idioma que você pode acessar.
Entrada
Um documento representa uma única unidade de entrada a ser analisada pelos modelos preditivos no serviço de linguagem. As operações em TextAnalysisClient
levam uma coleção de insumos para serem analisados como um lote. Os métodos de operação têm sobrecargas que permitem que as entradas sejam representadas como cadeias de caracteres ou como objetos com metadados anexados.
Por exemplo, cada documento pode ser passado como uma cadeia de caracteres em uma 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 desejar passar um documento por item id
ou language
/countryHint
, eles podem ser fornecidos como uma lista de TextDocumentInput
ou DetectLanguageInput
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!" },
];
Consulte de 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.
Valor de retorno
O valor de retorno correspondente a um único documento é um resultado bem-sucedido ou um objeto de erro. Cada método TextAnalysisClient
retorna uma matriz heterogênea de resultados e erros que correspondem às entradas por índice. Uma entrada de texto e seu resultado terão o mesmo índice nas coleções de entrada e resultado.
Um resultado , como SentimentAnalysisResult
, é o resultado de uma operação de linguagem, contendo uma previsão ou previsões sobre uma única entrada de texto. O tipo de resultado de uma operação também pode, opcionalmente, incluir informações sobre o documento de entrada e como ele foi processado.
O erro objeto, TextAnalysisErrorResult
, indica que o serviço encontrou um erro durante o processamento do documento e contém informações sobre o erro.
Tratamento de erros de documentos
Na coleção retornada por uma operação, os erros são distinguidos das respostas bem-sucedidas pela presença da propriedade error
, que contém o objeto TextAnalysisError
interno se um erro foi encontrado. Para objetos de resultado bem-sucedidos, essa propriedade é sempreundefined
.
Por exemplo, para filtrar todos os erros, você pode usar o seguinte filter
:
const results = await client.analyze("SentimentAnalysis", documents);
const onlySuccessful = results.filter((result) => result.error === undefined);
Nota: Os usuários do TypeScript podem se beneficiar de uma melhor verificação de tipo de objetos de resultado e erro se compilerOptions.strictNullChecks
estiver definido como true
na configuração tsconfig.json
. 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
- de Sumarização Abstrativa
- de Deteção de Idioma
- de vinculação de entidade
- Entidade Regconition
- Sumarização Extrativa
- Análise de Cuidados de Saúde
- Extração de frases-chave
- de Deteção de Idioma
- Opinião Mining
- de Reconhecimento de Entidades PII
- Análise de Sentimento
Tarefas personalizadas
- de Reconhecimento de Entidade Personalizada
- de Classificação Única Personalizada
- de Classificação Multilable Personalizada
Solução de problemas
Registo
Habilitar o registro em log pode ajudar a descobrir informações úteis sobre falhas. Para ver um log de solicitações e respostas HTTP, defina a variável de ambiente AZURE_LOG_LEVEL
como info
. Como alternativa, o registro em log pode ser habilitado em tempo de execução chamando setLogLevel
no @azure/logger
:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Para obter instruções mais detalhadas sobre como habilitar logs, você pode consultar os documentos do pacote @azure/logger.
Próximos passos
Por favor, dê uma olhada no exemplos diretório para obter exemplos detalhados sobre como usar esta biblioteca.
Contribuição
Se você quiser contribuir para esta biblioteca, leia o guia de contribuição para saber mais sobre como criar e testar o código.
Projetos relacionados
- SDK do Microsoft Azure para JavaScript
Azure SDK for JavaScript