Translator 3.0: Translate

Übersetzt Text.

Anfrage-URL

Sendet eine POST-Anforderung an:

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

UnterUnterstützung für virtuelle Netzwerke finden Sie Informationen für ausgewählte Netzwerk- und private Endpunktkonfigurationen für den Übersetzer-Dienst sowie die zugehörige Unterstützung.

Anforderungsparameter

Die folgenden Anforderungsparameter werden in der Abfragezeichenfolge übergeben:

Erforderliche Parameter

Query parameter (Abfrageparameter) BESCHREIBUNG
api-version Erforderlicher Parameter.
Die vom Client angeforderte Version der API. Der Wert muss 3.0 sein.
zu Erforderlicher Parameter.
Gibt die Sprache des Ausgabetexts an. Sie müssen eine der zum translation-Bereich hinzugefügten unterstützten Sprachen als Zielsprache auswählen. Verwenden Sie z.B. to=de für die Übersetzung ins Deutsche.
Durch Wiederholen des Parameters in der Abfragezeichenfolge ist es möglich, in mehrere Sprachen gleichzeitig zu übersetzen. Verwenden Sie z.B. to=de&to=it für die Übersetzung ins Deutsche und Italienische.

Optionale Parameter

Query parameter (Abfrageparameter) BESCHREIBUNG
from Optionaler Parameter.
Gibt die Sprache des Eingabetexts an. Finden Sie heraus, aus welchen Sprachen Sie übersetzen können, indem Sie die unterstützten Sprachen mithilfe destranslation-Bereichs. Wenn der Parameter from nicht angegeben ist, wird die automatische Sprachenerkennung zum Bestimmen der Quellsprache verwendet.

Sie müssen den Parameter from anstelle der automatischen Erkennung verwenden, wenn Sie die Funktion für ein dynamisches Wörterbuch verwenden. Hinweis: Bei der Funktion „Dynamisches Wörterbuch“ wird die Groß-/Kleinschreibung berücksichtigt.
textType Optionaler Parameter.
Definiert, ob es sich bei dem zu übersetzenden Text um Nur-Text oder um HTML-Text handelt. Jede HTML muss ein wohlgeformtes vollständiges Element sein. Mögliche Werte sind: plain (Standard) oder html.
category Optionaler Parameter.
Eine Zeichenfolge, die die Kategorie (Domäne) der Übersetzung angibt. Dieser Parameter wird verwendet, um Übersetzungen von einem benutzerdefinierten System zu erhalten, das mit Custom Translator erstellt wurde. Um Ihr bereitgestelltes benutzerdefiniertes System zu verwenden, fügen Sie die Kategorie-ID aus Ihren benutzerdefinierten Übersetzer Projektdetails zum Kategorieparameter hinzu. Der Standardwert ist general.
profanityAction Optionaler Parameter.
Gibt an, wie Obszönitäten in Übersetzungen behandelt werden. Mögliche Werte sind: NoAction (Standard), Markedoder Deleted. Nähere Informationen zur Handhabung von Obszönitäten finden Sie unter Behandlung von Obszönitäten.
profanityMarker Optionaler Parameter.
Gibt an, wie Obszönitäten in Übersetzungen markiert werden. Mögliche Werte sind: Asterisk (Standard) oder Tag. Nähere Informationen zur Handhabung von Obszönitäten finden Sie unter Behandlung von Obszönitäten.
includeAlignment Optionaler Parameter.
Gibt an, ob die Ausrichtungsprojektion des Quelltexts für den übersetzten Text verwendet wird. Mögliche Werte sind: true oder false (Standard).
includeSentenceLength Optionaler Parameter.
Gibt an, ob Satzgrenzen für den eingegebenen und den übersetzten Text verwendet werden. Mögliche Werte sind: true oder false (Standard).
suggestedFrom Optionaler Parameter.
Gibt eine Fallbacksprache an, wenn die Sprache des Eingabetexts nicht identifiziert werden kann. Automatische Spracherkennung wird bei Weglassen des Parameters from angewendet. Wenn bei der Erkennung ein Fehler auftritt, wird die Sprache suggestedFrom angenommen.
fromScript Optionaler Parameter.
Gibt das Skript des Eingabetexts an.
toScript Optionaler Parameter.
Gibt das Skript des Eingabetexts an.
allowFallback Optionaler Parameter.
Gibt an, dass für den Dienst ein Fallback zu einem allgemeinen System zulässig ist, wenn kein benutzerdefiniertes System vorhanden ist. Mögliche Werte sind: true (Standard) oder false.

