帮助与文档 > 产品文档 > 自然语言翻译服务 > API文档 > 大模型翻译
大模型翻译

大模型翻译 API 简介

概念解释

大型模型翻译:翻译的好助手,使用此服务可以完成翻译、润色、扩写等功能。API可以处理各种复杂的语言结构、词汇和语境,提供高质量的翻译结果。 同时,可以根据用户的需 求和偏好进行定制化的翻译。用户可以通过调整参数、提供上下文信息或者进行反馈,使翻译结果更符合个人或特 定领域的要求,从而实现更加精准、个性化的翻译体验。

说明

Hi,您好,欢迎使用有道智云翻译API接口服务。如果您想快速体验服务,建议您前往翻译体验中心 或者在体验中心右下侧找到小程序二维码,扫描进行体验。

本文档主要针对需要集成HTTP API的技术开发工程师,详细描述大模型翻译能力相关的技术内容。

如果您有与我们商务合作的需求,可以通过以下方式联系我们:

商务邮箱: AIcloud_Business@corp.youdao.com

如果您对文档内容有任何疑问,可以通过以下几种方式联系我们:

客服QQ:1906538062

智云翻译技术交流QQ 1群: 652880659

智云翻译技术交流QQ 2群: 669384425

智云翻译技术交流QQ 3群: 807539209

智云翻译技术交流QQ 4群: 936752411

联系邮箱: zhiyun@corp.youdao.com

温馨提示:

  • 本文档主要针对开发人员,接入测试前需要获取 应用ID应用密钥 ,请按照新手指南 获取。
  • 平台向每个账户赠送10元的体验金,实名再赠送40元体验金,供用户集成前测试所用,具体资费规则详见 大模型翻译服务报价

接口说明

大模型翻译API接口提供有道的翻译服务,包含了中英翻译、润色、扩写功能。您只需要通过调用大模型翻译API,传入待处理的文本,并指定要翻译的源语言(支持源语言语种自动检测)和目标语言种类,就可以得到相应的翻译结果。

大模型翻译API HTTPS地址:

https://openapi.youdao.com/llm_trans

协议须知

调用方在集成大模型翻译API时,请遵循以下规则。

规则描述
传输方式HTTPS
请求方式GET/POST
字符编码统一使用UTF-8 编码
请求格式表单
响应格式text/event-stream

接口调用参数

调用API需要向接口发送以下字段来访问服务。

字段名类型含义必填备注
itext待翻译文本True必须是UTF-8编码,限制5000字符
prompttext提示词False必须是UTF-8编码,限制1200字符、400单词
fromtext源语言True参考下方支持语言 (可设置为auto)
totext目标语言True参考下方支持语言
streamTypetext流式返回类型False参考下方 流式返回类型
appKeytext应用IDTrue可在应用管理 查看
salttext随机字符串,可使用UUID进行生产Trueuuid (可使用uuid生成)
signtext签名Truesha256(应用ID+input+salt+curtime+应用密钥)
signTypetext签名类型Truev3
curtimetext当前UTC时间戳(秒)TrueTimeStamp
handleOptiontext处理模式选项False参考下方 处理模式选项
polishOptiontext润色选项False参考下方 润色选项
expandOptiontext扩写选项False参考下方 扩写选项

签名生成方法如下:
signType=v3;
sign=sha256(应用ID+input+salt+curtime+应用密钥);
其中,input的计算方式为:input=i前10个字符 + i长度 + i后10个字符(当i长度大于20)或 input=i字符串(当i长度小于等于20);

不同语言获取时间戳,请参看此链接

如果对签名有疑问,可以参看各语言demo。

处理模式选项

handleOption取值含义
0使用通用翻译模型处理请求,通用翻译模型仅提供翻译功能,参数中的 prompt 仅对通用翻译模型生效
1使用专业翻译模型处理请求,专业翻译模型可提供翻译、润色、扩写功能,注意:当用户指定from、to为具体语种时,效果更好
2使用润色扩写模型处理请求,润色扩写模型可提供翻译、润色、扩写功能,并且最终翻译结果优于专业翻译模型,推荐使用。注意:当用户指定from、to为具体语种时,效果更好
  • “handleOption”参数在handleOption、polishOption、expandOption中优先级最高,即如果需要润色和扩写功能时,需要设置handleOption = “1” 或者 “2”。

