Azure Text Analysis-klientbibliotek för JavaScript – version 1.1.0
Azure Cognitive Service for Language är en molnbaserad tjänst som tillhandahåller avancerad bearbetning av naturligt språk över råtext och innehåller följande huvudfunktioner:
Observera: Denna SDK riktar sig till Azure Cognitive Service för Language API-version 2023-04-01.
- Språkidentifiering
- Attitydanalys
- Extrahering av nyckelfraser
- Igenkänning av namngiven enhet
- Erkännande av personligt identifierbar information
- Entity Linking
- Hälso- och sjukvårdsanalys
- Extraheringssammanfattning
- Abstrakt sammanfattning
- Anpassad entitetsigenkänning
- Anpassad dokumentklassificering
- Stöd för flera åtgärder per dokument
Använd klientbiblioteket för att:
- Identifiera vilken språkinmatningstext som skrivs i.
- Bestäm vad kunderna tycker om ditt varumärke eller ämne genom att analysera råtext för att få ledtrådar om positiv eller negativ attityd.
- Extrahera automatiskt nyckelfraser för att snabbt identifiera huvudpoängerna.
- Identifiera och kategorisera entiteter i din text som personer, platser, organisationer, datum/tid, kvantiteter, procenttal, valutor, hälso- och sjukvårdsspecifika med mera.
- Utför flera av ovanstående uppgifter samtidigt.
Nyckellänkar:
Migrera från @azure/ai-text-analytics rådgivningen⚠️
I migreringsguiden finns detaljerade anvisningar om hur du uppdaterar programkod från version 5.x av AI-Textanalys-klientbiblioteket till det nya KLIENTbiblioteket för AI Language Text.
Nyheter
Komma igång
Miljöer som stöds för närvarande
- LTS-versioner av Node.js
- De senaste versionerna av Safari, Chrome, Edge och Firefox.
Mer information finns i vår supportpolicy .
Förutsättningar
- En Azure-prenumeration.
- En befintlig Cognitive Services - eller Språkresurs. Om du behöver skapa resursen kan du använda Azure-portalen eller Azure CLI genom att följa stegen i det här dokumentet.
Om du använder Azure CLI ersätter <your-resource-group-name>
du och <your-resource-name>
med dina egna unika namn:
az cognitiveservices account create --kind TextAnalytics --resource-group <your-resource-group-name> --name <your-resource-name> --sku <your-sku-name> --location <your-location>
Installera @azure/ai-language-text
-paketet
Installera Azure Text Analysis-klientbiblioteket för JavaScript med npm
:
npm install @azure/ai-language-text
Skapa och autentisera en TextAnalysisClient
Om du vill skapa ett klientobjekt för att få åtkomst till språk-API:et endpoint
behöver du för din Språkresurs och en credential
. Textanalysklienten kan använda antingen Azure Active Directory-autentiseringsuppgifter eller en API-nyckelautentiseringsuppgift för att autentisera.
Du hittar slutpunkten för språkresursen antingen i Azure-portalen eller med hjälp av Azure CLI-kodfragmentet nedan:
az cognitiveservices account show --name <your-resource-name> --resource-group <your-resource-group-name> --query "properties.endpoint"
Använda en API-nyckel
Använd Azure-portalen för att bläddra till språkresursen och hämta en API-nyckel, eller använd Azure CLI-kodfragmentet nedan:
Observera: Ibland kallas API-nyckeln för en "prenumerationsnyckel" eller "prenumerations-API-nyckel".
az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>
När du har en API-nyckel och slutpunkt kan du använda klassen för att autentisera AzureKeyCredential
klienten på följande sätt:
const { TextAnalysisClient, AzureKeyCredential } = require("@azure/ai-language-text");
const client = new TextAnalysisClient("<endpoint>", new AzureKeyCredential("<API key>"));
Använda en Azure Active Directory-autentiseringsuppgift
Nyckelautentisering med klient-API används i de flesta av exemplen, men du kan också autentisera med Azure Active Directory med hjälp av Azure Identity-biblioteket. Om du vill använda DefaultAzureCredential-providern som visas nedan eller andra autentiseringsproviders som medföljer Azure SDK installerar @azure/identity
du paketet:
npm install @azure/identity
Du måste också registrera ett nytt AAD-program och bevilja åtkomst till Language genom att tilldela "Cognitive Services User"
rollen till tjänstens huvudnamn (obs! Andra roller som "Owner"
inte beviljar nödvändiga behörigheter räcker bara "Cognitive Services User"
för att köra exemplen och exempelkoden).
Ange värdena för klient-ID, klient-ID och klienthemlighet för AAD-programmet som miljövariabler: 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());
Viktiga begrepp
TextAnalysisClient
TextAnalysisClient
är det primära gränssnittet för utvecklare som använder klientbiblioteket för textanalys. Utforska metoderna i det här klientobjektet för att förstå de olika funktionerna i språktjänsten som du kan komma åt.
Indata
Ett dokument representerar en enda indataenhet som ska analyseras av prediktiva modeller i språktjänsten. Åtgärder vid TextAnalysisClient
tar en samling indata som ska analyseras som en batch. Åtgärdsmetoderna har överlagringar som gör att indata kan representeras som strängar eller som objekt med kopplade metadata.
Varje dokument kan till exempel skickas som en sträng i en matris, t.ex.
const documents = [
"I hated the movie. It was so slow!",
"The movie made it into my top ten favorites.",
"What a great movie!",
];
eller, om du vill skicka in ett dokument id
per objekt eller language
countryHint
/, kan de anges som en lista över TextDocumentInput
eller DetectLanguageInput
beroende på åtgärden;
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!" },
];
Se tjänstbegränsningar för indata, inklusive dokumentlängdsgränser, maximal batchstorlek och textkodningar som stöds.
Returvärde
Returvärdet som motsvarar ett enskilt dokument är antingen ett lyckat resultat eller ett felobjekt. Varje TextAnalysisClient
metod returnerar en heterogen matris med resultat och fel som motsvarar indata per index. En textinmatning och dess resultat har samma index i indata- och resultatsamlingarna.
Ett resultat, till exempel SentimentAnalysisResult
, är resultatet av en språkåtgärd som innehåller en förutsägelse eller förutsägelser om en enskild textinmatning. En åtgärds resultattyp kan också innehålla information om indatadokumentet och hur det bearbetades.
Felobjektet, TextAnalysisErrorResult
, anger att tjänsten påträffade ett fel när dokumentet bearbetas och innehåller information om felet.
Dokumentfelhantering
I den samling som returneras av en åtgärd skiljer sig fel från lyckade svar genom förekomsten av error
egenskapen , som innehåller det inre TextAnalysisError
objektet om ett fel påträffades. För lyckade resultatobjekt är den här egenskapen alltidundefined
.
Om du till exempel vill filtrera bort alla fel kan du använda följande filter
:
const results = await client.analyze("SentimentAnalysis", documents);
const onlySuccessful = results.filter((result) => result.error === undefined);
Obs! TypeScript-användare kan dra nytta av bättre typkontroll av resultat- och felobjekt om compilerOptions.strictNullChecks
det är inställt true
på i konfigurationen tsconfig.json
. Ett exempel:
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);
}
Exempel
Klientanvändning
Fördefinierade uppgifter
- Abstrakt sammanfattning
- Språkidentifiering
- Entity Linking
- Entitetskonfiguration
- Extraheringssammanfattning
- Hälso- och sjukvårdsanalys
- Extrahering av diskussionsämne
- Språkidentifiering
- Opinion Mining
- PII-entitetsigenkänning
- Attitydanalys
Anpassade uppgifter
- Igenkänning av anpassad entitet
- Anpassad klassfiering med en enda lable
- Anpassad klassfiering med flera labler
Felsökning
Loggning
Aktivering av loggning kan hjälpa dig att hitta användbar information om fel. Om du vill se en logg över HTTP-begäranden och svar anger du AZURE_LOG_LEVEL
miljövariabeln till info
. Du kan också aktivera loggning vid körning genom att anropa setLogLevel
i @azure/logger
:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Mer detaljerade anvisningar om hur du aktiverar loggar finns i @azure-/loggningspaketdokumenten.
Nästa steg
Ta en titt på exempelkatalogen för detaljerade exempel på hur du använder det här biblioteket.
Bidra
Om du vill bidra till det här biblioteket kan du läsa bidragsguiden för att lära dig mer om hur du skapar och testar koden.
Relaterade projekt
Azure SDK for JavaScript