allowFallback=false gibt an, dass für die Übersetzung nur Systeme verwendet werden sollen, die für die angegebene category in der Anforderung trainiert sind. Wenn eine Übersetzung von der Sprache X in die Sprache Y die Verkettung über eine Pivot- bzw. Zwischensprache E erfordert, müssen alle Systeme in der Kette (X → E und E → Y) benutzerdefiniert sein und die gleiche Kategorie aufweisen. Wird kein System mit der jeweiligen Kategorie gefunden, gibt die Anforderung den Statuscode 400 zurück. allowFallback=true gibt an, dass für den Dienst ein Fallback zu einem allgemeinen System zulässig ist, wenn kein benutzerdefiniertes System vorhanden ist.

Anforderungsheader enthalten Folgendes:

Header Beschreibung
Authentifizierungsheader Erforderlicher Anforderungsheader.
Weitere Informationen finden Sie in den verfügbaren Optionen für die Authentifizierung.
Content-Type Erforderlicher Anforderungsheader.
Gibt den Inhaltstyp der Nutzlast an.
Der zulässige Wert ist application/json; charset=UTF-8.
Content-Length Erforderlicher Anforderungsheader.
Die Länge des Anforderungstexts.
X-ClientTraceId Optional:
Eine vom Client erstellte GUID zur eindeutigen Identifizierung der Anforderung. Sie können diesen Header nur weglassen, wenn Sie die Ablaufverfolgungs-ID in die Abfragezeichenfolge über einen Abfrageparameter namens ClientTraceId einschließen.

Anforderungstext

Der Anforderungstext ist ein JSON-Array. Jedes Arrayelement ist ein JSON-Objekt mit einer Zeichenfolgeneigenschaft namens Text, die die zu suchende Zeichenfolge repräsentiert.

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

Informationen zu Zeichen- und Arraybeschränkungen finden Sie unterAnforderungsbeschränkungen.

Antworttext

