我需要将相当大的一组记录从各种语言(事先不知道语言)翻译成英语。该集合大约有3M条记录,每条记录都是相当短的文本。它不是详尽的文本,主要只是项目描述。诸如“诺基亚黑的移动路由器3G”之类的东西,以各种语言编写(虽然不太奇怪,但主要是德语,法语,阿拉伯语,俄语等)。我也不知道每条记录是用哪种语言写的,所以我需要依靠自动语言检测。
到目前为止,我可以使用Google Cloud API
来完成此任务这非常简单,我一次只将一条记录传递给API,而无需指定源语言,并且能够根据需要正确翻译记录。
这里的问题是该过程非常缓慢。我们选择单个文本字符串,连接到API,发送过来,获取结果并存储。每次记录处理都会增加与API进行通信的开销,并且当您执行数百万条记录的转换时,确实需要很长时间。
我想知道有什么方法可以批量执行此操作吗?也许一次发送大量字符串记录进行翻译,以最大程度地减少与Google API通信的开销?还是有某种方法可以将文件和所有我需要翻译并下载结果的记录直接直接上载到Google?
答案 0 :(得分:1)
现在Google翻译提供了批处理请求API,该API可以接受云存储中的文件 https://cloud.google.com/translate/docs/advanced/batch-translation