简介
本文档提供关于翻译任务接口的 API 概览和 SDK 示例代码。
提交翻译任务
功能说明
提交一个翻译任务。
方法原型
public Guzzle\\Service\\Resource\\Model createAiTranslationJobs(array $args = array());
请求示例
<?phprequire dirname(__FILE__, 2) . '/vendor/autoload.php';$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的 region 可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket$cosClient = new Qcloud\\Cos\\Client(array('region' => $region,'schema' => 'https', //协议头部,默认为 http'credentials'=> array('secretId' => $secretId ,'secretKey' => $secretKey)));try {// 提交一个翻译任务 https://cloud.tencent.com/document/product/460/84799$result = $cosClient->createAiTranslationJobs(array('Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket'Tag' => 'Translation','Input' => array('Object' => 'test.docx','Lang' => 'zh','Type' => 'docx',// 'BasicType' => '',),'Operation' => array(// 'UserData' => 'xxx',// 'JobLevel' => '',// 'NoNeedOutput' => 'true','Translation' => array('Lang' => 'en','Type' => 'docx',),'Output' => array('Region' => $region,'Bucket' => 'examplebucket-125000000','Object' => 'xxx.txt',),),// 'CallBack' => '',// 'CallBackFormat' => '',// 'CallBackType' => '',// 'CallBackMqConfig' => array(// 'MqRegion' => '',// 'MqMode' => '',// 'MqName' => '',// ),));// 请求成功print_r($result);} catch (\\Exception $e) {// 请求失败echo($e);}
参数说明
Request 中的具体数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
Tag | Request | 创建任务的 Tag:Translation | String | 是 |
Input | Request | 待操作的对象信息 | Container | 是 |
Operation | Request | 操作规则 | Container | 是 |
CallBackFormat | Request | 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式 | String | 否 |
CallBackType | Request | 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型 | String | 否 |
CallBack | Request | 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调 | String | 否 |
CallBackMqConfig | Request | Container | 否 |
Container 类型 Input 的具体数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 默认值 | 是否必选 |
Object | Request.Input | 源文档文件名 单文件(docx/xlsx/html/markdown/txt):不超过800万字符 有页数的(pdf/pptx):不超过300页 文本文件(txt):不超过10MB 二进制文件(pdf/docx/pptx/xlsx):不超过60MB 图片文件(jpg/jpeg/png/webp):不超过10MB | String | 无 | 是 |
Lang | Request.Input | 文档语言类型 zh:简体中文 zh-hk:繁体中文 zh-tw:繁体中文 zh-tr:繁体中文 en:英语 ar:阿拉伯语 de:德语 es:西班牙语 fr:法语 id:印尼语 it:意大利语 ja:日语 pt:葡萄牙语 ru:俄语 ko:韩语 km:高棉语 lo:老挝语 | String | 无 | 是 |
Type | Request.Input | 文档类型 pdf docx pptx xlsx txt xml html:只能翻译 HTML 里的文本节点,需要通过 JS 动态加载的不进行翻译 markdown jpg jpeg png webp | String | 无 | 是 |
BasicType | Request.Input | 原始文档类型 仅在 Type=pdf/jpg/jpeg/png/webp 时使用, 当值为pdf时,仅支持 docx、pptx 当值为jpg/jpeg/png/webp时,仅支持txt | String | 无 | 否 |
Container 类型
Operation
的具体数据描述如下:节点名称(关键字) | 父节点 | 描述 | 类型 | 默认值 | 是否必选 |
Translation | Request.Operation | 翻译参数 | Container | 无 | 是 |
Output | Request.Operation | 结果输出地址,当NoNeedOutput为true时非必选 | Container | 无 | 否 |
UserData | Request.Operation | 透传用户信息,可打印的 ASCII 码,长度不超过1024 | String | 无 | 否 |
JobLevel | Request.Operation | 任务优先级,级别限制:0 、1 、2 。级别越大任务优先级越高,默认为0 | String | 无 | 否 |
NoNeedOutput | Request.Operation | 仅输出结果,不生成结果文件。取值:true/false。该参数原文档类型为图片时有效。默认值 false | String | 无 | 否 |
Container 类型 Translation 的具体数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 默认值 | 是否必选 |
Lang | Request.Operation.Translation | 目标语言类型 源语言类型为 zh/zh-hk/zh-tw/zh-tr 时支持:en、ar、de、es、fr、id、it、ja、it、ru、ko、km、lo、pt 源语言类型为 en 时支持:zh、zh-hk、zh-tw、zh-tr、ar、de、es、fr、id、it、ja、it、ru、ko、km、lo、pt 其他类型时支持:zh、zh-hk、zh-tw、zh-tr、en | String | 无 | 是 |
Type | Request.Operation.Translation | 文档类型,源文件类型与目标文件类型映射关系如下: docx:docx pptx:pptx xlsx:xlsx txt:txt xml:xml html:html markdown:markdown pdf:pdf、docx png:txt jpg:txt jpeg:txt webp:txt | String | 无 | 是 |
Container 类型 Output 的具体数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
Region | Request.Operation.Output | 存储桶的地域 | String | 是 |
Bucket | Request.Operation.Output | 存储结果的存储桶 | String | 是 |
Object | Request.Operation.Output | 输出结果的文件名 | String | 是 |
返回结果示例
GuzzleHttp\\Command\\Result Object([RequestId] => NjRjYNjRjMjIxODBfMzUxNGSIOJOIDAJOIDg=[ContentType] => application/xml[ContentLength] => 928[JobsDetail] => Array([QueueType] => AIProcess[Code] => Success[Message] =>[JobId] => a7ee9pc7a00f19asf798sd7f89s7f2e646[Tag] => Translation[State] => Submitted[CreationTime] => 2023-08-03T16:26:51+0800[StartTime] => -[EndTime] => -[QueueId] => p78f1pc7a00f19asf798sd7f89s7f2e646[Input] => Array([BucketId] => examplebucket-1250000000[Region] => ap-guangzhou[Object] => test.docx[Lang] => zh[Type] => docx)[Operation] => Array([NoNeedOutput] => false[UserData] => xxx[JobLevel] => 0[Translation] => Array([Lang] => en[Type] => docx)[Output] => Array([Region] => ap-guangzhou[Bucket] => examplebucket-1250000000[Object] => tmp/xxx.txt)))[Bucket] => examplebucket-1250000000[Location] => examplebucket-1250000000.ci.ap-guangzhou.myqcloud.com/jobs)
查询任务结果
功能说明
查询指定的任务。
方法原型
public Guzzle\\Service\\Resource\\Model describeMediaJob(array $args = array());
请求示例
<?phprequire dirname(__FILE__) . '/../vendor/autoload.php';$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的 region 可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket$cosClient = new Qcloud\\Cos\\Client(array('region' => $region,'schema' => 'https', //协议头部,默认为 http'credentials'=> array('secretId' => $secretId ,'secretKey' => $secretKey)));try {// 查询指定的任务$result = $cosClient->describeMediaJob(array('Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket'Key' => '', // jobId));// 请求成功print_r($result);} catch (\\Exception $e) {// 请求失败echo($e);}
参数说明
Request 中的具体数据描述如下:
参数名称 | 类型 | 描述 | 是否必填 |
Bucket | String | 存储桶名称,格式:BucketName-APPID | 是 |
Key | String | 需要查询的任务 ID | 是 |
返回结果示例
GuzzleHttp\\Command\\Result Object([RequestId] => NjRkMNjRjMjIxODBfMzUxNGSIOJOIDAJOIDg=[ContentType] => application/xml[ContentLength] => 1836[Key] => j7380pc7a00f19asf798sd7f89s7f2e646[Bucket] => examplebucket-1250000000[Location] => examplebucket-1250000000.ci.ap-guangzhou.myqcloud.com/jobs/j7380pc7a00f19asf798sd7f89s7f2e646[Response] => Array([JobsDetail] => Array([Code] => Success[CreationTime] => 2023-08-07T16:07:28+0800[EndTime] => 2023-08-07T16:07:29+0800[Input] => Array([BucketId] => examplebucket-1250000000[Object] => object[Region] => ap-guangzhou)[JobId] => j7380pc7a00f19asf798sd7f89s7f2e646[Message] =>[Operation] => Array([JobLevel] => 0[Output] => Array([Bucket] => examplebucket-1250000000[Object] => tmp/out_object[Region] => ap-guangzhou)[TemplateId] => t0pc7a00f19asf798sd7f89s7f2e646[TemplateName] => TemplateName)[QueueId] => pc6f4d28f798sd7f89s7f2e646bffb5a[QueueType] => QueueType[StartTime] => 2023-08-07T16:07:28+0800[State] => Success[Tag] => Tag)))