Eine erfolgreiche Antwort ist ein JSON-Array mit einem Ergebnis für jede Zeichenfolge im Eingabearray. Ein Ergebnisobjekt enthält die folgenden Eigenschaften:

  • detectedLanguage: Ein Objekt, das die erkannte Sprache durch die folgenden Eigenschaften beschreibt:

    • language: Eine Zeichenfolge, die den Code der erkannten Sprache darstellt.

    • score: Ein float-Wert, der die Zuverlässigkeit des Ergebnisses angibt. Die Bewertung bewegt sich zwischen 0 (null) und 1, und eine niedrige Bewertung gibt an, dass die Zuverlässigkeit zweifelhaft ist.

    Die detectedLanguage-Eigenschaft ist nur im Ergebnisobjekt enthalten, wenn automatische Spracherkennung angefordert wird.

  • translations: Ein Array von Übersetzungsergebnissen. Die Größe des Arrays entspricht der Anzahl der durch den to-Abfrageparameter angegebenen Zielsprachen. Jedes Element im Array enthält:

    • to: Eine Zeichenfolge, die den Sprachcode der Zielsprache darstellt.

    • text: Eine Zeichenfolge, die den übersetzten Text enthält.

    • transliteration: Ein Objekt, das den übersetzten Text in dem durch den toScript-Parameter angegebenen Skript enthält.

      • script: Eine Zeichenfolge, die das Zielskript angibt.

      • text: Eine Zeichenfolge, die den übersetzten Text im Zielskript enthält.

      Das transliteration-Objekt ist nicht enthalten, wenn keine Transliteration erfolgt.

      • alignment: Ein Objekt mit einer einzelnen Zeichenfolgeneigenschaft namens proj, das dem übersetzten Text Eingabetext zuordnet. Die Informationen für die Ausrichtung werden nur bereitgestellt, wenn der Anforderungsparameter includeAlignmenttrue ist. Die Ausrichtung wird als Zeichenfolgenwert mit dem folgenden Format zurückgegeben: [[SourceTextStartIndex]:[SourceTextEndIndex]–[TgtTextStartIndex]:[TgtTextEndIndex]]. Der Doppelpunkt trennt Start- und Endindex, der Bindestrich trennt die Sprachen, und Leerzeichen trennen die Wörter. Ein Wort kann mit Null, einem oder mehreren Wörtern in der anderen Sprache ausgerichtet werden, und die ausgerichteten Wörter können nicht zusammenhängend sein. Wenn keine Informationen für die Ausrichtung verfügbar sind, ist das Ausrichtungselement leer. Beispiele und Einschränkungen finden Sie in Abschnitt Abrufen von Ausrichtungsinformationen.
    • sentLen: Ein Objekt, das Satzgrenzen in den Eingabe- und Ausgabetexten zurückgibt.

      • srcSentLen: Ein Integer-Array, das die Länge der Sätze im Eingabetext darstellt. Die Länge des Arrays stellt die Anzahl von Sätzen dar, und die Werte stehen jeweils für die Länge der einzelnen Sätze.

      • transSentLen:Ein Integer-Array, das die Länge der Sätze im übersetzten Text darstellt. Die Länge des Arrays stellt die Anzahl von Sätzen dar, und die Werte stehen jeweils für die Länge der einzelnen Sätze.

      Satzgrenzen sind nur enthalten, wenn der Anforderungsparameter includeSentenceLengthtrue ist.

  • sourceText: Ein Objekt mit einer einzelnen Zeichenfolgeneigenschaft namens text, das den Eingabetext im Standardskript der Quellsprache bereitstellt. Die Eigenschaft sourceText ist nur vorhanden, wenn die Eingabe in einem Skript ausgedrückt wird, das nicht das übliche Skript für die Sprache ist. Wenn die Eingabe beispielsweise arabisch in lateinischer Schrift geschrieben wurde, wäre derselbe sourceText.text arabische Text, der in arabische Schrift konvertiert wird.

Beispiele für JSON-Antworten finden Sie im Abschnitt Beispiele.

Antwortheader

Header BESCHREIBUNG
X-requestid Vom Dienst generierter Wert, um die Anforderung zu identifizieren, die für Problembehandlungszwecke verwendet wird.
X-mt-system Gibt den Systemtyp an, der für jede zur Übersetzung angeforderte Zielsprache für die Übersetzung verwendet wurde. Bei dem Wert handelt es sich um eine durch Trennzeichen getrennte Liste von Zeichenfolgen. Jede Zeichenfolge gibt einen Typ an:

Benutzerdefiniert – Anforderung enthält ein benutzerdefiniertes System und mindestens ein benutzerdefiniertes System wurde während der Übersetzung verwendet.
Team – Alle anderen Anforderungen
X-metered-usage Gibt den Verbrauch (die Anzahl der Zeichen an, die dem Benutzer in Rechnung gestellt werden) für die Übersetzungsauftragsanforderung an. Wenn beispielsweise das Wort „Hello“ aus dem Englischen (EN) ins Französische (FR) übersetzt wird, gibt dieses Feld den Wert 5 zurück.

Antwortstatuscodes

Im Folgenden finden Sie die möglichen HTTP-Statuscodes, die eine Anforderung zurückgeben kann.

