上云无忧 > 文档中心 > 百度智能云文档翻译API文档
文档翻译
百度智能云文档翻译API文档

文档简介:
接口描述: 文档翻译API结合高还原度的文档解析和机器翻译技术,提供多格式、多语种、高质量的文档翻译服务。支持Word、PPT、Excel、HTML、XML、TXT、PDF等格式和200+语种互译。只需上传文档并指定目标语言、文档格式等参数,即可快速获得翻译后的文档。
*此产品及展示信息均由百度智能云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

接口描述

文档翻译API结合高还原度的文档解析和机器翻译技术,提供多格式、多语种、高质量的文档翻译服务。支持Word、PPT、Excel、HTML、XML、TXT、PDF等格式和200+语种互译。只需上传文档并指定目标语言、文档格式等参数,即可快速获得翻译后的文档。

文档翻译API包括2个接口,创建文档翻译接口和查询文档翻译接口

  • 创建文档翻译接口:传入文档的Base64编码,指定源语言与目标语言等参数,创建文档翻译任务。
  • 查询文档翻译接口:查询文档翻译任务状态,若查询到文档翻译状态为成功,则可直接下载返回结果中的译文链接。

创建文档翻译接口

请求说明

请求示例

HTTP 方法:POST

请求 URL:https://aip.baidubce.com/rpc/2.0/mt/v2/doc-translation/create

URL参数:

参数 值
access_token 通过API Key和Secret Key获取的access_token,参考“Access Token获取”

Header如下:

参数 值
Content-Type application/json;charset=utf-8

Body中放置请求参数,参数详情如下:

请求参数

参数 类型 是否必须 示例 备注
from string 是 en 源语言,具体参考语种列表,可设置为auto
to string 是 zh 目标语言,具体参考语种列表
domain string 否 垂直领域,支持的领域具体参考垂直领域映射表,不传则为通用领域
input object 是
input.content string 是 SGVsbG8= 输入的文件内容 base64 编码后的字符串。大小不超过 50M
input.format string 是 pdf 输入的文件类型,支持的文件类型具体参考“文档输出类型映射表 - 输入类型”
input.filename string 否 测试文件.pdf 输入的文件名称,不传则随机生成只用于“下载原文”功能时生成的文件名,不会用来使用后缀名进行文件格式判断
output object 否
output.filename_prefix string 否 测试文件 输出的文件名称,不传则通过默认生成规则生成。默认生成规则:译文_前缀名(input.filename).后缀名
output.formats list 否 ["docx"] 输出的文件类型,具体参考下方“文档输出类型映射表-输出类型”,不传则按照默认方案,目前仅支持传一个

例如body中请求参数:

{
    "from": "en",
    "to": "zh",
    "domain": "general",
    "input": {
        "content": "SGVsbG8=",
        "format": "pdf",
        "filename": "测试文件.pdf"
    },
    "output": {
        "formats": ["docx"],
        "filename_prefix": "测试文件译文"
    }
}

请求代码示例

<?php /**
 * Send post request.
 *
 * @param string $url
 * @param string $from
 * @param string $to
 * @param string $content
 * @param string $formay
 * @return mixed
 */ function sendPostRequest(string $url, string $from, string $to, string $content,
 string $format) { $input = [ 'content' => $content, 'format' => $format ]; $header = [ 
'Content-Type' => 'application/json' ]; $formData = json_encode([ 'from' => $from, 'to'
 => $to, 'input' => $input ]); $ch = curl_init(); curl_setopt($ch, CURLOPT_HTTPHEADER, 
$header); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $formData); 
curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, 
CURLOPT_RETURNTRANSFER, 1); $res = curl_exec($ch); curl_close($ch); return $res; } $token = 
'[调用鉴权接口获取的token]'; // example: xxx $url = 'https://aip.baidubce.com/rpc/2.0/mt/v2/doc
-translation/create?access_token=' . $token; $from = '[源语言]'; // example: zh $to = '[目标语言]';
 // example: en $content = '[待翻译文档base64编码]'; $format = '[文档格式]'; $res = sendPostRequest
($url, $from, $to, $content, $format); var_dump($res);

返回说明

正常返回

{
    "result": {
        "id": "c7apvv4ivcpv3hudhvsg"  // 文档翻译任务ID
    },
    "log_id": 1478723275122769663
}

异常返回

{
    "error_code": 10001,
    "error_msg": "Validation failed",  // 参数检验失败
    "log_id": 1478723447121035370
}

