### 3.4.5 翻译类技能 #### (1) 功能说明 技能列表 |技能名称|service|功能介绍| |---------|--------|---------| |中译英|translation|用于单词和句子的中译英。1. 命令模式。用户说【中译英模式】,则翻译模式进行;退出翻译时,用户需说【退出】即可。2. 无需启动翻译模式的自然语义翻译。例如:用户说“xxx的英文”等即可实现即时翻译。| |英译汉|translation_en|用于单词和句子的英译汉。命令模式。用户说【英译汉模式】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |古文翻译|ch_wyw|用于中文词语和句子的文言文翻译。用户说【古文翻译】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译阿拉伯语|ch_ara|用于单词和句子的中译阿拉伯语。用户说【中译阿拉伯语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译爱沙尼亚语|ch_est|用于单词和句子的中译爱沙尼亚语。用户说【中译爱沙尼亚语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译保加利亚语|ch_bul|用于单词和句子的中译保加利亚语。用户说【中译保加利亚语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译波兰语|ch_pl|用于单词和句子的中译波兰语。用户说【中译波兰语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译丹麦语|ch_dan|用于单词和句子的中译丹麦语。用户说【中译丹麦语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译德|ch_de|用于单词和句子的中译德。用户说【中译德】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译俄|ch_ru|用于单词和句子的中译俄。用户说【中译俄】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译法|ch_fra|用于单词和句子的中译法。用户说【中译法】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译芬兰语|ch_fin|用于单词和句子的中译芬兰语。用户说【中译芬兰语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译韩|translation_kor|用于单词和句子的中译韩。用户说【中译韩】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译荷兰语|ch_nl|用于单词和句子的中译荷兰语。用户说【中译荷兰语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译捷克语|ch_cs|用于单词和句子的中译捷克语。用户说【中译捷克语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译罗马尼亚语|ch_rom|用于单词和句子的中译罗马尼亚语。用户说【中译罗马尼亚语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译葡|ch_pt|用于单词和句子的中译葡萄牙语。用户说【中译葡】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译日|translation_jp|用于单词和句子的中译日。用户说【中译日】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译瑞典语|ch_swe|用于单词和句子的中译瑞典语。用户说【中译瑞典语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译斯洛文尼亚语|ch_slo|用于单词和句子的中译斯洛文尼亚语。用户说【中译斯洛文尼亚语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译泰|ch_th|用于单词和句子的中译泰。用户说【中译泰】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译西|ch_spa|用于单词和句子的中译西班牙语。用户说【中译西】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译希腊语|ch_el|用于单词和句子的中译希腊语。用户说【中译希腊语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译越南语|ch_vie|用于单词和句子的中译越南语。用户说【中译越南语】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译粤|ch_yue|用于词语和句子的中文译粤语。用户说【中译粤】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| |中译意|ch_it|用于单词和句子的中译意大利语。用户说【中译意】,则翻译模式进行;退出翻译时,用户需说【退出】即可。| #### (2) 接口说明 **请求方法** * POST **请求地址** * http://api.ruyi.ai/v1/message **请求参数说明** |参数名 |参数类型 | 是否必须 |参数说明 | :-----| :---| :---:|:----- |q |String| 是| 自然语言表达,例如“中译英”,"你知道苹果的英文吗"等 |app_key| String|是 |应用开发者秘钥,注册开发者后台账号,建立虚拟助理后获得 |user_id |String| 是 |用户唯一标识,便于支持个性化语义解析。建议开发者使用 UUID 字符,且不同用户必须用不同的 user_id,防止意图串。 #### (3) 返回说明 **返回参数说明** |名称 |类型| 说明 |:---|:---|:--- |code |Integer | 返回代码 |msg | String |返回代码描述 |parameters|JSON Object |解析到的实体以及服务说明 |action|String|服务的接口名称 |name| String|匹配的意图名称 |result | JSON Object| 接口返回内容 |outputs| Array| 服务输出结果,微信端使用 type 类型为 wechat 开头的内容;硬件端收到所有内容,依据需求解析使用 **返回代码说明** |返回代码 |错误类型|说明 |:---|:---|:--- |0/200 |成功 |请求成功 |400 |无效请求 |某些必需参数缺失或参数值错误,详见msg字段 |401 |未授权 |授权失败,app_key 缺失或错误 |403 |请求被禁止|有效请求,但服务拒绝响应,请联系contact@ruyi.ai |408 |请求超时 |请求响应超时,一般响应时间设置为2000ms以内 |429 |短时间内大量访问 |短时间内请求数过多 |500 |内部错误 |服务处理异常 |503 |服务不可用|服务异常或正在维护 #### (4) 请求示例 **请求范例** _中译英模式_ _我喜欢吃东西_ _退出_ _中译英_ _你的名字叫什么_ _退出翻译_ _你能教我英语五星红旗怎么说吗 (注:只有中译英支持此模式)_ _怎么用英语表达遇上你是我最美好的事(注:只有中译英支持此模式)_ _英语里的大灰狼怎么写(注:只有中译英支持此模式)_ **请求示例** (进入中译英模式) * http://api.ruyi.ai/ruyi-api/v1/message?app_key=APP_KEY&user_id=user0&q=中译英 返回结果 ```json { "code": 0, "msg": "ok", "result": { "_text": "中译英", "msg_id": "68d7a91e-9147-49e6-a20d-d2b434f71724", "intents": [{ "parameters": { "service": "translation" }, "action": "asking", "name": "翻译_中译英_进行1", "result": { "text": "已经开启翻译模式啦,请直接讲出您要翻译的词汇或句子,若要退出翻译模式,请讲【退出】或【退出翻译】。", "type": "dialog" }, "outputs": [{ "type": "wechat.text", "property": { "text": "已经开启翻译模式啦,请直接讲出您要翻译的词汇或句子,若要退出翻译模式,请讲【退出】或【退出翻译】。" } }, { "type": "dialog", "property": { "text": "已经开启翻译模式啦,请直接讲出您要翻译的词汇或句子,若要退出翻译模式,请讲【退出】或【退出翻译】。", "emotion": "calm" } }], "score": "1.0", "scoreColor": "c4", "is_match": 1, "id": "133e8372-ef82-4b9d-bb7c-96b35ae169ea" }], "meta_process_milliseconds": 65 } } ``` **请求示例** (中译英过程) * http://api.ruyi.ai/ruyi-api/v1/message?app_key=APP_KEY&user_id=user0&q=你的名字叫什么 返回结果 ```json { "code": 0, "msg": "ok", "result": { "_text": "你的名字叫什么", "msg_id": "d6f15559-fd6b-428a-8e76-45d964d5ffba", "intents": [{ "parameters": { "q": "你的名字叫什么", "from": "zh", "to": "en", "any": "你的名字叫什么", "标签云": "你可以说:退出,退出翻译,翻译一下某某", "service": "translation" }, "action": "翻译", "name": "0_翻译_中译英_进行2", "result": { "code": 200, "response": { "from": "zh", "to": "en", "trans_result": [{ "src": "你的名字叫什么", "dst": "What's your name?" }] }, "text": "What's your name?", "type": "dialog" }, "outputs": [{ "type": "wechat.text", "property": { "text": "What's your name?" } }, { "type": "dialog", "property": { "text": "What's your name?", "emotion": "calm" } }], "score": "1.0", "scoreColor": "c4", "is_match": 1, "skill_id": "451074cb-7076-4c92-aa35-5c4ad1a870d1", "id": "a3413d3b-dc80-4156-afc2-955349eb0270" }], "meta_process_milliseconds": 174 } } ``` **请求示例** (中译英退出) * http://api.ruyi.ai/ruyi-api/v1/message?app_key=APP_KEY&user_id=user0&q=退出翻译 返回结果 ```json { "code": 0, "msg": "ok", "result": { "_text": "退出翻译", "msg_id": "f4ce39e9-7221-464c-9e87-d6ad6c29fe3f", "intents": [{ "parameters": { "service": "translation" }, "action": "anwser", "name": "翻译_中译英_结束", "result": { "text": "翻译模式已结束", "type": "dialog" }, "outputs": [{ "type": "wechat.text", "property": { "text": "翻译模式已结束" } }, { "type": "dialog", "property": { "text": "翻译模式已结束", "emotion": "calm" } }], "score": "1.0", "scoreColor": "c4", "is_match": 1, "id": "d2b3c77c-c677-4528-8a98-c6037cbac5d3" }], "meta_process_milliseconds": 40 } } ``` **请求示例** (一句话翻译) * http://api.ruyi.ai/ruyi-api/v1/message?app_key=APP_KEY&user_id=user0&q=你知道苹果用英语怎么讲 返回结果 ```json { "code": 0, "msg": "ok", "result": { "_text": "苹果用英语怎么讲", "msg_id": "dc0020d8-ec73-48a5-95e5-361e848ab9e1", "intents": [{ "parameters": { "q": "苹果", "from": "zh", "to": "en", "any": "苹果", "标签云": "你可以说:退出,退出翻译,翻译一下某某", "service": "translation" }, "action": "翻译", "name": "2_翻译_中译英_不接受暗号版本", "result": { "code": 200, "response": { "from": "zh", "to": "en", "trans_result": [{ "src": "苹果", "dst": "Apple" }] }, "text": "Apple", "type": "dialog" }, "outputs": [{ "type": "wechat.text", "property": { "text": "Apple" } }, { "type": "dialog", "property": { "text": "Apple", "emotion": "calm" } }], "score": "1.0", "scoreColor": "c4", "is_match": 1, "skill_id": "451074cb-7076-4c92-aa35-5c4ad1a870d1", "id": "b432ea7d-4e69-415f-968c-53f200e3ee4c" }], "meta_process_milliseconds": 192 } } ``` **详细参数说明** |名称|类型|说明| |:---|:---|:--- |service | String |服务名称 |from|String|来源,“zh”是中文 |to|String|结果,“en”是英文 |src|String|中文的来源文本 |dst|String|翻译成英文的结果文本