Statuscode BESCHREIBUNG
200 Erfolg.
400 Einer der Abfrageparameter fehlt oder ist ungültig. Korrigieren Sie die Anforderungsparameter, bevor Sie es erneut versuchen.
401 Die Anforderung konnte nicht authentifiziert werden. Überprüfen Sie, ob die Anmeldeinformationen angegeben und gültig sind.
403 Die Anforderung ist nicht autorisiert. Weitere Informationen finden Sie in der Fehlermeldung. Dieser Statuscode gibt häufig an, dass Sie alle kostenlosen Übersetzungen verwendet haben, die mit einem Testabonnement bereitgestellt wurden.
408 Die Anforderung konnte nicht ausgeführt werden, weil eine Ressource nicht vorhanden ist. Weitere Informationen finden Sie in der Fehlermeldung. Wenn die Anforderung eine benutzerdefinierte Kategorie enthält, gibt dieser Statuscode häufig an, dass das benutzerdefinierte Übersetzungssystem noch nicht für die Bereitstellung von Anforderungen verfügbar ist. Die Anforderung sollte nach einer Wartezeit (z. B. 1 Minute) wiederholt werden.
429 Der Server hat die Anforderung abgelehnt, da der Client die Anforderungsgrenzwerte überschritten hat.
500 Ein unerwarteter Fehler ist aufgetreten. Wenn der Fehler weiterhin besteht, melden Sie ihn, und geben Sie dabei Folgendes an: Datum und Zeitpunkt des Fehlers, Anforderungsbezeichner aus dem Antwortheader „X-RequestId“ und Clientbezeichner aus dem Anforderungsheader „X-ClientTraceId“.
503 Der Server ist vorübergehend nicht verfügbar. Wiederholen Sie die Anforderung. Wenn der Fehler weiterhin besteht, melden Sie ihn, und geben Sie dabei Folgendes an: Datum und Zeitpunkt des Fehlers, Anforderungsbezeichner aus dem Antwortheader „X-RequestId“ und Clientbezeichner aus dem Anforderungsheader „X-ClientTraceId“.

Sollte ein Fehler auftreten, gibt die Anforderung eine JSON-Fehlerantwort zurück. Der Fehlercode ist eine 6-stellige Zahl, die aus dem 3-stelligen HTTP-Statuscode gefolgt von einer 3-stelligen Zahl zur Kategorisierung des Fehlers besteht. Häufige Fehlercodes finden Sie in der Referenz zu Version 3 von Translator.

Beispiele

Übersetzen einer einzelnen Eingabe

Dieses Beispiel zeigt, wie ein einzelner Satz aus dem Englischen ins Chinesische (vereinfacht) übersetzt wird.

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?'}]"

Der Antworttext lautet:

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

Das translations Array enthält ein Element, das die Übersetzung des einzelnen Textausschnitts in der Eingabe bereitstellt.

Übersetzen einer einzelnen Eingabe mit automatischer Spracherkennung

Dieses Beispiel zeigt, wie ein einzelner Satz aus dem Englischen ins Chinesische (vereinfacht) übersetzt wird. Die Anforderung gibt keine Eingabesprache an. Es wird stattdessen die automatische Erkennung der Quellsprache verwendet.

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?'}]"

Der Antworttext lautet:

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

Die Antwort ähnelt der Antwort aus dem vorherigen Beispiel. Da automatische Spracherkennung angefordert wurde, enthält die Antwort auch Informationen zur erkannten Sprache des Eingabetexts. Ein längerer Eingabetext erhöht die Zuverlässigkeit der automatischen Spracherkennung.

Übersetzen mit Transliteration

Das vorherige Beispiel wird jetzt durch Hinzufügen einer Transliteration erweitert. Die folgende Anforderung beinhaltet eine chinesische Übersetzung, die in einem lateinischen Skript verfasst wurde.

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?'}]"

Der Antworttext lautet:

[
    {
        "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"
            }
        ]
    }
]

Das Übersetzungsergebnis beinhaltet nun eine transliteration-Eigenschaft, die den übersetzten Text mit lateinischen Zeichen enthält.

Übersetzen mehrerer Textausschnitte

Um mehrere Strings gleichzeitig zu übersetzen, muss lediglich ein Array von Zeichenfolgen im Anforderungstext angegeben werden.

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.'}]"

Die Antwort enthält die Übersetzung aller Textteile in exakt derselben Reihenfolge wie in der Anforderung. Der Antworttext lautet:

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

Übersetzen in mehrere Sprachen

