首页 > 解决方案 > Google.Cloud.Translate.V3 只给出一个翻译结果

问题描述

我刚从 Google.Cloud.Translate.V2 切换到 Google.Cloud.Translate.V3,希望能得到多个翻译选项,但我只得到一个。

示例代码似乎适合它:

    foreach (Translation translation in response.Translations)
    {
       Console.WriteLine($"Translated text: {translation.TranslatedText}");
    }

例如,谷歌翻译网页翻译西班牙语“Cumplan”,主要翻译英语“meet”和下面窗格中列出的其他可能性,即:

Translations of cumplir
comply
cumplir, consentir, compadecer
fulfill
cumplir, realizar
accomplish
lograr, cumplir, realizar, conseguir, alcanzar, llevar a cabo
satisfy
satisfacer, cumplir, cumplir con, aplacar, contentar, liquidar
etc.

我怎样才能获得这些额外的翻译?有没有办法获得它列出的频率?

标签: google-translategoogle-translation-api

解决方案


云翻译 API 不支持所有替代翻译——这让我很懊恼——所以你无法获得它们(截至 2020 年 10 月)。

对“多个”翻译的支持是指 API 支持您传递要翻译的字符串列表,因此可以返回包含您发送的每个字符串的翻译的响应。

该 API 支持相当大的文本块的翻译,所以如果它返回一个包含所有可能翻译的简单列表,它会非常长。如果整个文本中只有三个单词有五种可能的翻译而不是一种,那么您将有 125 种不同的可能性。需要一个更复杂的数据结构来捕获所有合理的替代方案。

请注意,围绕此问题有一些现有的功能请求,您可以通过在此处“加星标”来查看并表明您对它们的兴趣。


推荐阅读