Python Google Translate API error : How to translate a large amount of data
Python Google Translate API error : How to translate a large amount of data
我的问题
我想使用一种由反向翻译数据集组成的NLP数据增强方法。
基本上,我有一个大型数据集 (SNLI),由 1 100 000 个英语句子组成。我需要做的是:将这些句子翻译成一种语言,并将其翻译回英语。
我可能必须为多种语言执行此操作。所以我有很多的翻译工作要做。
我需要一个免费的解决方案。
到目前为止我做了什么
我尝试了几个 python 翻译模块,但由于最近 Google 翻译 API 的变化,大多数都不起作用。 googletrans seems to work if we apply this .
但是,它不适用于大数据集。 Google 限制为 15K 个字符(正如 , and this 所指出的)。第一个 link 显示了假定的解决方法。
我被屏蔽的地方
即使我应用 (每次迭代都初始化翻译器),它也不起作用,并且出现以下错误:
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
我试过使用代理和其他 Google 翻译 URL :
URLS = ['translate.google.com', 'translate.google.co.kr', 'translate.google.ac', 'translate.google.ad', 'translate.google.ae', ...]
proxies = { 'http': '1.243.64.63:48730', 'https': '59.11.98.253:42645', }
t = Translator(service_urls=URLS, proxies=proxies)
但这并没有改变任何东西。
备注
我的问题可能来自于我正在使用多线程:100 名工作人员翻译整个数据集。如果他们并行工作,也许他们一起使用超过 15k 个字符。
但我应该使用多线程。如果我不这样做,翻译整个数据集将需要几周的时间...
我的问题
如何修复此错误以便我可以翻译所有句子?
如果不可能,对于这么大的数据集,是否有任何免费的替代方法,可以在 Python 中获得机器翻译(不强制使用 Google 翻译)?
一百万个字符是相当多的文本要翻译。
目前,Google Cloud Translation V3 提供了您可能想要使用的 free tier quota(每月 1-500,000 个免费字符)。由于它似乎不足以满足您的用例,您可能需要创建多个结算帐户或等待一个月来翻译更多文本。
查看 this link 了解如何使用 python 执行文本翻译。
我的问题
我想使用一种由反向翻译数据集组成的NLP数据增强方法。
基本上,我有一个大型数据集 (SNLI),由 1 100 000 个英语句子组成。我需要做的是:将这些句子翻译成一种语言,并将其翻译回英语。
我可能必须为多种语言执行此操作。所以我有很多的翻译工作要做。
我需要一个免费的解决方案。
到目前为止我做了什么
我尝试了几个 python 翻译模块,但由于最近 Google 翻译 API 的变化,大多数都不起作用。 googletrans seems to work if we apply this
但是,它不适用于大数据集。 Google 限制为 15K 个字符(正如
我被屏蔽的地方
即使我应用
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
我试过使用代理和其他 Google 翻译 URL :
URLS = ['translate.google.com', 'translate.google.co.kr', 'translate.google.ac', 'translate.google.ad', 'translate.google.ae', ...]
proxies = { 'http': '1.243.64.63:48730', 'https': '59.11.98.253:42645', }
t = Translator(service_urls=URLS, proxies=proxies)
但这并没有改变任何东西。
备注
我的问题可能来自于我正在使用多线程:100 名工作人员翻译整个数据集。如果他们并行工作,也许他们一起使用超过 15k 个字符。
但我应该使用多线程。如果我不这样做,翻译整个数据集将需要几周的时间...
我的问题
如何修复此错误以便我可以翻译所有句子?
如果不可能,对于这么大的数据集,是否有任何免费的替代方法,可以在 Python 中获得机器翻译(不强制使用 Google 翻译)?
一百万个字符是相当多的文本要翻译。
目前,Google Cloud Translation V3 提供了您可能想要使用的 free tier quota(每月 1-500,000 个免费字符)。由于它似乎不足以满足您的用例,您可能需要创建多个结算帐户或等待一个月来翻译更多文本。
查看 this link 了解如何使用 python 执行文本翻译。