Translator 3.0: Tłumaczenie

Tłumaczy tekst.

Adres URL żądania

Wyślij żądanie POST do:

https://api.cognitive.microsofttranslator.com/translate?api-version=3.0

ZobaczObsługa sieci wirtualnej dla wybranej sieci translator i konfiguracji prywatnego punktu końcowego oraz obsługi.

Parametry żądania

Parametry żądania przekazane w ciągu zapytania to:

Parametry wymagane

Parametr zapytania opis
api-version Wymagany parametr.
Wersja interfejsu API żądanego przez klienta. Wartość musi mieć wartość 3.0.
na wartość Wymagany parametr.
Określa język tekstu wyjściowego. Język docelowy musi być jednym z obsługiwanych języków uwzględnionych w translation zakresie. Na przykład użyj polecenia to=de , aby przetłumaczyć na język niemiecki.
Można przetłumaczyć na wiele języków jednocześnie, powtarzając parametr w ciągu zapytania. Na przykład użyj polecenia to=de&to=it , aby przetłumaczyć na język niemiecki i włoski.

Parametry opcjonalne

Parametr zapytania opis
z Opcjonalny parametr.
Określa język tekstu wejściowego. Znajdź języki dostępne do tłumaczenia, wyszukując obsługiwane języki przy użyciu translation zakresu. from Jeśli parametr nie zostanie określony, automatyczne wykrywanie języka jest stosowane w celu określenia języka źródłowego.

W przypadku korzystania z funkcji słownika dynamicznego należy użyć parametru fromzamiast autodetection. Uwaga: funkcja słownika dynamicznego uwzględnia wielkość liter.
textType Opcjonalny parametr.
Określa, czy przetłumaczony tekst to zwykły tekst, czy tekst HTML. Każdy kod HTML musi być dobrze sformułowanym, kompletnym elementem. Możliwe wartości to: plain (wartość domyślna) lub html.
category Opcjonalny parametr.
Ciąg określający kategorię (domenę) tłumaczenia. Ten parametr służy do pobierania tłumaczeń z niestandardowego systemu skompilowanego przy użyciu usługi Custom Translator. Aby użyć wdrożonego niestandardowego systemu, dodaj identyfikator kategorii ze szczegółów projektu Custom Translator do parametru category. Wartość domyślna to: general.
wulgaryzmAction Opcjonalny parametr.
Określa sposób traktowania wulgaryzmów w tłumaczeniach. Możliwe wartości to: NoAction (wartość domyślna), Markedlub Deleted. Aby zrozumieć sposoby leczenia wulgaryzmów, zobacz Obsługa wulgaryzmów.
wulgaryzmyMarker Opcjonalny parametr.
Określa sposób oznaczania wulgaryzmów w tłumaczeniach. Możliwe wartości to: Asterisk (wartość domyślna) lub Tag. Aby zrozumieć sposoby leczenia wulgaryzmów, zobacz Obsługa wulgaryzmów.
includeAlignment Opcjonalny parametr.
Określa, czy należy uwzględnić projekcję wyrównania z tekstu źródłowego na przetłumaczony tekst. Możliwe wartości to: true lub false (wartość domyślna).
includeSentenceLength Opcjonalny parametr.
Określa, czy należy uwzględnić granice zdań dla tekstu wejściowego i przetłumaczonego tekstu. Możliwe wartości to: true lub false (wartość domyślna).
suggestedFrom Opcjonalny parametr.
Określa język rezerwowy, jeśli nie można zidentyfikować języka tekstu wejściowego. Autodetection języka jest stosowana po pominięciu parametru from . Jeśli wykrywanie nie powiedzie się, zakłada się, że suggestedFrom język.
fromScript Opcjonalny parametr.
Określa skrypt tekstu wejściowego.
toScript Opcjonalny parametr.
Określa skrypt przetłumaczonego tekstu.
allowFallback Opcjonalny parametr.
Określa, że usługa może wrócić do systemu ogólnego, gdy system niestandardowy nie istnieje. Możliwe wartości to: true (wartość domyślna) lub false.