润色选项

polishOption取值含义polishOption取值含义
0不润色
1专业化润色2专业化翻译
3口语化润色4口语化翻译
5简洁化润色6简洁化翻译
7丰富化润色8丰富化翻译
9计算机领域润色10计算机领域翻译
11医学领域润色12医学领域翻译
13生物领域润色14生物领域翻译
15机械领域润色16机械领域翻译

扩写选项

expandOption取值含义
0不扩写
1论文发表
2正式邮件
  • 润色和扩写不会同时生效,如果润色参数和扩写参数均存在时,润色优先。

流式返回类型

streamType取值含义
increment译文文本按照“增量形式”返回,默认按此方式返回。
full译文文本按照“全量形式”返回。
all同时返回“增量形式”、“全量形式”译文。
  • “增量形式”,“全量形式”可参考下方输出结果理解。如果使用专业翻译模型和润色扩写模型,仅支持增量返回。

输出结果

  • 输出结果为流式的ServerSentEvent。

正常结果的格式

部分event类型data结构说明
第1部分begin一个data示例:
{
"requestId": "1",
"type": "zh-CHS2en"
}
其中:
- type字段表示翻译语言方向
一个正常返回结果中,有且仅有一个begin event。
第2部分message一个data示例:
{
"transFull": "The weather",
"transIncre": "her"
}
其中:
- transFull字段表示“全量形式”译文
- transIncre字段表示“增量形式”译文
一个正常返回结果中,可能会有一个或一个以上的message event。
第3部分end一个data示例:
{
"requestId": "1",
"type": "zh-CHS2en",
"eventTokenUsage": {
"inputToken": 5,
"outputToken": 7,
"totalToken": 12
}
}
其中:
- type表示翻译的语言方向
- eventTokenUsage中记录了token的用量
 - inputToken表示输入token用量(prompt和i的token用量合计)
 - output表示输出token用量
 - totalToken表示总计token用量
一个正常返回结果中,有且仅有一个end event。

正常结果的示例

示例一:“增量形式”译文

event:begin

data:{"requestId":"11","type":"zh-CHS2en"}


event:message

data:{"transFull":null,"transIncre":"The"}


event:message

data:{"transFull":null,"transIncre":" w"}


event:message

data:{"transFull":null,"transIncre":"eat"}


event:message

data:{"transFull":null,"transIncre":"her"}


event:message

data:{"transFull":null,"transIncre":" is"}


event:message

data:{"transFull":null,"transIncre":" really"}


event:message

data:{"transFull":null,"transIncre":" nice"}


event:message

data:{"transFull":null,"transIncre":" today"}


event:message

data:{"transFull":null,"transIncre":"."}


event:end

data:{"requestId":"11","type":"zh-CHS2en","eventTokenUsage":{"inputToken":5,"outputToken":7,"totalToken":12}}

示例二:“全量形式”译文


event:begin

data:{"requestId":"12","type":"zh-CHS2en"}


event:message

data:{"transFull":"The","transIncre":null}


event:message

data:{"transFull":"The w","transIncre":null}


event:message

data:{"transFull":"The weat","transIncre":null}


event:message

data:{"transFull":"The weather","transIncre":null}


event:message

data:{"transFull":"The weather is","transIncre":null}


event:message

data:{"transFull":"The weather is really","transIncre":null}


event:message

data:{"transFull":"The weather is really nice","transIncre":null}


event:message

data:{"transFull":"The weather is really nice today","transIncre":null}


event:message

data:{"transFull":"The weather is really nice today.","transIncre":null}


event:end

data:{"requestId":"12","type":"zh-CHS2en","eventTokenUsage":{"inputToken":5,"outputToken":7,"totalToken":12}}

示例三:“增量形式”译文 + “全量形式”译文


event:begin

data:{"requestId":"13","type":"zh-CHS2en"}


event:message

data:{"transFull":"The","transIncre":"The"}


event:message

data:{"transFull":"The w","transIncre":" w"}


event:message

data:{"transFull":"The weat","transIncre":"eat"}


event:message

data:{"transFull":"The weather","transIncre":"her"}


event:message

