翻譯工具 3.0:字典查閱

提供單字和一些慣用片語的替代翻譯。 每個翻譯都有一個詞性和一份反向翻譯清單。 反向翻譯可讓使用者了解內容的翻譯。 字典範例作業允許進一步向下鑽研,以查看每組翻譯配對的範例用法。

要求 URL

POST 要求傳送至:

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

請參閱虛擬網路翻譯工具服務所選取的網路和私人端點組態和支援的支援。

要求參數

在查詢字串上傳遞的要求參數為:

查詢參數 描述
api-version 必要參數。
用戶端要求的 API 版本。 值必須為 3.0
必要參數。
指定輸入文字的語言。 來源語言必須是 dictionary 範圍內包含的支援語言之一。
to 必要參數。
指定輸出文字的語言。 目標語言必須是 dictionary 範圍內包含的支援語言之一。

要求標頭包括:

標題 描述
驗證標頭 必要的要求標頭。
請參閱 驗證
Content-Type 必要的要求標頭。
指定承載的內容類型。 可能的值為:application/json
Content-Length 必要的要求標頭。
要求本文的長度。
X-ClientTraceId 選擇項
用於識別唯一要求的 GUID,由用戶端產生。 若您使用名為 ClientTraceId 的查詢參數在查詢字串中包含追蹤識別碼,您就可以省略此標頭。

要求本文

要求的本文是 JSON 陣列。 每個陣列元素都是 JSON 物件,其具有名為 Text 的字串屬性,代表要查閱的字詞。

[
    {"Text":"fly"}
]

適用下列限制:

  • 陣列最多可以有 10 個項目。
  • 陣列專案的文字值不能超過 100 個字元,包括空格。

回應本文

成功的回應是輸入陣列的每個字串各有一個結果的 JSON 陣列。 結果物件包含下列屬性:

  • normalizedSource:一個字串,指定來源字詞的標準化形式。 例如,如果要求為 JOHN ,則正規化表單為 john 。 這個欄位的內容會變成查閱範例的輸入。

  • displaySource:字串,以最適合終端使用者顯示的形式指定來源字詞。 例如,如果輸入為 JOHN ,則顯示表單會反映名稱的一般拼字: John

  • translations:清單,包含來源字詞的翻譯。 清單的每個項目是具有下列屬性的物件:

  • normalizedTarget:字串,指定這個字詞在目標語言中的的標準化形式。 這個值應該作為查閱範例的輸入。

  • displayTarget:字串,以目標語言和最適合終端使用者顯示的形式指定字詞。 一般而言,這個屬性只會與 normalizedTarget 大寫不同的 。 例如, 之類的 Juan 適當名詞具有 normalizedTarget = "juan"displayTarget = "Juan"

  • posTag:字串,將這個字詞與詞性標籤建立關聯。

    標籤名稱 Description
    ADJ 形容詞
    ADV 副詞
    CONJ 連接詞
    DET 限定詞
    MODAL 動詞
    NOUN 名詞
    PREP 介系詞
    PRON 代名詞
    VERB 動詞
    OTHER 其他

    請注意,這些標記是英文端的聲控標籤,然後針對每個來源/目標群組採用最頻繁的標記。 因此,若人們經常將西班牙文字組翻譯成英文中的不同詞性標籤,則標籤最後可能會發生錯誤 (相對於西班牙文字組)。

  • confidence:介於 0.0 和 1.0 之間的值,代表該翻譯配對的「信賴度」 (或更精確地「定型資料中的機率」) 。 某個來源字組的信賴度分數總和不一定加總為 1.0。

  • prefixWord:字串,指定要顯示為翻譯前置詞的字組。 目前,此屬性是名詞的性別判斷器,以具有性別決定元的語言表示。 例如,西班牙文字 mosca 的前置詞是 la ,因為 mosca 是西班牙文中的女性名詞。 這個值只取決於翻譯,而不是來源。 如果沒有前置詞,則為空字串。

  • backTranslations:清單,包含目標的「反向翻譯」。 例如,目標可翻譯成的來源字組。 此清單保證包含要求的來源單字 (例如,如果查閱的來源單字是 fly ,則保證 fly 清單中 backTranslations) 。 不過,不保證在第一個位置,而且通常不是。 backTranslations 清單的每個項目都是以下列屬性描述的物件:

    • normalizedText:字串,指定來源字詞的標準化形式,其為目標的反向翻譯。 這個值應該作為查閱範例的輸入。

    • displayText:字串,以最適合終端使用者顯示的形式指定其為目標反向翻譯的來源字詞。

    • numExamples:整數,代表可供此翻譯配對使用的範例數目。 您必須透過個別呼叫查閱範例來擷取實際範例。 此數目主要是為了方便在 UX 中顯示。 例如,如果範例數目大於零,則使用者介面可能會將超連結加入回轉。 如果沒有範例,則後臺翻譯會顯示為純文字。 呼叫 查閱範例 所傳回的實際範例數目可能小於 numExamples ,因為可能會即時套用更多篩選來移除「不良」範例。

    • frequencyCount:整數,代表這個翻譯配對在資料中的頻率。 此欄位的主要用途是為使用者介面提供排序反向翻譯的方法,讓最常用的字詞成為第一個。

      注意

      若所要查詢的字詞不存在於字典中,回應會是 200 (良好),但 translations 清單卻是空清單。

範例

此範例示範如何在英文詞彙 fly 的西班牙文中查閱替代翻譯。

curl -X POST "https://api.cognitive.microsofttranslator.com/dictionary/lookup?api-version=3.0&from=en&to=es" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json" -d "[{'Text':'fly'}]"

回應本文 (為了清楚緣故已縮減) 如下:

[
    {
        "normalizedSource":"fly",
        "displaySource":"fly",
        "translations":[
            {
                "normalizedTarget":"volar",
                "displayTarget":"volar",
                "posTag":"VERB",
                "confidence":0.4081,
                "prefixWord":"",
                "backTranslations":[
                    {"normalizedText":"fly","displayText":"fly","numExamples":15,"frequencyCount":4637},
                    {"normalizedText":"flying","displayText":"flying","numExamples":15,"frequencyCount":1365},
                    {"normalizedText":"blow","displayText":"blow","numExamples":15,"frequencyCount":503},
                    {"normalizedText":"flight","displayText":"flight","numExamples":15,"frequencyCount":135}
                ]
            },
            {
                "normalizedTarget":"mosca",
                "displayTarget":"mosca",
                "posTag":"NOUN",
                "confidence":0.2668,
                "prefixWord":"",
                "backTranslations":[
                    {"normalizedText":"fly","displayText":"fly","numExamples":15,"frequencyCount":1697},
                    {"normalizedText":"flyweight","displayText":"flyweight","numExamples":0,"frequencyCount":48},
                    {"normalizedText":"flies","displayText":"flies","numExamples":9,"frequencyCount":34}
                ]
            },
            //
            // ...list abbreviated for documentation clarity
            //
        ]
    }
]

此範例顯示當查閱的字詞不存在於有效的字典組時,會發生什麼情況。

curl -X POST "https://api.cognitive.microsofttranslator.com/dictionary/lookup?api-version=3.0&from=en&to=es" -H "X-ClientTraceId: 875030C7-5380-40B8-8A03-63DACCF69C11" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json" -d "[{'Text':'fly123456'}]"

由於字典中找不到字詞,所以回應主體會包含空 translations 的清單。

[
    {
        "normalizedSource":"fly123456",
        "displaySource":"fly123456",
        "translations":[]
    }
]