Libreria client di Analisi del testo di Azure per JavaScript - versione 1.1.0
Servizio cognitivo di Azure per linguaggio è un servizio basato sul cloud che fornisce l'elaborazione avanzata del linguaggio naturale sul testo non elaborato e include le funzionalità principali seguenti:
Nota: Questo SDK è destinato al servizio cognitivo di Azure per l'API del linguaggio versione 2023-04-01.
- Rilevamento lingua
- Analisi del sentiment
- Estrazione frasi chiave
- Riconoscimento di entità denominate
- Riconoscimento delle informazioni personali
- Collegamento delle entità
- Analisi sanitaria
- Riepilogo estratto
- Riepilogo astrazione
- Riconoscimento di entità personalizzato
- Classificazione documenti personalizzata
- Supportare più azioni per documento
Usare la libreria client per:
- Rilevare il testo di input della lingua in cui è scritto.
- Determinare quali clienti pensano al marchio o all'argomento analizzando il testo non elaborato per indizi sul sentiment positivo o negativo.
- Estrae automaticamente frasi chiave per identificare rapidamente i punti principali.
- Identificare e classificare le entità nel testo come persone, luoghi, organizzazioni, data/ora, quantità, percentuali, valute, specifiche dell'assistenza sanitaria e altro ancora.
- Eseguire più attività precedenti contemporaneamente.
Collegamenti principali:
- Codice sorgente
- Pacchetto (NPM)
- Documentazione di riferimento delle API
- Documentazione del prodotto
- Esempi
Migrazione da @azure/ai-text-analytics advisory⚠️
Vedere la Guida alla migrazione per istruzioni dettagliate su come aggiornare il codice dell'applicazione dalla versione 5.x della libreria client di intelligenza artificiale Analisi del testo alla nuova libreria client del linguaggio di intelligenza artificiale.
Novità
Introduzione
Ambienti attualmente supportati
- Versioni LTS di Node.js
- Ultime versioni di Safari, Chrome, Edge e Firefox.
Per altre informazioni, vedere i criteri di supporto.
Prerequisiti
- Una sottoscrizione di Azure.
- Risorsa servizi cognitivi o lingua esistenti. Se è necessario creare la risorsa, è possibile usare il portale di Azure o l'interfaccia della riga di comando di Azure seguendo la procedura descritta in questo documento.
Se si usa l'interfaccia della riga di comando di Azure, sostituire <your-resource-group-name>
e <your-resource-name>
con i propri nomi univoci:
az cognitiveservices account create --kind TextAnalytics --resource-group <your-resource-group-name> --name <your-resource-name> --sku <your-sku-name> --location <your-location>
Installare il pacchetto @azure/ai-language-text
Installare la libreria client di Analisi del testo di Azure per JavaScript con npm
:
npm install @azure/ai-language-text
Creare e autenticare un oggetto TextAnalysisClient
Per creare un oggetto client per accedere all'API Language, sarà necessario disporre della endpoint
risorsa language e di un credential
oggetto . Il client analisi del testo può usare le credenziali di Azure Active Directory o una credenziale chiave API per l'autenticazione.
È possibile trovare l'endpoint per la risorsa language nel portale di Azure o usando il frammento di interfaccia della riga di comando di Azure seguente:
az cognitiveservices account show --name <your-resource-name> --resource-group <your-resource-group-name> --query "properties.endpoint"
Uso di una chiave API
Usare il portale di Azure per passare alla risorsa lingua e recuperare una chiave API oppure usare il frammento di interfaccia della riga di comando di Azure seguente:
Nota: A volte la chiave API viene definita "chiave di sottoscrizione" o "chiave API di sottoscrizione".
az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>
Dopo avere una chiave API e un endpoint, è possibile usare la classe per autenticare il AzureKeyCredential
client come indicato di seguito:
const { TextAnalysisClient, AzureKeyCredential } = require("@azure/ai-language-text");
const client = new TextAnalysisClient("<endpoint>", new AzureKeyCredential("<API key>"));
Uso di credenziali di Azure Active Directory
L'autenticazione della chiave API client viene usata nella maggior parte degli esempi, ma è anche possibile eseguire l'autenticazione con Azure Active Directory usando la libreria di identità di Azure. Per usare il provider DefaultAzureCredential illustrato di seguito o altri provider di credenziali forniti con Azure SDK, installare il @azure/identity
pacchetto:
npm install @azure/identity
Sarà anche necessario registrare una nuova applicazione AAD e concedere l'accesso a Language assegnando il "Cognitive Services User"
ruolo all'entità servizio (nota: altri ruoli come "Owner"
non concederanno le autorizzazioni necessarie, sarà sufficiente eseguire solo "Cognitive Services User"
gli esempi e il codice di esempio).
Impostare i valori dell'ID client, dell'ID tenant e del segreto client dell'applicazione AAD come variabili di 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());
Concetti chiave
TextAnalysisClient
TextAnalysisClient
è l'interfaccia primaria per gli sviluppatori che usano la libreria client analisi del testo. Esplorare i metodi in questo oggetto client per comprendere le diverse funzionalità del servizio Language a cui è possibile accedere.
Input
Un documento rappresenta una singola unità di input da analizzare dai modelli predittivi nel servizio lingua. Operazioni su TextAnalysisClient
come eseguire una raccolta di input da analizzare come batch. I metodi di operazione hanno overload che consentono agli input di essere rappresentati come stringhe o come oggetti con metadati collegati.
Ad esempio, ogni documento può essere passato come stringa in una matrice, ad esempio.
const documents = [
"I hated the movie. It was so slow!",
"The movie made it into my top ten favorites.",
"What a great movie!",
];
oppure, se si vuole passare un documento id
per elemento o language
countryHint
/, può essere fornito come elenco di o DetectLanguageInput
a seconda dell'operazione;TextDocumentInput
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!" },
];
Vedere limitazioni del servizio per l'input, inclusi i limiti di lunghezza del documento, le dimensioni massime del batch e le codifiche di testo supportate.
Valore restituito
Il valore restituito corrispondente a un singolo documento è un risultato positivo o un oggetto errore. Ogni TextAnalysisClient
metodo restituisce una matrice eterogenea di risultati ed errori che corrispondono agli input per indice. Un input di testo e il relativo risultato avranno lo stesso indice nelle raccolte di input e risultato.
Un risultato, ad esempio SentimentAnalysisResult
, è il risultato di un'operazione language contenente una stima o stime su un singolo input di testo. Il tipo di risultato di un'operazione può anche includere facoltativamente informazioni sul documento di input e su come è stato elaborato.
L'oggetto error , , TextAnalysisErrorResult
indica che il servizio ha rilevato un errore durante l'elaborazione del documento e contiene informazioni sull'errore.
Gestione degli errori del documento
Nella raccolta restituita da un'operazione gli errori vengono distinti dalle risposte riuscite in base alla presenza della error
proprietà, che contiene l'oggetto interno TextAnalysisError
se si è verificato un errore. Per gli oggetti risultato riusciti, questa proprietà è sempreundefined
.
Ad esempio, per filtrare tutti gli errori, è possibile usare quanto segue filter
:
const results = await client.analyze("SentimentAnalysis", documents);
const onlySuccessful = results.filter((result) => result.error === undefined);
Nota: gli utenti di TypeScript possono trarre vantaggio da una migliore verifica dei tipi di oggetti risultato e errore se compilerOptions.strictNullChecks
è impostato su true
nella tsconfig.json
configurazione. Ad esempio:
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);
}
Esempi
Utilizzo client
Attività predefinite
- Riepilogo astrazione
- Rilevamento lingua
- Collegamento delle entità
- Entità Regconition
- Riepilogo estratto
- Analisi sanitaria
- Estrazione frasi chiave
- Rilevamento lingua
- Opinion mining
- Riconoscimento delle entità PII
- Analisi del sentiment
Attività personalizzate
- Riconoscimento di entità personalizzato
- Classfication single-lable personalizzato
- Classe multi-lable personalizzata
Risoluzione dei problemi
Registrazione
L'abilitazione della registrazione consente di individuare informazioni utili sugli errori. Per visualizzare un log di richieste e risposte HTTP, impostare la variabile di ambiente AZURE_LOG_LEVEL
su info
. In alternativa, la registrazione può essere abilitata in fase di esecuzione chiamando setLogLevel
in @azure/logger
:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Per istruzioni più dettagliate su come abilitare i log, è possibile esaminare la documentazione del pacchetto @azure/logger.
Passaggi successivi
Per esempi dettagliati su come usare questa libreria, vedere la directory degli esempi .
Contributo
Per contribuire a questa libreria, leggere la guida ai contributi per altre informazioni su come compilare e testare il codice.
Progetti correlati
Azure SDK for JavaScript