data:{"transFull":"The weather is","transIncre":" is"}


event:message

data:{"transFull":"The weather is really","transIncre":" really"}


event:message

data:{"transFull":"The weather is really nice","transIncre":" nice"}


event:message

data:{"transFull":"The weather is really nice today","transIncre":" today"}


event:message

data:{"transFull":"The weather is really nice today.","transIncre":"."}


event:end

data:{"requestId":"13","type":"zh-CHS2en","eventTokenUsage":{"inputToken":5,"outputToken":7,"totalToken":12}}

异常结果的格式

一个异常返回的结果由以下三个部分组成:

部分event类型data结构说明
第1部分begin一个data示例:
{
"requestId": "1",
"type": "zh-CHS2en"
}
其中:
- type字段表示翻译语言方向,在异常返回时,type有可能是null
一个异常返回结果中,有且仅有一个begin event。
第2部分message一个data示例:
{
"transFull": "The weather",
"transIncre": "her"
}
其中:
- transFull字段表示“全量形式”译文
- transIncre字段表示“增量形式”译文
一个异常返回结果中,可能会有零个、一个或一个以上的message event。
第3部分error一个data示例:
{
"code": "40",
"msg": "不支持的语言方向!",
"eventTokenUsage": {
"inputToken": 2,
"outputToken": 3,
"totalToken": 5
}
}
其中:
- code表示错误码
- msg表示错误信息
- eventTokenUsage中记录了token的用量
 - inputToken表示输入token用量(prompt和i的token用量合计)
 - output表示输出token用量
 - totalToken表示总计token用量
当异常返回时,可能发生token使用,也可能没有token使用。
一个异常返回结果中,有且仅有一个error event。

异常结果的示例

event:begin

data:{"requestId":"14","type":null}


event:error

data:{"code":"40","msg":"不支持的语言方向!","eventTokenUsage":{"inputToken":0,"outputToken":0,"totalToken":0}}

支持语言

下表为各语言对应代码:

英文名中文名代码
English英语en
Chinese简体中文zh-CHS
auto自动识别auto

注意:
其中auto可以识别中文、英文,其他语种无法识别。

服务配置

单次查询最大字符数并发限制支持语言
50005qps中、英

错误代码列表

错误码含义
101缺少必填的参数,首先确保必填参数齐全,然后确认参数书写是否正确。
102不支持的语言类型
103翻译文本过长
104不支持的API类型
105不支持的签名类型
106不支持的响应类型
107不支持的传输加密类型
108应用ID无效,注册账号,登录后台创建应用并完成绑定,可获得应用ID和应用密钥等信息
109batchLog格式不正确
110无相关服务的有效应用,应用没有绑定服务应用,可以新建服务应用。注:某些服务的翻译结果发音需要tts服务,需要在控制台创建语音合成服务绑定应用后方能使用。
111开发者账号无效
112请求服务无效
113q不能为空
114不支持的图片传输方式
116strict字段取值无效,请参考文档填写正确参数值
201解密失败,可能为DES,BASE64,URLDecode的错误
202签名检验失败,如果确认应用ID和应用密钥的正确性,仍返回202,一般是编码问题。请确保翻译文本 q 为UTF-8编码.
203访问IP地址不在可访问IP列表
205请求的接口与应用的平台类型不一致,确保接入方式(Android SDK、IOS SDK、API)与创建的应用平台类型一致。如有疑问请参考入门指南
206因为时间戳无效导致签名校验失败
207重放请求
301辞典查询失败
302翻译查询失败
303服务端的其它异常
304翻译失败,请联系技术同学
308rejectFallback参数错误
309domain参数错误
310未开通领域翻译服务
401账户已经欠费,请进行账户充值
402offlinesdk不可用
411访问频率受限,请稍后访问
412长请求过于频繁,请稍后访问
2原文为空
20原文超过长度限制
30暂时无法完成翻译,请稍后重试!
40不支持的语言方向
2101没有有效的底层服务节点
3401涉及敏感内容
4001prompt长度超过限制
500未知错误,请提供详细数据信息,联系技术人员协助排查

常用语言 Demo

Java 示例

大模型翻译 Java demo

Python3 示例

大模型翻译 python3 demo

go 示例

大模型翻译 go demo