Udostępnij przez


Jak używać funkcji języka asynchronicznie

Język umożliwia asynchroniczne wysyłanie żądań interfejsu API przy użyciu interfejsu API REST lub biblioteki klienta. Możesz również uwzględnić wiele różnych funkcji języka w żądaniu, które mają być wykonywane na danych w tym samym czasie.

Obecnie dostępne są następujące funkcje asynchroniczne:

  • Łączenie jednostek
  • Podsumowanie dokumentów
  • Podsumowanie konwersacji
  • Wyodrębnianie kluczowych fraz
  • Wykrywanie języka
  • Rozpoznawanie jednostek nazwanych
  • Wykrywanie zawartości klienta
  • Analiza sentymentów i wydobywanie opinii
  • Analiza tekstu dla opieki zdrowotnej
  • Dane osobowe (PII)

Podczas wysyłania żądań asynchronicznych opłaty są naliczane na podstawie liczby rekordów tekstowych uwzględninych w żądaniu dla każdego użycia funkcji. Jeśli na przykład wyślesz rekord tekstowy na potrzeby analizy tonacji i NER, dane są liczone jako wysyłające dwa rekordy tekstowe i są naliczane opłaty za obie wartości zgodnie z warstwą cenową.

Przesyłanie zadania asynchronicznego przy użyciu interfejsu API REST

Aby przesłać zadanie asynchroniczne, zapoznaj się z dokumentacją referencyjną treści JSON, którą wysyłasz w żądaniu.

  1. Dodaj dokumenty do analysisInput obiektu .
  2. tasks W obiekcie uwzględnij operacje, które chcesz wykonać na danych. Na przykład, jeśli chcesz przeprowadzić analizę sentymentu, uwzględnisz obiekt SentimentAnalysisLROTask.
  3. Opcjonalnie możesz:
    1. Wybierz określoną wersję modelu używanego na danych.
    2. Uwzględnij dodane funkcje języka w tasks obiekcie, które mają być wykonywane na danych w tym samym czasie.

Po utworzeniu treści JSON dla żądania dodaj klucz do nagłówka Ocp-Apim-Subscription-Key . Następnie wyślij żądanie interfejsu API do punktu końcowego tworzenia zadania. Na przykład:

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

Pomyślne wywołanie zwraca kod odpowiedzi 202. W nagłówku odpowiedzi operation-location znajduje się adres URL, który jest używany do pobierania wyników API. Wartość wygląda podobnie do następującego adresu URL:

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

Aby uzyskać stan i pobrać wyniki żądania, wyślij żądanie GET do adresu URL otrzymanego w nagłówku operation-location z poprzedniej odpowiedzi interfejsu API. Pamiętaj, aby uwzględnić klucz w pliku Ocp-Apim-Subscription-Key. Odpowiedź zawiera wyniki wywołania interfejsu API.

Wysyłanie asynchronicznych żądań interfejsu API przy użyciu biblioteki klienta

Najpierw upewnij się, że masz zainstalowaną bibliotekę klienta dla wybranego języka. Aby uzyskać instrukcje dotyczące instalowania biblioteki klienta, zobacz artykuł Szybki start dotyczący funkcji, której chcesz użyć.

Następnie użyj obiektu klienta, aby wysyłać wywołania asynchroniczne do interfejsu API. Wywołania metod, które należy użyć, różnią się w zależności od języka. Skorzystaj z dostępnych przykładów i dokumentacji referencyjnej, aby ułatwić rozpoczęcie pracy.

Dostępność wyników

W przypadku tej funkcji, używanej asynchronicznie, wyniki interfejsu API są dostępne przez 24 godziny od momentu pozyskiwania żądania i są wskazywane w odpowiedzi. Po upływie tego okresu wyniki są czyszczone i nie są już dostępne do pobierania.

Automatyczne wykrywanie języka

Począwszy od wersji 2022-07-01-preview interfejsu API REST, możesz zażądać automatycznego wykrywania języka w dokumentach. Ustawiając language parametr na auto, wykryty kod języka tekstu jest zwracany jako wartość języka w odpowiedzi. To wykrywanie języka nie powoduje naliczania dodatkowych opłat za zasób językowy.

Limity danych

Uwaga

  • Jeśli musisz przeanalizować większe dokumenty niż dozwolony limit, możesz podzielić tekst na mniejsze fragmenty tekstu przed wysłaniem ich do interfejsu API.
  • Dokument to pojedynczy ciąg znaków tekstowych.

Możesz wysłać do 125 000 znaków we wszystkich dokumentach zawartych w asynchronicznym żądaniu mierzonym według parametrów StringInfo.LengthInTextElements. Ten limit znaków jest wyższy niż limit dla żądań synchronicznych, aby umożliwić większą przepływność.

Jeśli dokument przekroczy limit znaków, interfejs API odrzuci całe żądanie i zwróci 400 bad request błąd, jeśli jakikolwiek dokument w nim przekroczy maksymalny rozmiar.

Zobacz też