查询文档翻译接口

请求说明

请求示例

HTTP 方法:POST

请求 URL:https://aip.baidubce.com/rpc/2.0/mt/v2/doc-translation/query

URL 参数:

参数 值
access_token 通过API Key和Secret Key获取的access_token,参考“Access Token获取”

Header 如下:

参数 值
Content-Type application/json;charset=utf-8

Body中放置请求参数,参数详情如下:

请求参数

参数 类型 是否必须 示例 备注
id string 是 1a2b3c4d 提交文档时返回的任务ID

例如body中请求参数:

{
    "id": "1a2b3c4d"
}

请求代码示例

<?php /**
 * Send post request.
 *
 * @param string $url
 * @param string $id
 * @return mixed
 */ function sendPostRequest(string $url, string $id) { $header = [ 'Content-Type' => 
'application/json' ]; $formData = json_encode([ 'id' => $id ]); $ch = curl_init(); curl_setopt($ch, 
CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS,
 $formData); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_TIMEOUT, 10);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $res = curl_exec($ch); curl_close($ch); return $res; } 
$token = '[调用鉴权接口获取的token]';// example: xxx $url = 'https://aip.baidubce.com/rpc/2.
0/mt/v2/doc-translation/query?access_token=' . $token; $id = '[文档id]'; 
$res = sendPostRequest($url, $id); var_dump($res);

返回说明

正常返回

参数 类型 是否必须
log_id uint64 是
result object 是

其中result结构为:

名称 类型 是否一定存在 示例 备注
data object 否 请求结果数据集,当且仅当code为 0 时存在
data.id string 是 1a2b3c4d 任务ID
data.from string 是 en 源语言,具体参考语种列表,若源语言设置为auto时,可自动检测出语种
data.to string 是 zh 目标语言,具体参考语种列表
data.domain string 否 垂直领域,不传则为通用领域,支持的领域具体参考“垂直领域映射表”
data.input object 是
data.input.format string 是 pdf 输入的文件类型,支持的文件类型具体参考 “文档输出类型映射表 - 输入类型”
data.input.filename string 是 测试文件 输入的文件名称,不传则随机生成
data.input.size integer 是 10987 输入的文件大小,单位为字节
data.input.character_count integer 否 5000 输入的文件字符数,具体规则参见附录
data.output object 是 输出信息
data.output.files object[] 否 译文文件信息,当且仅当文件翻译成功时存在
data.output.files[].format string 是 pdf 输出文件的格式
data.output.files[].filename string 是 测试文件译文.docx 输出的文件名称
data.output.files[].size string 否 输出的文件大小,当且仅当文件翻译成功时存在
data.output[].url string 否 输出的文件下载地址,当且仅当文件翻译成功时存在
data.status string 是 Succeeded 任务状态,参见文档翻译任务状态
data.reason string 是 Succeeded 对任务状态的补充说明
data.created_at integer 是 1626422326 文档上传时间,unix 时间戳(精度:秒)
data.updated_at integer 是 1626422326 任务最近一次状态更新时间,unix 时间戳(精度:秒)。Expired不会更新此时间
data.expired_at integer 是 1777422326 任务过期时间。任务过期后,文件会无法下载,即不会提供url相关的参数。若无过期时间则为0
  • 待翻译(NotStarted)
{
    "log_id": 1413409052597883633,
    "result": {
        "data": {
            "id": "1a2b3c4d",
            "from": "en",
            "to": "zh",
            "domain": "general",
            "input": {
                "format": "pdf",
                "filename": "测试文件.pdf"
            },
            "status": "NotStarted",
            "reason": "in queue",
            "created_at": 1626422326,
            "updated_at": 1626422340
        }
    }
}
  • 翻译中(Running,无字符数预统计):
{
    "log_id": 1413409052597883633,
    "result": {
        "data": {
            "id": "1a2b3c4d",
            "from": "en",
            "to": "zh",
            "domain": "general",
            "input": {
                "format": "pdf",
                "filename": "测试文件.pdf",
                "size": 10987
            },
            "status": "Running",
            "reason": "Running",
            "created_at": 1626422326,
            "updated_at": 1626422340
        }
    }
}
  • 翻译中(Running,有字符数预统计)
{
    "log_id": 1413409052597883633,
    "result": {
        "data": {
            "id": "1a2b3c4d",
            "from": "en",
            "to": "zh",
            "domain": "general",
            "input": {
                "format": "pdf",
                "filename": "测试文件.pdf",
                "size": 10987,
                "character_count": 5000
            },
            "status": "Running",
            "reason": "Running",
            "created_at": 1626422326,
            "updated_at": 1626422340,
            "annotation": "{\"user_id\": \"666\"}"
        }
    }
}
  • 翻译成功:
{
    "log_id": 1413409052597883633,
    "result": {
        "data": {
            "id": "1a2b3c4d",
            "from": "en",
            "to": "zh",
            "domain": "general",
            "input": {
                "format": "pdf",
                "filename": "测试文件.pdf",
                "size": 10987,
                "character_count": 5000
            },
            "output": {
                "files": [
                    {
                        "format": "docx",
                        "filename": "测试文件译文.docx",
                        "size": 14058,
                        "url": "https://xxx.com/测试文件译文.docx"
                    },
                    {
                        "format": "pdf",
                        "filename": "测试文件译文.pdf",
                        "size": 14058,
                        "url": "https://xxx.com/测试文件译文.pdf"
                    }
                ]
            },
            "status": "Succeeded",
            "reason": "Succeeded",
            "created_at": 1626422326,
            "updated_at": 1626422340,
            "expired_at": 1777422340
        }
    }
}
  • 翻译失败:
{
    "log_id": 1413409052597883633,
    "result": {
        "data": {
            "id": "1a2b3c4d",
            "from": "en",
            "to": "zh",
            "domain": "general",
            "input": {
                "format": "pdf",
                "filename": "测试文件.pdf",
                "size": 10987,
                "character_count": 5000
            },
            "status": "Failed",
            "reason": "文档解析失败",
            "created_at": 1626422326,
            "updated_at": 1626422340,
            "expired_at": 1777422340
        }
    }
}
  • 任务过期:
{
    "log_id": 1413409052597883633,
    "result": {
        "data": {
            "id": "1a2b3c4d",
            "from": "en",
            "to": "zh",
            "domain": "general",
            "input": {
                "format": "pdf",
                "filename": "测试文件.pdf",
                "size": 10987,
                "character_count": 5000
            },
            "status": "Failed",
            "reason": "文档解析失败",
            "created_at": 1626422326,
            "updated_at": 1626422340,
            "expired_at": 1777422340
        }
    }
}