allowFallback=false określa, że tłumaczenie powinno używać tylko systemów wytrenowanych dla określonego category przez żądanie. Jeśli tłumaczenie z języka X na język Y wymaga połączenia łańcuchowego za pośrednictwem języka przestawnego E, wszystkie systemy w łańcuchu (X → E i E → Y) muszą być niestandardowe i mieć tę samą kategorię. Jeśli żaden system nie zostanie znaleziony z określoną kategorią, żądanie zwróci kod stanu 400. allowFallback=true określa, że usługa może wrócić do systemu ogólnego, gdy system niestandardowy nie istnieje.

Nagłówki żądań obejmują:

Nagłówki opis
Nagłówki uwierzytelniania Wymagany nagłówek żądania.
Zobacz dostępne opcje uwierzytelniania.
Typ zawartości Wymagany nagłówek żądania.
Określa typ zawartości ładunku.
Zaakceptowana wartość to application/json; charset=UTF-8.
Długość zawartości Wymagany nagłówek żądania.
Długość treści żądania.
X-ClientTraceId Opcjonalne.
Identyfikator GUID wygenerowany przez klienta w celu unikatowego zidentyfikowania żądania. Ten nagłówek można pominąć, jeśli dołączysz identyfikator śledzenia w ciągu zapytania przy użyciu parametru zapytania o nazwie ClientTraceId.

Treść żądania

Treść żądania jest tablicą JSON. Każdy element tablicy jest obiektem JSON z właściwością ciągu o nazwie Text, która reprezentuje ciąg do przetłumaczenia.

[
    {"Text":"I would really like to drive your car around the block a few times."}
]

Aby uzyskać informacje na temat limitów znaków i tablic, zobaczLimity żądań.

Treść odpowiedzi

Pomyślna odpowiedź to tablica JSON z jednym wynikiem dla każdego ciągu w tablicy wejściowej. Obiekt wynikowy zawiera następujące właściwości:

  • detectedLanguage: Obiekt opisujący wykryty język za pomocą następujących właściwości:

    • language: ciąg reprezentujący kod wykrytego języka.

    • score: wartość zmiennoprzecinkowa wskazująca pewność wyniku. Wynik wynosi od zera do jednego i niskiej oceny wskazuje niską pewność siebie.

    Właściwość detectedLanguage jest obecna tylko w obiekcie wynikowym, gdy zażądano autodetection języka.

  • translations: tablica wyników tłumaczenia. Rozmiar tablicy odpowiada liczbie języków docelowych określonych za pomocą parametru to zapytania. Każdy element w tablicy zawiera następujące elementy:

    • to: ciąg reprezentujący kod języka języka docelowego.

    • text: ciąg dający przetłumaczony tekst.

    • transliteration: obiekt dający przetłumaczony tekst w skry skrycie określonym przez toScript parametr .

      • script: ciąg określający skrypt docelowy.

      • text: ciąg dający przetłumaczony tekst w skryscie docelowym.

      Obiekt transliteration nie jest uwzględniany, jeśli transliteracja nie ma miejsca.

      • alignment: obiekt z pojedynczą właściwością ciągu o nazwie proj, która mapuje tekst wejściowy na przetłumaczony tekst. Informacje o wyrównaniu są udostępniane tylko wtedy, gdy parametr includeAlignment żądania to true. Wyrównanie jest zwracane jako wartość ciągu w następującym formacie: [[SourceTextStartIndex]:[SourceTextEndIndex]–[TgtTextStartIndex]:[TgtTextEndIndex]]. Dwukropek oddziela indeks początkowy i końcowy, kreska oddziela języki, a spacja oddziela wyrazy. Jedno słowo może być wyrównane do zera, jednego lub wielu wyrazów w innym języku, a wyrównane wyrazy mogą być niezgodne. Jeśli żadne informacje o wyrównaniu nie są dostępne, element wyrównania jest pusty. Zobacz Uzyskiwanie informacji o wyrównaniu, aby zapoznać się z przykładem i ograniczeniami.
    • sentLen: obiekt zwracający granice zdań w tekstach wejściowych i wyjściowych.

      • srcSentLen: Tablica całkowita reprezentująca długości zdań w tekście wejściowym. Długość tablicy to liczba zdań, a wartości są długością każdego zdania.

      • transSentLen: Tablica całkowita reprezentująca długości zdań w przetłumaczonym tekście. Długość tablicy to liczba zdań, a wartości są długością każdego zdania.

      Granice zdań są uwzględniane tylko wtedy, gdy parametr includeSentenceLength żądania to true.

  • sourceText: obiekt z pojedynczą właściwością ciągu o nazwie text, która daje tekst wejściowy w domyślnym skrycie języka źródłowego. sourceText właściwość jest obecna tylko wtedy, gdy dane wejściowe są wyrażane w skry skrycie, który nie jest zwykłym skryptem języka. Jeśli na przykład dane wejściowe zostały napisane w skrypcie łacińskim, sourceText.text będzie to ten sam tekst arabski przekonwertowany na skrypt arabski.

