Så här använder du språktjänstfunktioner asynkront
Med språktjänsten kan du skicka API-begäranden asynkront med hjälp av rest-API:et eller klientbiblioteket. Du kan också inkludera flera olika språktjänstfunktioner i din begäran, som ska utföras på dina data samtidigt.
För närvarande är följande funktioner tillgängliga för användning asynkront:
- Entitetslänkning
- Dokumentsammanfattning
- Konversationssammanfattning
- Extrahering av nyckelfraser
- Språkidentifiering
- Igenkänning av namngiven entitet (NER)
- Identifiering av kundinnehåll
- Attitydanalys och åsiktsutvinning
- Textanalys för hälsa
- Personlig identifierbar information (PII)
När du skickar asynkrona begäranden debiteras du avgifter baserat på antalet textposter som du inkluderar i din begäran, för varje funktionsanvändning. Om du till exempel skickar en textpost för attitydanalys och NER räknas den som att skicka två textposter och du debiteras för båda enligt din prisnivå.
Skicka ett asynkront jobb med hjälp av REST-API:et
Om du vill skicka ett asynkront jobb läser du referensdokumentationen för JSON-brödtexten som du skickar i din begäran.
- Lägg till dina dokument i -objektet
analysisInput
. - I -objektet
tasks
inkluderar du de åtgärder som du vill utföra på dina data. Om du till exempel vill utföra attitydanalys skulle du inkludera -SentimentAnalysisLROTask
objektet. - Du kan också:
- Välj en specifik version av modellen som används för dina data.
- Inkludera ytterligare språktjänstfunktioner i objektet
tasks
som ska utföras på dina data samtidigt.
När du har skapat JSON-brödtexten för din begäran lägger du till nyckeln i Ocp-Apim-Subscription-Key
rubriken. Skicka sedan din API-begäran till slutpunkten för att skapa jobb. Ett exempel:
POST https://your-endpoint.cognitiveservices.azure.com/language/analyze-text/jobs?api-version=2022-05-01
Ett lyckat anrop returnerar en 202-svarskod. operation-location
i svarshuvudet är den URL som du kommer att använda för att hämta API-resultaten. Värdet ser ut ungefär så här:
GET {Endpoint}/language/analyze-text/jobs/12345678-1234-1234-1234-12345678?api-version=2022-05-01
Om du vill hämta status och hämta resultatet av begäran skickar du en GET-begäran till den URL som du fick i operation-location
rubriken från föregående API-svar. Kom ihåg att inkludera din nyckel i Ocp-Apim-Subscription-Key
. Svaret innehåller resultatet av ditt API-anrop.
Skicka asynkrona API-begäranden med klientbiblioteket
Kontrollera först att klientbiblioteket är installerat för val av språk. Anvisningar om hur du installerar klientbiblioteket finns i snabbstartsartikeln för den funktion som du vill använda.
Därefter använder du klientobjektet för att skicka asynkrona anrop till API:et. Metodanropen som ska användas varierar beroende på ditt språk. Använd de tillgängliga exemplen och referensdokumentationen för att komma igång.
Resultattillgänglighet
När du använder den här funktionen asynkront är API-resultaten tillgängliga i 24 timmar från det att begäran matades in och anges i svaret. Efter den här tidsperioden rensas resultaten och är inte längre tillgängliga för hämtning.
Automatisk språkidentifiering
Från och med versionen 2022-07-01-preview
av REST-API:et kan du begära automatisk språkidentifiering i dina dokument. Genom att ange parametern language
till auto
returneras den identifierade språkkoden för texten som ett språkvärde i svaret. Den här språkidentifieringen medför inga extra avgifter för språkresursen.
Databegränsningar
Anteckning
- Om du behöver analysera större dokument än vad gränsen tillåter kan du dela upp texten i mindre textsegment innan du skickar dem till API:et.
- Ett dokument är en enskild sträng med texttecken.
Du kan skicka upp till 125 000 tecken över alla dokument som finns i den asynkrona begäran, mätt i StringInfo.LengthInTextElements. Den här teckengränsen är högre än gränsen för synkrona begäranden för att möjliggöra högre dataflöde.
Om ett dokument överskrider teckengränsen avvisar API:et hela begäran och returnerar ett 400 bad request
fel om något dokument i det överskrider den maximala storleken.