java_免费文本翻译API_小牛翻译

目录

前言

 开始集成API

纯文本翻译接口

双语对照翻译接口

指定术语翻译接口

总结


前言

        网络上对百度,有道等的文本翻译API集成的文章比较多,所以集成的第一篇选择了小牛翻译的文本翻译API。

        小牛翻译文本翻译API,支持388个语种,对外提供了5个文本相关的接口,有纯文本的,双语对照的接口,文本是xml格式的,还有能够自动识别原语和指定术语词典的。

java_免费文本翻译API_小牛翻译_第1张图片

 开始集成API

1、找到自己的apikey,登录小牛翻译云平台(小牛翻译开放平台),登陆后找到右上角的控制台,进入控制台后,找到菜单栏中的个人中心,就得到API-KEY啦。但是他是隐藏的,需要操作让他显示出来。

2、写几个简单的小例子

纯文本翻译接口
	public static void main(String[] args) {
		RestTemplate restTemplate = new RestTemplate();
		String url = "https://api.niutrans.com/NiuTransServer/translation";
		Map map = new HashMap();
		map.put("from","zh");
		map.put("to","en");
		map.put("apikey","这里要换成自己的apikey");
		map.put("src_text","你好世界");
		ResponseEntity stringResponseEntity = restTemplate.postForEntity(url, map, String.class);
		System.out.println(stringResponseEntity.getBody());
	}

得到的结果是这样的:

{
	"tgt_text": "Hello world",
	"from": "zh",
	"to": "en"
}
双语对照翻译接口
public static void main(String[] args) {
		RestTemplate restTemplate = new RestTemplate();
		String url = "https://api.niutrans.com/NiuTransServer/translationAlign";
		Map map = new HashMap();
		map.put("from","zh");
		map.put("to","en");
		map.put("apikey","你的apikey");
		map.put("src_text","你好世界!我爱祖国");
		ResponseEntity stringResponseEntity = restTemplate.postForEntity(url, map, String.class);
		System.out.println(stringResponseEntity.getBody());
	}

得到的结果是这样的:这个接口得到的句子是按照句子对照的结构。

{
	"tgt_text": "Hello world! I love my motherland",
	"from": "zh",
	"to": "en",
	"align": {
		"0": {
			"0": {
				"tgt": "Hello world! ",
				"src": "你好世界!"
			},
			"1": {
				"tgt": "I love my motherland ",
				"src": "我爱祖国"
			}
		}
	}
}
指定术语翻译接口
	public static void main(String[] args) {
		RestTemplate restTemplate = new RestTemplate();
		String url = "https://api.niutrans.com/NiuTransServer/translation";
		Map map = new HashMap();
		map.put("from","zh");
		map.put("to","en");
		map.put("apikey","你的apikey");
		map.put("src_text","你好世界");
		map.put("dictflag",1);
		map.put("dict","{\"你好\":\"nihao\"}");
		ResponseEntity stringResponseEntity = restTemplate.postForEntity(url, map, String.class);
		System.out.println(stringResponseEntity.getBody());
	}

 得到的结果是这样的:把你好,翻译成我想要的字符串"nihao"啦~

{
	"tgt_text": "Nihao World",
	"from": "zh",
	"to": "en",
	"align": {
		"0": {
			"0": {
				"tgt": "Nihao World ",
				"src": "你好世界"
			}
		}
	}
}

总结

        小牛翻译API调用给我的感觉比较简单,集成也比较方便。使用API的QPS是50,每次翻译的句子长度不能大于5000。总的来说够用的。调用是要扣字符流量的,但是平台贴心的每天都会赠送20万,在集成测试阶段,用着没有压力。

        送上官网文档的连接:小牛翻译开放平台 - 机器翻译找小牛

你可能感兴趣的:(第三方工具使用,java,开发语言,机器学习,神经网络,自然语言处理,机器翻译,transformer)