translate_document
Submit document translation tasks for PDF, Office, text, and image files, with automatic OCR detection for scanned PDFs and immediate order number retrieval.
Instructions
提交文档翻译任务。请先调用 get_model_list 获取可用模型,调用 get_supported_languages 获取支持的语言列表,然后让用户选择模型和目标语言。返回中的 orders[].translateOrderNo 即订单号,直接用它调 wait_for_translation,无需再查列表。图片(png/jpg/jpeg)也走这个工具——服务端把它们当 IMAGE 类型,按 1 页计费,且一律走 OCR(扣的是 OCR 额度),不需要另外的图片翻译接口。支持的格式:PDF / DOCX / PPTX / XLSX / TXT / EPUB / 图片。提交前本工具会对 file_list 里的 PDF 自动判定是不是扫描件(只有 PDF 有这个概念),据此填 OCR 开关,结果在返回的 msg 和 ocrDetection 里——请把「走没走 OCR」原样告诉用户,那关系到扣哪一本额度。若返回 code=202,表示判定还没出来,本次没有提交、没有扣费(data.submitted / data.charged 都是 false,data.detecting 是还在测的文件):等十几秒用完全相同的参数再调一次本工具即可,不要重新上传文件、也不要改参数。这一步挡着是因为判错两边都要付代价:扫描件按普通 PDF 翻会出一片空白,OCR 又扣另一本额度。确实等不及、或者反复 202 一直不出结果,就显式传 is_ocr(0=按普通 PDF 翻,1=强制整批走 OCR)绕过它。若返回非 200(如 600 系统繁忙),说明是翻译服务侧的问题而非上传问题:用相同参数重试本工具即可,不要重新上传文件。
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | 翻译模型。这是必填项,请先调用 get_model_list 获取当前用户可用的模型列表,然后让用户选择。 | |
| is_ocr | No | 是否启用 OCR,0=否,1=是。**不要自己判断,正常情况下不要传**:提交前服务端会对每个 PDF 调分类接口,按真实结果逐个标记,比看文件名靠谱得多。这个参数的真实含义是「强制整批走 OCR」——服务端见到 1 就把批次里每个 PDF 都按 OCR 记账,不再看检测结果,文本版那几份等于白扣 OCR 额度。所以只有用户明确要求强制 OCR 时才传 1;传了不会被改掉,但返回里会提醒你这和检测结果不符。注意 OCR 扣的是 OCR 额度,和普通翻译不是同一本账。 | |
| file_list | Yes | 文件列表,每个文件包含 fileName 和 fileObjectKey | |
| source_language | Yes | 源语言代码,如 'en', 'zh-CN', 'ja', 'AnyLanguage'。如果用户未指定,请让用户从 get_supported_languages 返回的列表中选择。 | |
| target_language | Yes | 目标语言代码,如 'zh-CN', 'en', 'ja'。这是必填项,如果用户未指定,请让用户从 get_supported_languages 返回的列表中选择。 | |
| terminology_collection_id | No | 术语表 ID(选填)。带上之后,这一批文件里凡是命中术语表的词都按表里指定的译法翻。**不要自己编,也不要猜**:这个 ID 只能由用户提供——他登录 belindoc.com 网页端、在术语库页面拿到。本服务没有列出术语表的工具,因为上游管理术语表的那几个接口认的是网页登录态而不是 API Key。用户没主动提术语表就别传这个参数,更不要为了它去打断用户。另外上游收到这个 ID 既不校验归属也不校验存在:写错或写了个不存在的,提交照样成功、翻译照常跑,只是术语表静默不生效,事后没有任何地方看得出来——所以只转述用户给的原值,一个字符都不要改。 |