Azure Text Analysis-Clientbibliothek für JavaScript– Version 1.1.0
Azure Cognitive Service for Language ist ein cloudbasierter Dienst, der eine erweiterte Verarbeitung natürlicher Sprache über Rohtext bereitstellt und die folgenden Standard Features umfasst:
Hinweis: Dieses SDK zielt auf Azure Cognitive Service für Sprach-API-Version 2023-04-01 ab.
- Spracherkennung
- Standpunktanalyse
- Schlüsselwortextraktion
- Erkennung benannter Entitäten
- Anerkennung personenbezogener Informationen
- Entitätsverknüpfung
- Analyse des Gesundheitswesens
- Extraktive Zusammenfassung
- Abstraktionszusammenfassung
- Benutzerdefinierte Entitätserkennung
- Benutzerdefinierte Dokumentklassifizierung
- Unterstützung mehrerer Aktionen pro Dokument
Verwenden Sie die Clientbibliothek für folgende Aktionen:
- Erkennen, in welcher Sprache eingabetext geschrieben ist.
- Bestimmen Sie, was Kunden von Ihrer Marke oder Ihrem Thema halten, indem Sie Rohtext auf Hinweise zu positiven oder negativen Stimmungen analysieren.
- Extrahieren Sie automatisch Schlüsselwörter, um die wichtigsten Inhalte zu ermitteln.
- Identifizieren und kategorisieren Sie Entitäten in Ihrem Text als Personen, Orte, Organisationen, Datum/Uhrzeit, Mengen, Prozentsätze, Währungen, Gesundheitswesen und vieles mehr.
- Führen Sie mehrere der oben genannten Aufgaben gleichzeitig aus.
Wichtige Links:
Migrieren von @azure/ai-text-analytics der Empfehlung⚠️
Ausführliche Anweisungen zum Aktualisieren von Anwendungscode von Version 5.x der KI-Textanalyse-Clientbibliothek auf die neue KI-Sprachtext-Clientbibliothek finden Sie im Migrationsleitfaden.
Neues
Erste Schritte
Die derzeitig unterstützten Umgebungen
- LTS-Versionen von Node.js
- Neueste Versionen von Safari, Chrome, Edge und Firefox.
Ausführlichere Informationen finden Sie in der Supportrichtlinie.
Voraussetzungen
- Ein Azure-Abonnement.
- Eine vorhandene Cognitive Services- oder Sprachressource. Wenn Sie die Ressource erstellen müssen, können Sie das Azure-Portal oder die Azure CLI verwenden, indem Sie die Schritte in diesem Dokument ausführen.
Wenn Sie die Azure CLI verwenden, ersetzen <your-resource-group-name>
Sie und <your-resource-name>
durch Ihre eigenen eindeutigen Namen:
az cognitiveservices account create --kind TextAnalytics --resource-group <your-resource-group-name> --name <your-resource-name> --sku <your-sku-name> --location <your-location>
Installieren Sie das Paket @azure/ai-language-text
.
Installieren Sie die Azure Text Analysis-Clientbibliothek für JavaScript mit npm
:
npm install @azure/ai-language-text
Erstellen und Authentifizieren eines TextAnalysisClient
Um ein Clientobjekt für den Zugriff auf die Sprach-API zu erstellen, benötigen Sie die endpoint
ihrer Sprachressource und eine credential
. Der Textanalyseclient kann entweder Azure Active Directory-Anmeldeinformationen oder API-Schlüsselanmeldeinformationen für die Authentifizierung verwenden.
Sie finden den Endpunkt für Ihre Sprachressource entweder im Azure-Portal oder mithilfe des folgenden Azure CLI-Ausschnitts :
az cognitiveservices account show --name <your-resource-name> --resource-group <your-resource-group-name> --query "properties.endpoint"
Verwenden eines API-Schlüssels
Verwenden Sie das Azure-Portal , um zu Ihrer Sprachressource zu navigieren und einen API-Schlüssel abzurufen, oder verwenden Sie den folgenden Azure CLI-Codeausschnitt :
Hinweis: Manchmal wird der API-Schlüssel als "Abonnementschlüssel" oder "Abonnement-API-Schlüssel" bezeichnet.
az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>
Sobald Sie über einen API-Schlüssel und einen Endpunkt verfügen, können Sie die AzureKeyCredential
-Klasse verwenden, um den Client wie folgt zu authentifizieren:
const { TextAnalysisClient, AzureKeyCredential } = require("@azure/ai-language-text");
const client = new TextAnalysisClient("<endpoint>", new AzureKeyCredential("<API key>"));
Verwenden von Azure Active Directory-Anmeldeinformationen
Die Client-API-Schlüsselauthentifizierung wird in den meisten Beispielen verwendet, Aber Sie können sich auch mithilfe der Azure Identity-Bibliothek bei Azure Active Directory authentifizieren. Um den unten gezeigten DefaultAzureCredential-Anbieter oder andere Anmeldeinformationsanbieter zu verwenden, die mit dem Azure SDK bereitgestellt werden, installieren Sie das @azure/identity
Paket:
npm install @azure/identity
Sie müssen auch eine neue AAD-Anwendung registrieren und Zugriff auf Sprache gewähren, indem Sie Die "Cognitive Services User"
Rolle Ihrem Dienstprinzipal zuweisen (Hinweis: Andere Rollen wie "Owner"
erteilen nicht die erforderlichen Berechtigungen, reichen nur "Cognitive Services User"
aus, um die Beispiele und den Beispielcode auszuführen).
Legen Sie die Werte der Client-ID, der Mandanten-ID und des geheimen Clientschlüssels der AAD-Anwendung als Umgebungsvariablen fest: 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());
Wichtige Begriffe
TextAnalysisClient
TextAnalysisClient
ist die primäre Schnittstelle für Entwickler, die die Textanalyse-Clientbibliothek verwenden. Erkunden Sie die Methoden für dieses Clientobjekt, um die verschiedenen Features des Sprachdiensts zu verstehen, auf den Sie zugreifen können.
Eingabe
Ein Dokument stellt eine einzelne Eingabeeinheit dar, die von den Vorhersagemodellen im Sprachdienst analysiert werden soll. Vorgänge bei TextAnalysisClient
nehmen eine Sammlung von Eingaben an, die als Batch analysiert werden sollen. Die Vorgangsmethoden verfügen über Überladungen, mit denen die Eingaben als Zeichenfolgen oder als Objekte mit angefügten Metadaten dargestellt werden können.
Beispielsweise kann jedes Dokument als Zeichenfolge in einem Array übergeben werden, z. B.
const documents = [
"I hated the movie. It was so slow!",
"The movie made it into my top ten favorites.",
"What a great movie!",
];
Oder, wenn Sie ein Dokument id
pro Element oder language
countryHint
/übergeben möchten, können sie als Liste mit TextDocumentInput
oder DetectLanguageInput
abhängig vom Vorgang angegeben werden;
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!" },
];
Weitere Informationen finden Sie unter Diensteinschränkungen für die Eingabe, z. B. Grenzwerte für die Dokumentlänge, maximale Batchgröße und unterstützte Textcodierungen.
Rückgabewert
Der Rückgabewert, der einem einzelnen Dokument entspricht, ist entweder ein erfolgreiches Ergebnis oder ein Fehlerobjekt. Jede TextAnalysisClient
Methode gibt ein heterogenes Array von Ergebnissen und Fehlern zurück, die den Eingaben nach Index entsprechen. Eine Texteingabe und ihr Ergebnis weisen denselben Index in den Eingabe- und Ergebnisauflistungen auf.
Ein Ergebnis, z SentimentAnalysisResult
. B. , ist das Ergebnis eines Sprachvorgangs, der eine Vorhersage oder Vorhersagen zu einer einzelnen Texteingabe enthält. Der Ergebnistyp eines Vorgangs kann optional auch Informationen zum Eingabedokument und zur Verarbeitung enthalten.
Das Fehlerobjekt gibt an, TextAnalysisErrorResult
dass beim Dienst bei der Verarbeitung des Dokuments ein Fehler aufgetreten ist, und enthält Informationen zum Fehler.
Dokumentfehlerbehandlung
In der Auflistung, die von einem Vorgang zurückgegeben wird, werden Fehler von erfolgreichen Antworten durch das Vorhandensein der error
-Eigenschaft unterschieden, die das innere TextAnalysisError
Objekt enthält, wenn ein Fehler aufgetreten ist. Bei erfolgreichen Ergebnisobjekten ist diese Eigenschaft immerundefined
.
Um beispielsweise alle Fehler herauszufiltern, können Sie folgendes filter
verwenden:
const results = await client.analyze("SentimentAnalysis", documents);
const onlySuccessful = results.filter((result) => result.error === undefined);
Hinweis: TypeScript-Benutzer können von einer besseren Typüberprüfung von Ergebnis- und Fehlerobjekten profitieren, wenn compilerOptions.strictNullChecks
in der tsconfig.json
Konfiguration auf true
festgelegt ist. Beispiel:
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);
}
Beispiele
Clientnutzung
- Batchverarbeitung von Aktionen
- Modellversion auswählen
- Seitenverwaltung
- Rehydrieren von Abrufvorgängen
- Abrufen von Statistiken
Vordefinierte Aufgaben
- Abstraktionszusammenfassung
- Sprachenerkennung
- Entitätsverknüpfung
- Entity Regconition
- Extraktive Zusammenfassung
- Analyse des Gesundheitswesens
- Schlüsselbegriffserkennung
- Sprachenerkennung
- Opinion Mining
- PII-Entitätserkennung
- Standpunktanalyse
Benutzerdefinierte Tasks
- Benutzerdefinierte Entitätserkennung
- Benutzerdefinierte single-lable Classfication
- Benutzerdefinierte Multi-Lable-Classfication
Problembehandlung
Protokollierung
Die Aktivierung der Protokollierung kann hilfreiche Informationen über Fehler aufdecken. Um ein Protokoll von HTTP-Anforderungen und -Antworten anzuzeigen, legen Sie die Umgebungsvariable AZURE_LOG_LEVEL
auf info
fest. Alternativ kann die Protokollierung zur Laufzeit aktiviert werden, indem Sie setLogLevel
in @azure/logger
aufrufen:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Ausführlichere Anweisungen zum Aktivieren von Protokollen finden Sie in der Paketdokumentation zu @azure/logger.
Nächste Schritte
Ausführliche Beispiele zur Verwendung dieser Bibliothek finden Sie im Beispielverzeichnis .
Mitwirken
Wenn Sie an dieser Bibliothek mitwirken möchten, lesen Sie die Anleitung für Mitwirkende, um mehr darüber zu erfahren, wie Sie den Code erstellen und testen können.
Verwandte Projekte
Azure SDK for JavaScript