Dieses Beispiel zeigt, wie in einer Anforderung ein- und dieselbe Eingabe in mehrere Sprachen übersetzt wird.

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?'}]"

Der Antworttext lautet:

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

Handhabung von Obszönitäten

In der Regel behält der Übersetzungsdienst Obszönitäten, die im Quelltext vorhanden sind, in der Übersetzung bei. Der Grad der Profanität und der Kontext, der Wörter profan zwischen kulturen unterscheidet, und folglich kann der Grad der Profanität in der Zielsprache verstärkt oder reduziert werden.

Wenn Sie möchten, dass die Übersetzung keine Obszönitäten enthält, auch wenn diese im Quelltext vorhanden sind, können Sie mithilfe der Obszönitäten-Filteroption die entsprechenden Textstellen überarbeiten. Sie können mit dieser Option wählen, ob Obszönitäten gelöscht, mit entsprechenden Tags markiert (sodass Sie Ihre eigene Nachbearbeitung hinzufügen können) oder keine Maßnahme ergriffen werden. Die akzeptierten ProfanityAction Werte sind Deleted, Markedund NoAction (Standard).

ProfanityAction Aktion
NoAction NoAction ist das Standardverhalten. Die Obszönität wird aus der Ausgangs- in die Zielsprache übernommen.

Beispielquelle (Japanisch): 彼はジャッカスです。
Beispielübersetzung (Deutsch): Er ist ein Trott---.
Deleted Obszöne Begriffe werden aus der Ausgabe entfernt, und es wird kein Ersatzbegriff bereitgestellt.

Beispielquelle (Japanisch): 彼はジャッカスです。
Beispielübersetzung (Deutsch): Er ist ein**.
Marked Ein Marker ersetzt das markierte Wort in der Ausgabe. Der Marker hängt von dem Parameter ProfanityMarker ab.

Für ProfanityMarker=Asterisk, profane Wörter werden durch ***:
Beispielquelle (Japanisch): 彼はジャッカスです。
Beispielübersetzung (Deutsch): Er ist ein \\\*.

Für ProfanityMarker=Tag, profane Wörter sind von XML-Tags <Profanität> und </Profanität> umgeben:
Beispielquelle (Japanisch): 彼はジャッカスです。
Beispielübersetzung (Deutsch): Er ist ein <profanity>Trott---</profanity>.

Beispiel:

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.'}]"

Diese Anforderung gibt Folgendes zurück:

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

Verglichen mit:

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.'}]"

Diese letzte Anforderung gibt Folgendes zurück:

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

Übersetzen von Inhalten, die Markup enthalten

Häufig werden Inhalte mit Markup übersetzt, wie z. B. Inhalte einer HTML-Seite oder eines XML-Dokuments. Beziehen Sie textType=html-Abfrageparameter beim Übersetzen von Inhalten mit Tags ein. Manchmal ist es auch sinnvoll, bestimmten Inhalt von der Übersetzung auszuschließen. Sie können das Attribut class=notranslate verwenden, um Inhalt anzugeben, der in der Originalsprache übernommen werden soll. Im folgenden Beispiel wird der Inhalt im ersten div-Element nicht übersetzt, während der Inhalt im zweiten div-Element übersetzt wird.

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

Zur Veranschaulichung finden Sie nachfolgend ein Beispiel einer Anforderung.

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>'}]"

Die Antwort lautet:

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

Abrufen von Informationen zur Ausrichtung

Die Ausrichtung wird als Zeichenfolgenwert des folgenden Formats für jedes Wort der Quelle zurückgegeben. Die Informationen für jedes Wort sind durch ein Leerzeichen getrennt. Dies gilt auch für Sprachen (Skripts), die keine Leerzeichen als Trennung enthalten, z.B. Chinesisch:

[[SourceTextStartIndex]\:[SourceTextEndIndex]–[TgtTextStartIndex]\:[TgtTextEndIndex]] *

Beispiel für Ausrichtungszeichenfolge: „0:0-7:10 1:2-11:20 3:4-0:3 3:4-4:6 5:5-21:21“.