Przykłady odpowiedzi JSON znajdują się w sekcji przykłady .

Nagłówki odpowiedzi

Nagłówki opis
Identyfikator X-requestid Wartość wygenerowana przez usługę w celu zidentyfikowania żądania używanego do rozwiązywania problemów.
X-mt-system Określa typ systemu, który został użyty do tłumaczenia dla każdego języka "do" żądanego do tłumaczenia. Wartość jest rozdzielaną przecinkami listą ciągów. Każdy ciąg wskazuje typ:

Niestandardowe — żądanie zawiera system niestandardowy i co najmniej jeden system niestandardowy został użyty podczas tłumaczenia.
Zespół — wszystkie inne żądania
X-metered-usage Określa zużycie (liczbę znaków, dla których jest naliczana opłata za użytkownika) dla żądania zadania tłumaczenia. Jeśli na przykład wyraz "Hello" jest tłumaczony z języka angielskiego (en) na francuski (fr), to pole zwraca wartość 5.

Kody stanu odpowiedzi

Poniżej przedstawiono możliwe kody stanu HTTP zwracane przez żądanie.

Kod stanu opis
200 Powodzenie.
400 Brakuje jednego z parametrów zapytania lub jest on nieprawidłowy. Popraw parametry żądania przed ponowną próbą.
401 Nie można uwierzytelnić żądania. Sprawdź, czy poświadczenia są określone i prawidłowe.
403 Żądanie nie jest autoryzowane. Sprawdź szczegóły komunikatu o błędzie. Ten kod stanu często wskazuje, że użyto wszystkich bezpłatnych tłumaczeń dostarczonych z subskrypcją wersji próbnej.
408 Nie można zrealizować żądania, ponieważ brakuje zasobu. Sprawdź szczegóły komunikatu o błędzie. Jeśli żądanie zawiera kategorię niestandardową, ten kod stanu często wskazuje, że niestandardowy system tłumaczenia nie jest jeszcze dostępny do obsługi żądań. Żądanie powinno zostać ponowione po upływie okresu oczekiwania (na przykład 1 minuta).
429 Serwer odrzucił żądanie, ponieważ klient przekroczył limity żądań.
500 Wystąpił nieoczekiwany błąd. Jeśli błąd będzie się powtarzać, zgłoś go z: datą i godziną niepowodzenia, identyfikatorem żądania z nagłówka odpowiedzi X-RequestId i identyfikatorem klienta z nagłówka żądania X-ClientTraceId.
503 Serwer jest tymczasowo niedostępny. Ponów próbę żądania. Jeśli błąd będzie się powtarzać, zgłoś go z: datą i godziną niepowodzenia, identyfikatorem żądania z nagłówka odpowiedzi X-RequestId i identyfikatorem klienta z nagłówka żądania X-ClientTraceId.

Jeśli wystąpi błąd, żądanie zwraca odpowiedź błędu JSON. Kod błędu to 6-cyfrowy numer łączący 3-cyfrowy kod stanu HTTP, po którym następuje 3-cyfrowy numer w celu dalszego kategoryzowania błędu. Typowe kody błędów można znaleźć na stronie dokumentacji usługi Translator w wersji 3.

Przykłady

Tłumaczenie pojedynczego danych wejściowych

W tym przykładzie pokazano, jak przetłumaczyć pojedyncze zdanie z języka angielskiego na chiński uproszczony.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=zh-Hans" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'Hello, what is your name?'}]"

Treść odpowiedzi to:

[
    {
        "translations":[
            {"text":"你好, 你叫什么名字?","to":"zh-Hans"}
        ]
    }
]