异常返回

参数 类型 是否必须 描述 备注
log_id uint64 是 唯一的log id,用于问题定位
error_msg text 是 错误消息体 错误描述,具体可读信息
error_code uint64 是 错误码 错误状态码,具体错误参考 错误码。注意这个是请求query接口的状态码,不是任务的状态

例如:

{
    "log_id": 1413409052597883633,
    "error_msg": "Internal server error",
    "error_code": 10000
}
{
    "log_id": 1413409052597883633,
    "error_msg": "auth open api usage limit reached",
    "error_code": 31005
}

文档输出类型映射表

输入类型 输出类型 默认类型
doc docx,pdf docx
docx docx,pdf docx
pdf docx,pdf docx
xls xlsx xlsx
xlsx xlsx xlsx
html html html
htm html html
ppt pptx pptx
pptx pptx pptx
txt txt txt
xml xml xml

垂直领域映射表

名称 参数值
通用领域 general

错误码列表

接口流控及鉴权错误码

错误码 错误信息 描述 解决办法
1 Unknown error 未知错误 请重试
2 Service temporarily unavailable 服务处理超时 请重试
4 Open api request limit reached 集群超限额 请重试
6 no permission to access data 没有接口权限 请确认您调用的接口已经被赋权。企业认证生效时间为1小时左右,使用需要企业认证的服务,请等待生效后重试
18 Open api qps request limit reached QPS超限额 请降低您的调用频率
19 Open api total request limit reached 请求总量超限额 请检查当前可用字符/次数包额度
100 Invalid parameter 请求参数不合法 请检查请求参数是否正确,可能的原因是token拉取失败,无效的access token参数等
110 Access token invalid or no longer valid Access Token失效 token有效期为30天,注意需要定期更换,也可以每次请求都拉取新token
111 Access token expired Access token过期 token有效期为30天,注意需要定期更换,也可以每次请求都拉取新token

通用及业务错误码

