Share via


Taalservicefuncties asynchroon gebruiken

Met de taalservice kunt u API-aanvragen asynchroon verzenden met behulp van de REST API of clientbibliotheek. U kunt ook meerdere verschillende taalservicefuncties in uw aanvraag opnemen die tegelijkertijd op uw gegevens moeten worden uitgevoerd.

Momenteel zijn de volgende functies beschikbaar om asynchroon te worden gebruikt:

  • Entiteiten koppelen
  • Documentoverzicht
  • Samenvatting van gesprek
  • Sleuteltermextractie
  • Taaldetectie
  • NER (Herkenning van benoemde entiteiten)
  • Detectie van klantinhoud
  • Sentimentanalyse en meninganalyse
  • Text Analytics for Health
  • Persoonsgegevens (PII)

Wanneer u asynchrone aanvragen verzendt, worden er kosten in rekening gebracht op basis van het aantal tekstrecords dat u in uw aanvraag opneemt, voor elk functiegebruik. Als u bijvoorbeeld een tekstrecord verzendt voor sentimentanalyse en NER, wordt deze geteld als het verzenden van twee tekstrecords en worden er kosten in rekening gebracht voor beide op basis van uw prijscategorie.

Een asynchrone taak verzenden met behulp van de REST API

Als u een asynchrone taak wilt verzenden, raadpleegt u de referentiedocumentatie voor de JSON-hoofdtekst die u in uw aanvraag verzendt.

  1. Voeg uw documenten toe aan het analysisInput object.
  2. Neem in het tasks object de bewerkingen op die u wilt uitvoeren op uw gegevens. Als u bijvoorbeeld sentimentanalyse wilt uitvoeren, neemt u het SentimentAnalysisLROTask object op.
  3. U kunt desgewenst het volgende doen:
    1. Kies een specifieke versie van het model dat op uw gegevens wordt gebruikt.
    2. Voeg extra taalservicefuncties in het tasks object toe die tegelijkertijd op uw gegevens moeten worden uitgevoerd.

Nadat u de JSON-hoofdtekst voor uw aanvraag hebt gemaakt, voegt u uw sleutel toe aan de Ocp-Apim-Subscription-Key header. Verzend vervolgens uw API-aanvraag naar het eindpunt voor het maken van taken. Voorbeeld:

POST https://your-endpoint.cognitiveservices.azure.com/language/analyze-text/jobs?api-version=2022-05-01

Een geslaagde aanroep retourneert een 202-antwoordcode. De operation-location in de antwoordheader is de URL die u gebruikt om de API-resultaten op te halen. De waarde ziet er ongeveer als volgt uit:

GET {Endpoint}/language/analyze-text/jobs/12345678-1234-1234-1234-12345678?api-version=2022-05-01

Als u de status wilt ophalen en de resultaten van de aanvraag wilt ophalen, verzendt u een GET-aanvraag naar de URL die u in de operation-location header van het vorige API-antwoord hebt ontvangen. Vergeet niet om uw sleutel op te nemen in de Ocp-Apim-Subscription-Key. Het antwoord bevat de resultaten van uw API-aanroep.

Asynchrone API-aanvragen verzenden met behulp van de clientbibliotheek

Controleer eerst of de clientbibliotheek is geïnstalleerd voor uw gewenste taal. Zie het quickstart-artikel voor de functie die u wilt gebruiken voor de stappen voor het installeren van de clientbibliotheek.

Gebruik daarna het clientobject om asynchrone aanroepen naar de API te verzenden. De te gebruiken methode-aanroepen variëren, afhankelijk van uw taal. Gebruik de beschikbare voorbeelden en referentiedocumentatie om u op weg te helpen.

Beschikbaarheid van resultaat

Wanneer u deze functie asynchroon gebruikt, zijn de API-resultaten gedurende 24 uur beschikbaar vanaf het moment dat de aanvraag is opgenomen en wordt aangegeven in het antwoord. Na deze periode worden de resultaten opgeschoond en zijn ze niet meer beschikbaar voor het ophalen.

Automatische taaldetectie

Vanaf de versie 2022-07-01-preview van de REST API kunt u automatische taaldetectie op uw documenten aanvragen. Door de language parameter in te autostellen, wordt de gedetecteerde taalcode van de tekst geretourneerd als een taalwaarde in het antwoord. Voor deze taaldetectie worden geen extra kosten in rekening gebracht voor uw taalresource.

Gegevenslimieten

Notitie

  • Als u grotere documenten moet analyseren dan volgens de limiet is toegestaan, kunt u de tekst opdelen in kleinere tekstfragmenten voordat u ze naar de API kunt verzenden.
  • Een document bestaat uit één tekenreeks van teksttekens.

U kunt maximaal 125.000 tekens verzenden voor alle documenten in de asynchrone aanvraag, zoals gemeten door StringInfo.LengthInTextElements. Deze tekenlimiet is hoger dan de limiet voor synchrone aanvragen om een hogere doorvoer in te schakelen.

Als een document de tekenlimiet overschrijdt, weigert de API de hele aanvraag en retourneert een 400 bad request fout als een document in het document de maximale grootte overschrijdt.

Zie ook