Tablica translations zawiera jeden element, który zapewnia tłumaczenie pojedynczego fragmentu tekstu w danych wejściowych.

Tłumaczenie pojedynczego danych wejściowych za pomocą autodetecji języka

W tym przykładzie pokazano, jak przetłumaczyć pojedyncze zdanie z języka angielskiego na chiński uproszczony. Żądanie nie określa języka wejściowego. Zamiast tego jest używane autodetection języka źródłowego.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&to=zh-Hans" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'Hello, what is your name?'}]"

Treść odpowiedzi to:

[
    {
        "detectedLanguage": {"language": "en", "score": 1.0},
        "translations":[
            {"text": "你好, 你叫什么名字?", "to": "zh-Hans"}
        ]
    }
]

Odpowiedź jest podobna do odpowiedzi z poprzedniego przykładu. Ponieważ zażądano autodetecji języka, odpowiedź zawiera również informacje o języku wykrytym dla tekstu wejściowego. Autodetection języka działa lepiej z dłuższym tekstem wejściowym.

Tłumaczenie za pomocą transliteracji

Rozszerzmy poprzedni przykład, dodając transliterację. Poniższe żądanie prosi o tłumaczenie chińskie napisane w skrypcie łacińskim.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&to=zh-Hans&toScript=Latn" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'Hello, what is your name?'}]"

Treść odpowiedzi to:

[
    {
        "detectedLanguage":{"language":"en","score":1.0},
        "translations":[
            {
                "text":"你好, 你叫什么名字?",
                "transliteration":{"script":"Latn", "text":"nǐ hǎo , nǐ jiào shén me míng zì ?"},
                "to":"zh-Hans"
            }
        ]
    }
]

Wynik tłumaczenia zawiera transliteration teraz właściwość, która daje przetłumaczony tekst przy użyciu znaków łacińskich.

Tłumaczenie wielu fragmentów tekstu

Tłumaczenie wielu ciągów jednocześnie jest po prostu kwestią określania tablicy ciągów w treści żądania.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=zh-Hans" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'Hello, what is your name?'}, {'Text':'I am fine, thank you.'}]"

Odpowiedź zawiera tłumaczenie wszystkich fragmentów tekstu w dokładnie takiej samej kolejności, jak w żądaniu. Treść odpowiedzi to:

[
    {
        "translations":[
            {"text":"你好, 你叫什么名字?","to":"zh-Hans"}
        ]
    },
    {
        "translations":[
            {"text":"我很好,谢谢你。","to":"zh-Hans"}
        ]
    }
]

Tłumaczenie na wiele języków

W tym przykładzie pokazano, jak przetłumaczyć te same dane wejściowe na kilka języków w jednym żądaniu.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=zh-Hans&to=de" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'Hello, what is your name?'}]"

Treść odpowiedzi to:

[
    {
        "translations":[
            {"text":"你好, 你叫什么名字?","to":"zh-Hans"},
            {"text":"Hallo, was ist dein Name?","to":"de"}
        ]
    }
]

Obsługa wulgaryzmów

Zwykle usługa Translator zachowuje wulgaryzmy obecne w źródle tłumaczenia. Stopień wulgaryzmów i kontekst, który sprawia, że słowa wulgarne różnią się między kulturami, a w rezultacie stopień wulgaryzmów w języku docelowym można wzmocnić lub zmniejszyć.

Jeśli chcesz uniknąć wulgaryzmów w tłumaczeniu, niezależnie od obecności wulgaryzmów w tekście źródłowym, możesz użyć opcji filtrowania wulgaryzmów. Opcja umożliwia wybranie, czy chcesz zobaczyć wulgaryzmy usunięte, oznaczone odpowiednimi tagami (dając możliwość dodania własnego przetwarzania końcowego) lub bez podejmowania akcji. Akceptowane wartości ProfanityAction to Deleted, Markedi NoAction (wartość domyślna).

WulgaryzmAction Akcja
NoAction Ustawienie NoAction jest zachowaniem domyślnym. Wulgaryzm przechodzi z języka źródłowego na język docelowy.

Przykładowe źródło (japoński): 彼はジャカスです。
Przykładowe tłumaczenie (angielski): On jest jackiem---.
Deleted Wulgarne słowa są usuwane z danych wyjściowych bez żadnych zastąpień.