错误码 错误信息 描述 解决办法
10000 Internal server error 服务器内部错误 请重试
10001 Validation failed 参数错误 请检查请求参数
10002 Internal server error 数据库错误 请重试
10003 Internal server error 缓存服务错误 请重试
10004 Too many requests 请求QPS超限制 请重试
20100 Resource storage failed 文件资源存储异常 请重试
20101 Publish queue failed 队列服务异常 请重试
282000 internal error 内部错误 请重试
282003 missing required parameter(s) 用户请求参数中缺少必填信息 检查请求参数是否包含全部必填字段
216100 invalid param 用户请求参数中的字段无效 检查请求参数字段格式
216202 input oversize 用户请求参数体过大 检查输入文档翻译大小,需小于50M
282004 invalid parameter(s) 用户查询时输入的user id与创建时不一致 输入正确且匹配的用户id和文档id
31001 auth unknown error 其他错误 请重试
31005 auth open api usage limit reached 用户用量超限 请检查当前可用字符/次数包额度
31006 auth internal error 鉴权流控内部错误 请重试

语种列表

**源语言语种不确定时可设置为 auto,目标语言语种不可设置为 auto**
中文首字母 名称 代码 语种检测 名称 代码 语种检测 名称 代码 语种检测
A 阿拉伯语 ara 是 爱尔兰语 gle 是 奥克语 oci 是
阿尔巴尼亚语 alb 是 阿尔及利亚阿拉伯语 arq 否 阿肯语 aka 否
阿拉贡语 arg 否 阿姆哈拉语 amh 是 阿萨姆语 asm 是
艾马拉语 aym 否 阿塞拜疆语 aze 是 阿斯图里亚斯语 ast 是
奥塞梯语 oss 否 爱沙尼亚语 est 是 奥杰布瓦语 oji 否
奥里亚语 ori 是 奥罗莫语 orm 否
B 波兰语 pl 是 波斯语 per 是 布列塔尼语 bre 是
巴什基尔语 bak 否 巴斯克语 baq 是 巴西葡萄牙语 pot 否
白俄罗斯语 bel 是 柏柏尔语 ber 是 邦板牙语 pam 否
保加利亚语 bul 是 北方萨米语 sme 否 北索托语 ped 否
本巴语 bem 否 比林语 bli 否 比斯拉马语 bis 否
俾路支语 bal 否 冰岛语 ice 是 波斯尼亚语 bos 是
博杰普尔语 bho 否
C 楚瓦什语 chv 否 聪加语 tso 否
D 丹麦语 dan 是 德语 de 是 鞑靼语 tat 是
掸语 sha 否 德顿语 tet 否 迪维希语 div 否
低地德语 log 是
E 俄语 ru 是
F 法语 fra 是 菲律宾语 fil 是 芬兰语 fin 是
梵语 san 否 弗留利语 fri 否 富拉尼语 ful 否
法罗语 fao 否
G 盖尔语 gla 否 刚果语 kon 否 高地索布语 ups 否
高棉语 hkm 是 格陵兰语 kal 否 格鲁吉亚语 geo 是
古吉拉特语 guj 是 古希腊语 gra 否 古英语 eno 否
瓜拉尼语 grn 否
H 韩语 kor 是 荷兰语 nl 是 胡帕语 hup 否
哈卡钦语 hak 否 海地语 ht 否
豪萨语 hau 否 黑山语 mot 否
J 吉尔吉斯语 kir 否 加利西亚语 glg 是 加拿大法语 frn 否
加泰罗尼亚语 cat 是 捷克语 cs 是
K 卡拜尔语 kab 是 卡纳达语 kan 是 卡努里语 kau 否
卡舒比语 kah 否 康瓦尔语 cor 否 科萨语 xho 是
科西嘉语 cos 否 克里克语 cre 否 克里米亚鞑靼语 cri 否
克林贡语 kli 否 克罗地亚语 hrv 是 克丘亚语 que 否
克什米尔语 kas 否 孔卡尼语 kok 否 库尔德语 kur 是
L 拉丁语 lat 是 老挝语 lao 否 罗马尼亚语 rom 是
拉特加莱语 lag 否 拉脱维亚语 lav 是 林堡语 lim 否
林加拉语 lin 否 卢干达语 lug 否 卢森堡语 ltz 否
卢森尼亚语 ruy 否 卢旺达语 kin 是 立陶宛语 lit 是
罗曼什语 roh 否 罗姆语 ro 否 逻辑语 loj 否
M 马来语 may 是 缅甸语 bur 是 马拉地语 mar 否
马拉加斯语 mg 是 马拉雅拉姆语 mal 是 马其顿语 mac 是
马绍尔语 mah 否 迈蒂利语 mai 是 曼克斯语 glv 否
毛里求斯克里奥尔语 mau 否 毛利语 mao 否 孟加拉语 ben 是
马耳他语 mlt 是 苗语 hmn 否
N 挪威语 nor 是 那不勒斯语 nea 否 南恩德贝莱语 nbl 否
南非荷兰语 afr 是 南索托语 sot 否 尼泊尔语 nep 是
P 葡萄牙语 pt 是 旁遮普语 pan 是 帕皮阿门托语 pap 否
普什图语 pus 否
Q 齐切瓦语 nya 否 契维语 twi 否 切罗基语 chr 否
R 日语 jp 是 瑞典语 swe 是
S 萨丁尼亚语 srd 否 萨摩亚语 sm 否 塞尔维亚-克罗地亚语 sec 否
塞尔维亚语 srp 是 桑海语 sol 否 僧伽罗语 sin 是
世界语 epo 是 书面挪威语 nob 是 斯洛伐克语 sk 是
斯洛文尼亚语 slo 是 斯瓦希里语 swa 是
索马里语 som 是 塞尔维亚语(西里尔) src 否
T 泰语 th 是 土耳其语 tr 是 塔吉克语 tgk 是
泰米尔语 tam 是 他加禄语 tgl 是 提格利尼亚语 tir 否
泰卢固语 tel 是 突尼斯阿拉伯语 tua 否 土库曼语 tuk 否
W 乌克兰语 ukr 是 瓦隆语 wln 是 威尔士语 wel 是
文达语 ven 否 沃洛夫语 wol 否 乌尔都语 urd 是
X 西班牙语 spa 是 希伯来语 heb 是 希腊语 el 是
匈牙利语 hu 是 西弗里斯语 fry 是 西里西亚语 sil 否
希利盖农语 hil 否 下索布语 los 否 夏威夷语 haw 否
新挪威语 nno 是 西非书面语 nqo 否 信德语 snd 否
修纳语 sna 否 宿务语 ceb 否 叙利亚语 syr 否
巽他语 sun 否
Y 英语 en 是 印地语 hi 是 印尼语 id 是
意大利语 it 是 越南语 vie 是 意第绪语 yid 否
因特语 ina 否 亚齐语 ach 否 印古什语 ing 否
伊博语 ibo 否 伊多语 ido 否 约鲁巴语 yor 否
亚美尼亚语 arm 是 伊努克提图特语 iku 否
伊朗语 ir 否
Z 中文(简体) zh 是 中文(繁体) cht 是 中文(文言文) wyw 是
中文(粤语) yue 是 扎扎其语 zaz 否 中古法语 frm 否
祖鲁语 zul 否 爪哇语 jav 否 自动检测 auto 是

