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

Mer information finns i vår supportpolicy .

Förutsättningar

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 languagecountryHint/, 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

Anpassade uppgifter

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.

Visningar