Anders ausgedrückt: Der Doppelpunkt trennt Start- und Endindex, der Bindestrich trennt die Sprachen, und Leerzeichen trennen die Wörter. Ein Wort kann mit Null, einem oder mehreren Wörtern in der anderen Sprache ausgerichtet werden, und die ausgerichteten Wörter können nicht zusammenhängend sein. Wenn keine Informationen für die Ausrichtung verfügbar sind, ist das Ausrichtungselement leer. In diesem Fall gibt die Methode keinen Fehler zurück.

Um Informationen über die Ausrichtung zu erhalten, geben Sie includeAlignment=true in der Abfragezeichenfolge ein.

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.'}]"

Die Antwort lautet:

[
    {
        "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"}
            }
        ]
    }
]

Die Informationen für die Ausrichtung beginnen mit 0:2-0:1, was bedeutet, dass die ersten drei Zeichen im Quelltext (The) den beiden ersten Zeichen im übersetzten Text (La) zugeordnet sind.

Begrenzungen

Das Abrufen von Ausrichtungsinformationen ist ein experimentelles Feature, das wir für die Prototypforschung und Erfahrungen mit potenziellen Begriffszuordnungen ermöglicht haben. Nachfolgend finden Sie einige relevante Einschränkungen bei der Unterstützung von Ausrichtungen:

  • Ausrichtung ist für Text im HTML-Format – d. h. textType=html – nicht verfügbar
  • Die Ausrichtung wird nur für eine Teilmenge der Sprachpaare zurückgegeben:
    • Englisch in/aus einer anderen Sprache außer Chinesisch (traditionell), Kantonesisch (traditionell) oder Serbisch (Kyrillisch)
    • von Japanisch nach Koreanisch oder von Koreanisch nach Japanisch
    • von Japanisch bis Chinesisch vereinfacht und Chinesisch vereinfacht auf Japanisch
    • von Chinesisch vereinfacht in Chinesisch (traditionell) und chinesisch (traditionell) bis chinesisch (vereinfacht)
  • Sie erhalten keine Ausrichtung, wenn es sich bei dem Satz um eine vordefinierte Übersetzung handelt. Beispiel für eine vertonte Übersetzung ist This is a test, I love youund andere hochfrequente Sätze
  • Die Ausrichtung ist nicht verfügbar, wenn Sie einen der hier beschriebenen Ansätze zum Verhindern der Übersetzung anwenden

Abrufen von Satzgrenzen

Um Informationen über die Satzlänge im Quell- und im übersetzten Text zu erhalten, geben Sie includeSentenceLength=true in der Abfragezeichenfolge an.

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.'}]"

Die Antwort lautet:

[
    {
        "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]}
            }
        ]
    }
]

Übersetzen mit dynamischem Wörterbuch

Wenn Ihnen die Übersetzung eines Worts oder eines Ausdrucks bereits bekannt ist, können Sie diese als Markup in der Anforderung angeben. Das dynamische Wörterbuch ist nur für Eigennamen wie Personen- und Produktnamen sicher. Hinweis: Bei der Funktion „Dynamisches Wörterbuch“ wird die Groß-/Kleinschreibung berücksichtigt.

Das anzugebende Markup verwendet die folgende Syntax.

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

Betrachten Sie beispielsweise den englischen Satz "Das Wort wordomatic ist ein Wörterbucheintrag". Um das Wort wordomatic in der Übersetzung zu erhalten, senden Sie die Anforderung:

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.'}]"

Es wird folgendes Ergebnis ausgegeben:

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

Diese dynamische Wörterbuchfunktion funktioniert gleichermaßen mit textType=text oder mit textType=html. Sie sollte in Maßen eingesetzt werden. Für die Anpassung einer Übersetzung ist Custom Translator deutlich besser geeignet. Custom Translator nutzt den Kontext und statistische Wahrscheinlichkeiten in vollem Umfang. Sie erhalten bessere Ergebnisse, wenn Sie Trainingsdaten erstellen können, die den Kontext des Worts oder des Ausdrucks zeigen. Hier finden Sie weitere Informationen zu Custom Translator.

Nächste Schritte