相似文档
  • 接口描述: 基于业界领先的深度学习技术及翻译技术,提供多场景、多语种、高精度的整图识别+翻译服务。您只需传入图片,即可识别图片中的文字并进行翻译。
  • 接口描述: 语音翻译API集成语音识别、文本翻译、语音合成三大技术能力,可以将60秒以内的语音识别成文字并翻译成目标语言,支持译文语音播报。
  • 机器翻译各服务均提供一定额度的免费测试资源供测试使用,免费测试资源使用完毕可选择按照 预付费 和 后付费 方式进行计费,两种计费方式均可在 控制台 直接开通或购买,开通付费后默认使用按量后付费方式进行阶梯计费,如有购买对应服务的预付费资源包,则优先使用资源包额度,抵扣完毕后自动转为按量后付费方式。 【百度智能云】文本翻译 【百度智能云】文档翻译 【百度智能云】图片翻译 【百度智能云】语音翻译
  • 在 控制台-免费资源领取页 可领取免费测试资源。未实名认证 用户无免费测试调用量,个人认证 可领取 500 万字符,企业认证 可领取 1000 万字符,有效期均为 365 天。免费测试资源用尽后开始计费,价格如下,您可开通按调用量后付费或者预购单价更低的字符包进行抵扣。
  • 在 控制台-免费资源领取页 可领取免费测试资源。未实名认证 和 个人认证 用户无免费测试调用量,企业认证 可领取 1000 万字符,有效期为 365 天。免费测试资源用尽后开始计费,价格如下,您可开通按调用量后付费或者预购单价更低的字符包进行抵扣。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部