Przykładowe źródło (japoński): 彼はジャカスです。
Przykładowe tłumaczenie (angielski): On jest**
Marked Znacznik zastępuje oznaczone słowo w danych wyjściowych. Znacznik zależy od parametru ProfanityMarker .

W przypadku ProfanityMarker=Asteriskelementu wulgarne wyrazy są zastępowane elementem ***:
Przykładowe źródło (japoński): 彼はジャカスです。
Przykładowe tłumaczenie (angielski): on jest \\\*.

W przypadku ProfanityMarker=Tagpolecenia słowa wulgaryzmów są otoczone wulgaryzmami> tagów <XML i </wulgaryzmami>:
Przykładowe źródło (japoński): 彼はジャカスです。
Przykładowe tłumaczenie (angielski): Jest wulgaryzmem><---</wulgaryzmem>.

Na przykład:

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=de&profanityAction=Marked" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'This is an <expletive> good idea.'}]"

To żądanie zwraca:

[
    {
        "translations":[
            {"text":"Das ist eine *** gute Idee.","to":"de"}
        ]
    }
]

Porównaj z:

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=de&profanityAction=Marked&profanityMarker=Tag" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'This is an <expletive> good idea.'}]"

To ostatnie żądanie zwraca:

[
    {
        "translations":[
            {"text":"Das ist eine <profanity>verdammt</profanity> gute Idee.","to":"de"}
        ]
    }
]

Tłumaczenie zawartości zawierającej znaczniki

Często tłumaczy się zawartość obejmującą znaczniki, takie jak zawartość ze strony HTML lub zawartości dokumentu XML. Uwzględnij parametr textType=html zapytania podczas tłumaczenia zawartości za pomocą tagów. Ponadto czasami warto wykluczyć konkretną zawartość z tłumaczenia. Możesz użyć atrybutu class=notranslate , aby określić zawartość, która powinna pozostać w oryginalnym języku. W poniższym przykładzie zawartość wewnątrz pierwszego div elementu nie jest tłumaczona, podczas gdy zawartość w drugim div elemecie jest tłumaczona.

<div class="notranslate">This will not be translated.</div>
<div>This will be translated. </div>

Oto przykładowe żądanie ilustrujące.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=zh-Hans&textType=html" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'<div class=\"notranslate\">This will not be translated.</div><div>This will be translated.</div>'}]"

Odpowiedź to:

[
    {
        "translations":[
            {"text":"<div class=\"notranslate\">This will not be translated.</div><div>这将被翻译。</div>","to":"zh-Hans"}
        ]
    }
]

Uzyskiwanie informacji o wyrównaniu

Dopasowanie jest zwracane jako wartość ciągu w następującym formacie dla każdego wyrazu ze źródła. Informacje o każdym wyrazie są oddzielone spacją, włącznie z językami (skryptami) nieużywającymi rozdzielania spacjami, takimi jak chiński:

[[IndeksPoczątkowyTekstuŹródłowego]:[IndeksKońcowyTekstuŹródłowego]–[IndeksPoczątkowyTekstuDocelowego]:[IndeksKońcowyTekstuDocelowego]] *

Przykładowy ciąg dopasowania: „0:0-7:10 1:2-11:20 3:4-0:3 3:4-4:6 5:5-21:21”.

Innymi słowy, dwukropek oddziela indeks początkowy i końcowy, kreska oddziela języki, a spacja oddziela wyrazy. Jedno słowo może być wyrównane do zera, jednego lub wielu wyrazów w innym języku, a wyrównane wyrazy mogą być niezgodne. Jeśli żadne informacje o wyrównaniu nie są dostępne, element Wyrównanie jest pusty. Metoda nie zwraca żadnego błędu w tym przypadku.

Aby otrzymywać informacje o wyrównaniu, określ includeAlignment=true ciąg zapytania.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=fr&includeAlignment=true" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'The answer lies in machine translation.'}]"

Odpowiedź to:

[
    {
        "translations":[
            {
                "text":"La réponse se trouve dans la traduction automatique.",
                "to":"fr",
                "alignment":{"proj":"0:2-0:1 4:9-3:9 11:14-11:19 16:17-21:24 19:25-40:50 27:37-29:38 38:38-51:51"}
            }
        ]
    }
]

