24.11.12
实验一:百度机器翻译SDK实验
一、实验要求
任务一:下载配置百度翻译Java相关库及环境(占10%)。
任务二:了解百度翻译相关功能并进行总结,包括文本翻译-通用版和文本翻译-词典版(占20%)。
任务三:完成百度翻译相关功能代码并测试调用,要求可以实现中文翻译成英文,英文翻译成中文(占30%)。
任务四:完成百度翻译GUI相关功能代码并测试调用,要求可以实现中文翻译成英文,英文翻译成中文(占30%)。
实验总结:(占10%)
二、实验步骤
任务一:
百度翻译并没有自己的库,只需要在pom文件导入相应的依赖即可
请求格式设置为json格式,字符编码为utf-8
请求参数
参数 类型 是否必须 描述 备注
from text 是 翻译源语言 可设置为auto
to text 是 翻译目标语言 不可设置为auto
q text 是 请求翻译query 单次请求最大长度为6000字符
termIds text 否 术语库id 一次请求最多支持10个术语库,中间用英文逗号隔开;若相同的术语出现在多个术语库中,则排在前面的术语库生效优先级高;术语库需在控制台进行编辑
返回参数:
- 正常返回
参数 类型 是否必须 描述 备注
log_id uint64 是 唯一的log id,用于问题定位
result object 是 返回结果json串,其内包含要调用的各个模型服务的返回结果
+from text 是 源语种方向
+to text 是 目标语种方向
+trans_result array 是 翻译结果
++src text 是 翻译原文 源query中若存在换行符号,翻译结果会分段返回
++dst text 是 译文
重点关注dst和src即可 - 异常返回
参数 类型 是否必须 描述
log_id uint64 是 唯一的log id,用于问题定位
error_msg text 是 错误消息体
error_code text 是 错误码
文本翻译-词典版
在文本翻译-通用版的基础上,提供词典资源和语音合成资源。
词典资源 词典分中英词典,由于每个词属性不同,词典结果不一定包含所有部分。 如源语言为中文,词典数据包括:拼音、词性、中文释义、英文释义、近义词等资源。 如源语言为英文,词典数据包括:英文释义、中文释义、音标、核心词汇类别等。
语音合成资源: 语音合成资源包含 query 原文、译文的发音,支持中文、英文,以 mp3 文件格式提供。
请求 URL:https://aip.baidubce.com/rpc/2.0/mt/texttrans-with-dict/v1
二者请求方式和返回结果大差不差
任务三:
直接运行main方法
任务四
上边输入待翻译语句,选择中英还是英中翻译,点击翻译稍等片刻
三、实验总结
通过这次实验我掌握了如何通过网络请求调用官方提供的一些api接口,通过参考官方提供的使用示例完成了代码设计,在进行JavaGUI编程的时候由于jdk在17版本以后默认没有自动安装图形库,所以需要自己手动下载javafx的sdk,并在虚拟机启动选项里面配置如下--module-path E:/devTools/Java/javafx-sdk-17.0.13/lib --add-modules javafx.controls 之后就成功运行了