Informacje o wyrównaniu zaczynają się od 0:2-0:1, co oznacza, że pierwsze trzy znaki w tekście źródłowym (The) są mapowane na pierwsze dwa znaki w przetłumaczonym tekście (La).

Ograniczenia

Uzyskiwanie informacji o wyrównaniu jest funkcją eksperymentalną, którą umożliwiliśmy tworzenie prototypów i doświadczeń z potencjalnymi mapowaniami fraz. Poniżej przedstawiono niektóre istotne ograniczenia, w których wyrównania nie są obsługiwane:

  • Wyrównanie nie jest dostępne dla tekstu w formacie HTML, czyli textType=html
  • Wyrównanie jest zwracane tylko dla podzbioru par językowych:
    • Angielski do/z dowolnego innego języka z wyjątkiem chińskiego tradycyjnego, kantońskiego (tradycyjnego) lub serbskiego (cyrylica)
    • od japońskiego do koreańskiego lub koreańskiego do japońskiego
    • od japońskich do chińskich uproszczonych i chińskich uproszczonych do japońskich
    • od chińskiego uproszczonego do chińskiego tradycyjnego i chińskiego tradycyjnego do chińskiego uproszczonego
  • Nie można wyrównać, jeśli zdanie jest tłumaczeniem w puszce. Przykład tłumaczenia w puszkach to This is a test, I love youi inne zdania o wysokiej częstotliwości
  • Wyrównanie nie jest dostępne w przypadku zastosowania żadnego z podejść, aby zapobiec tłumaczeniu zgodnie z opisem w tym miejscu

Uzyskiwanie granic zdań

Aby uzyskać informacje o długości zdania w tekście źródłowym i przetłumaczonym tekście, określ includeSentenceLength=true ciąg zapytania.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=fr&includeSentenceLength=true" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'The answer lies in machine translation. The best machine translation technology cannot always provide translations tailored to a site or users like a human. Simply copy and paste a code snippet anywhere.'}]"

Odpowiedź to:

[
    {
        "translations":[
            {
                "text":"La réponse se trouve dans la traduction automatique. La meilleure technologie de traduction automatique ne peut pas toujours fournir des traductions adaptées à un site ou des utilisateurs comme un être humain. Il suffit de copier et coller un extrait de code n'importe où.",
                "to":"fr",
                "sentLen":{"srcSentLen":[40,117,46],"transSentLen":[53,157,62]}
            }
        ]
    }
]

Tłumaczenie przy użyciu słownika dynamicznego

Jeśli znasz już tłumaczenie, które chcesz zastosować do wyrazu lub frazy, możesz podać je jako znacznik w żądaniu. Słownik dynamiczny jest bezpieczny tylko dla właściwych rzeczowników, takich jak nazwy osobiste i nazwy produktów. Uwaga: funkcja słownika dynamicznego uwzględnia wielkość liter.

Znacznik do podania używa następującej składni.

<mstrans:dictionary translation="translation of phrase">phrase</mstrans:dictionary>

Rozważmy na przykład zdanie w języku angielskim "Słowo wordomatic jest wpisem słownika". Aby zachować wyraz wordomatic w tłumaczeniu, wyślij żądanie:

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=de" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'The word <mstrans:dictionary translation=\"wordomatic\">wordomatic</mstrans:dictionary> is a dictionary entry.'}]"

Wynik to:

[
    {
        "translations":[
            {"text":"Das Wort \"wordomatic\" ist ein Wörterbucheintrag.","to":"de"}
        ]
    }
]

Ta funkcja słownika dynamicznego działa w taki sam sposób, jak w przypadku textType=text funkcji lub .textType=html Funkcja powinna być używana oszczędnie. Odpowiedni i znacznie lepszy sposób dostosowywania tłumaczenia polega na użyciu usługi Custom Translator. Funkcja Custom Translator w pełni wykorzystuje kontekst i prawdopodobieństwa statystyczne. Jeśli możesz utworzyć dane szkoleniowe przedstawiające pracę lub frazę w kontekście, uzyskasz lepsze wyniki. Dowiedz się więcej o usłudze Custom Translator.

Następne kroki