522 lines
51 KiB
JSON
522 lines
51 KiB
JSON
{
|
||
"zh": {
|
||
"pageTitle": "DocuTranslate - 交互式文档翻译",
|
||
"tutorialBtn": "教程",
|
||
"projectContributeBtn": "项目协作",
|
||
"workflowTitle": "选择工作流",
|
||
"workflowOptionMarkdown": "转Markdown再翻译 (.pdf/.md/.png等)",
|
||
"workflowOptionTxt": "纯文本翻译 (.txt)",
|
||
"workflowOptionEpub": "EPUB翻译 (.epub)",
|
||
"workflowOptionDocx": "DOCX翻译 (.docx)",
|
||
"workflowOptionXlsx": "XLSX翻译 (.xlsx/.csv)",
|
||
"workflowOptionSrt": "SRT字幕翻译 (.srt)",
|
||
"workflowOptionAss": "ASS字幕翻译 (.ass)",
|
||
"workflowOptionJson": "JSON翻译 (.json)",
|
||
"workflowOptionHtml": "HTML翻译 (.html)",
|
||
"workflowOptionPptx": "PPTX演示文稿 (.pptx)",
|
||
"autoWorkflowLabel": "自动选择工作流",
|
||
"txtSettingsTitleText": "TXT翻译选项",
|
||
"insertModeLabel": "插入模式",
|
||
"insertModeReplace": "替换原文 (Replace)",
|
||
"insertModeAppend": "附加到原文后 (Append)",
|
||
"insertModePrepend": "附加到原文前 (Prepend)",
|
||
"insertModeHelpTxt": "选择如何将翻译后的文本插入。",
|
||
"separatorLabel": "分隔符",
|
||
"separatorPlaceholderSimple": "例如: \\n---\\n",
|
||
"separatorHelp": "当插入模式为附加或前置时,用于分隔原文和译文的字符。<code>\\n</code> 代表换行。",
|
||
"segmentModeLabel": "分段模式",
|
||
"segmentModeLine": "按行分段 (每行视为一段)",
|
||
"segmentModeParagraph": "按段落分段 (合并连续非空行)",
|
||
"segmentModeNone": "不分段 (全文视为一段)",
|
||
"segmentModeHelp": "选择如何将文本分割成块进行翻译。",
|
||
"docxSettingsTitleText": "DOCX翻译选项",
|
||
"insertModeHelpDocx": "选择如何将翻译后的文本插入。",
|
||
"xlsxSettingsTitleText": "XLSX翻译选项",
|
||
"insertModeHelpXlsx": "选择如何将翻译后的文本插入到单元格中。",
|
||
"xlsxTranslateRegionsLabel": "翻译区域 (可选)",
|
||
"xlsxTranslateRegionsPlaceholder": "每行一个区域, 例如:Sheet1!A1:B10(不指定表名则对所有表生效)",
|
||
"srtSettingsTitleText": "SRT翻译选项",
|
||
"insertModeHelpSrt": "选择如何将翻译后的文本插入。",
|
||
"epubSettingsTitleText": "EPUB翻译选项",
|
||
"insertModeHelpEpub": "选择如何将翻译后的文本插入。",
|
||
"htmlSettingsTitleText": "HTML翻译选项",
|
||
"insertModeHelpHtml": "选择如何将翻译后的文本插入。",
|
||
"assSettingsTitleText": "ASS翻译选项",
|
||
"insertModeHelpAss": "选择如何将翻译后的文本插入。",
|
||
"separatorPlaceholderAss": "例如: \\N (换行符)",
|
||
"separatorHelpAss": "当插入模式为附加或前置时,用于分隔原文和译文的字符。<code>\\N</code> 是ASS格式的换行符。",
|
||
"pptxSettingsTitleText": "PPTX翻译选项",
|
||
"insertModeHelpPptx": "选择如何将翻译后的文本插入文本框。",
|
||
"jsonSettingsTitleText": "JSON路径配置",
|
||
"jsonPathLabel": "需要翻译的JSON路径",
|
||
"jsonPathPlaceholder": "每行一个路径, 例如:\n$.name\n$.*",
|
||
"jsonPathHelp": "采用<code>jsonpath-ng</code>的路径选择语法,每一行表示一个json路径。 将翻译路径匹配对象内的所有字符串",
|
||
"parsingSettingsTitleText": "解析配置",
|
||
"parsingEngineLabel": "解析引擎",
|
||
"parsingEngineHelp": "如果上传的文件本身是.md格式,此项可不选。",
|
||
"mineruTokenPlaceholder": "使用Mineru引擎时需要",
|
||
"modelVersionLabel": "Mineru 模型版本",
|
||
"modelVersionVlm": "VLM",
|
||
"modelVersionPipline": "Pipeline",
|
||
"modelVersionHelp": "mineru VLM是更新的内测模型。",
|
||
"mineruDeployBaseUrlLabel": "服务地址 (Base URL)",
|
||
"mineruDeployBaseUrlPlaceholder": "例如: http://127.0.0.1:8000",
|
||
"mineruDeployBackendLabel": "后端类型",
|
||
"mineruDeployLangListLabel": "语言列表 (Pipeline模式)",
|
||
"mineruDeployServerUrlLabel": "Server URL",
|
||
"mineruDeployServerUrlPlaceholder": "例如: http://127.0.0.1:30000",
|
||
"mineruDeployParseMethodLabel": "解析方法 (Parse Method)",
|
||
"mineruDeployTableEnableLabel": "表格识别 (Table Recognition)",
|
||
"mineruDeployStartPageLabel": "起始页码",
|
||
"mineruDeployEndPageLabel": "结束页码",
|
||
"mineruDeployFormulaEnableLabel": "启用公式解析",
|
||
"formulaOcrLabel": "公式识别",
|
||
"codeOcrLabel": "代码识别",
|
||
"aiSettingsTitleText": "翻译模型",
|
||
"skipTranslationLabel": "跳过翻译",
|
||
"platformLabel": "选择平台",
|
||
"platformCustom": "自定义接口",
|
||
"baseUrlLabel": "API 地址 (Base URL)",
|
||
"baseUrlPlaceholder": "OpenAi兼容地址",
|
||
"apiKeyPlaceholder": "请输入您的API Key",
|
||
"modelIdLabel": "模型ID",
|
||
"modelIdPlaceholder": "例如: gpt-4o, glm-4",
|
||
"systemProxyLabel": "启用系统代理",
|
||
"forceJson": "强制json输出",
|
||
"forceJsonTooltip": "在需要json格式输出时强制模型输出json格式。可能会降低翻译质量,建议指令遵循强的模型关闭",
|
||
"translationSettingsTitleText": "翻译配置",
|
||
"targetLanguageLabel": "目标语言",
|
||
"targetLanguageCustom": "其它 (自定义)",
|
||
"customLangPlaceholder": "请输入目标语言, 例如: Italian",
|
||
"thinkingModeLabel": "思考模式",
|
||
"thinkingModeTooltip": "设置混合推理模型是否进行思考,目前支持智谱的glm4.5系列、火山引擎的seed1.6系列、硅基流动平台、google的gemini系列、302AI(部分),建议选择禁用思考",
|
||
"thinkingModeEnable": "启用",
|
||
"thinkingModeDisable": "禁用(推荐)",
|
||
"thinkingModeDefault": "默认",
|
||
"customPromptLabel": "自定义Prompt",
|
||
"customPromptPlaceholder": "可选,如“人名保持原文不翻译”",
|
||
"chunkSizeLabel": "分块大小",
|
||
"resetBtn": "重置",
|
||
"concurrentLabel": "并发数",
|
||
"retryLabel": "重试次数",
|
||
"rpmLabel": "每分钟请求数",
|
||
"tpmLabel": "每分钟Token数(估算)",
|
||
"unlimitedPlaceholder": "留空为无限制",
|
||
"glossaryGenTitle": "术语表",
|
||
"glossaryLabel": "术语表 (可选)",
|
||
"glossaryHelp": "选择一个或多个CSV文件。文件需包含'src'和'dst'两列标题,分别代表原文和译文。",
|
||
"viewGlossaryBtn": "查看术语表",
|
||
"clearGlossaryBtn": "清空",
|
||
"glossaryGenEnableLabel": "自动生成术语表",
|
||
"glossaryCustomPromptLabel": "自定义Prompt",
|
||
"glossaryCustomPromptPlaceholder": "术语表生成提示词",
|
||
"glossaryGenConfigLabel": "生成术语表配置",
|
||
"glossaryGenConfigSame": "与翻译配置相同",
|
||
"glossaryGenConfigCustom": "自定义",
|
||
"importConfigBtn": "导入配置",
|
||
"exportConfigBtn": "导出配置",
|
||
"taskListTitle": "任务列表",
|
||
"newTaskBtn": "新建任务",
|
||
"noTaskPlaceholder": "当前没有任务,点击“新建任务”开始吧!",
|
||
"taskCardIdLabel": "任务 ID",
|
||
"taskCardIdPlaceholder": "等待提交...",
|
||
"taskCardFileDrop": "点击或拖拽文件到此处",
|
||
"taskCardFileSelected": "文件已选择",
|
||
"taskCardFilenameLabel": "文件名: ",
|
||
"taskCardLogLabel": "日志",
|
||
"copyLogsTooltip": "复制日志",
|
||
"taskCardStatusWaiting": "等待上传文件...",
|
||
"taskCardPreviewBtn": "预览",
|
||
"taskCardDownloadBtn": "下载",
|
||
"taskCardAttachmentBtn": "附件",
|
||
"taskCardStartBtn": "开始翻译",
|
||
"downloadMdEmbedded": "Markdown(嵌图)",
|
||
"downloadMdZip": "Markdown压缩包",
|
||
"previewBilingualBtn": "双语",
|
||
"previewTranslatedOnlyBtn": "仅译文",
|
||
"syncScrollTooltip": "联动滑动",
|
||
"previewOriginal": "原文",
|
||
"previewTranslated": "译文",
|
||
"closeBtn": "关闭",
|
||
"tutorialModalTitle": "使用教程",
|
||
"tutorialModalBody": "<p><i class=\"bi bi-camera-video me-2\"></i>视频教程可以在B站搜索 <a href=\"https://search.bilibili.com/all?keyword=docutranslate\" target=\"_blank\">docutranslate</a> 获取。</p><p>欢迎使用 DocuTranslate!请按照以下步骤完成文档翻译:</p><ol><li><strong><i class=\"bi bi-diagram-3 me-2\"></i>第一步:选择工作流</strong><p class=\"mt-2\">在左侧配置面板的顶部,首先选择最适合您文件类型的处理流程。</p><div class=\"alert alert-info mt-2\" role=\"alert\"><i class=\"bi bi-lightbulb-fill me-2\"></i>提示: 默认已开启“自动选择工作流”。您只需上传文件,系统会自动为您匹配合适的工作流,简化操作。</div><ul><li><b>转Markdown再翻译</b>: 适用于翻译PDF、markdown、图片等文件。这是最通用和强大的模式。</li><li><b>纯文本翻译</b>: 用于翻译 <code>.txt</code> 纯文本文件。</li><li><b>EPUB翻译</b>: 用于翻译 <code>.epub</code> 电子书文件。</li><li><b>DOCX翻译</b>: 用于翻译 <code>.docx</code> Word文档。</li><li><b>XLSX翻译</b>: 用于翻译 <code>.xlsx</code> 或 <code>.csv</code> 电子表格文件。</li><li><b>PPTX翻译</b>: 用于翻译 <code>.pptx</code> 幻灯片文件。</li><li><b>SRT字幕翻译</b>: 用于翻译 <code>.srt</code> 字幕文件。</li><li><b>ASS字幕翻译</b>: 用于翻译 <code>.ass</code> 特效字幕文件。</li><li><b>JSON翻译</b>: 用于翻译 <code>.json</code> 文件中的特定字段。</li><li><b>HTML翻译</b>: 用于翻译 <code>.html</code> 网页文件。</li></ul></li><li><strong><i class=\"bi bi-gear-fill me-2\"></i>第二步:配置参数</strong><p class=\"mt-2\">选择工作流后,下方会显示相关的配置选项。请依次完成设置(所有配置都会自动保存在您的浏览器中):</p><p class=\"mb-2\"><strong>A. 工作流特定选项</strong> (根据您第一步的选择出现):</p><ul class=\"ms-4\"><li><u>如果选择“转Markdown再翻译”</u>,请配置 <strong>解析配置</strong>:<ul><li><strong>解析引擎</strong>: 选择一个引擎将您的文件(如PDF)转换为适合翻译的Markdown格式。如果您的文件已经是Markdown格式,则无需选择。</li><li><strong>Mineru Token</strong>: 如果您选择 <code>minerU</code> 引擎,需要在此处填入您的Token。</li></ul></li><li><u>如果选择“纯文本/DOCX/XLSX/PPTX/SRT/ASS/EPUB/HTML”</u>,请配置其 <strong>翻译选项</strong>:<ul><li><strong>插入模式</strong>: 定义翻译结果如何放入文档。您可以选择直接“替换”原文,或是在原文之后“附加”,或是在原文之前“前置”。</li><li><strong>分隔符</strong>: 当选择“附加”或“前置”模式时,此项用于在原文和译文之间插入分隔符(例如ASS格式常用 <code>\\N</code>,EPUB格式常用 <code><br /></code> 作为换行分隔符)。</li></ul></li><li><u>如果选择“JSON翻译”</u>,请配置 <strong>JSON路径</strong>:<ul><li><strong>需要翻译的JSON路径</strong>: 每行输入一个 <a href=\"https://goessner.net/articles/JsonPath/\" target=\"_blank\">JSONPath</a> 表达式,将翻译所有与路径匹配的对象中的字符串。例如:<code>$.*</code>(翻译全部字符串),<code>$..description</code>(翻译所有键为<code>description</code>的值)。</li></ul></li></ul><p class=\"mb-2 mt-3\"><strong>B. 通用选项</strong> (适用于所有工作流):</p><ul class=\"ms-4\"><li><strong>翻译模型</strong>:<ul><li><strong>选择平台/API 地址/API Key/Model ID</strong>: 配置您希望使用的AI翻译服务。模型能力指令遵循越强,<strong>出错</strong>、<strong>漏翻</strong>的概率越低。</li><li><strong>跳过翻译</strong>: 勾选此项后,将只执行文档解析和格式转换,不调用AI进行翻译。</li></ul></li><li><strong>翻译配置</strong>:<ul><li><strong>目标语言</strong>: 指定翻译的目标语言。</li><li><strong>自定义Prompt</strong>: 可选,添加额外指令,如“人名保持原文不翻译”。</li><li><strong>思考模式</strong>: 针对部分支持混合推理的模型进行设置,建议选择“禁用(推荐)”。</li><li><strong>分块大小/并发数等</strong>: 高级参数,用于调整性能和API请求行为,通常保持默认即可。</li></ul></li><li><strong>术语表</strong>:<ul><li><strong>上传术语表 (可选)</strong>: 上传CSV文件(需包含'src'和'dst'列)来保证特定术语翻译的统一性和准确性。</li><li><strong>自动生成术语表</strong>: 启用后,程序会先从原文中提取术语并生成一个术语表,然后再进行翻译。</li></ul></li></ul></li><li><strong><i class=\"bi bi-file-earmark-arrow-up-fill me-2\"></i>第三步:上传文件</strong><p class=\"mt-2\">在右侧的任务列表中,点击或拖拽您的文档到文件上传区域。</p></li><li><strong><i class=\"bi bi-play-circle-fill me-2\"></i>第四步:开始翻译</strong><p class=\"mt-2\">文件选择成功后,点击任务卡片右下角的 <span class=\"badge bg-primary\">开始翻译</span> 按钮。系统将开始处理任务,您可以在日志区域查看实时进度。</p></li><li><strong><i class=\"bi bi-check-circle-fill me-2\"></i>第五步:查看与下载</strong><p class=\"mt-2\">翻译完成后,任务卡片下方会出现操作按钮:</p><ul><li><span class=\"badge bg-success\"><i class=\"bi bi-eye-fill me-1\"></i>预览</span>: 在右侧滑出的面板中进行原文和译文的对照预览。</li><li><span class=\"badge bg-secondary\"><i class=\"bi bi-download me-1\"></i>下载</span>: 下载包括 PDF, DOCX, Markdown 等多种格式的译文。</li><li><span class=\"badge bg-info\"><i class=\"bi bi-paperclip me-1\"></i>附件</span>: 如果翻译过程中生成了附加文件(如自动生成的术语表),可在此处下载。</li></ul></li></ol><div class=\"alert alert-warning mt-3\" role=\"alert\"><i class=\"bi bi-info-circle-fill me-2\"></i><strong>重要提示</strong>: 所有配置都会自动保存在您的浏览器本地,方便下次使用。您也可以使用新增的“导出配置”和“导入配置”按钮来备份和恢复您的设置。</div>",
|
||
"tutorialUnderstandBtn": "我明白了",
|
||
"contributorsModalTitle": "感谢贡献",
|
||
"contributorsPara1": "DocuTranslate是一个开源项目!大家的需求与使用是项目进步的动力。",
|
||
"contributorsPara2": "感谢所有资助项目、提交代码与宝贵建议及给项目star的朋友们!",
|
||
"contributorsWelcome": "欢迎通过以下方式参与贡献:",
|
||
"contributorsGithub": "github 主页",
|
||
"contributorsPR": "提交 Pull Request",
|
||
"contributorsIssue": "报告 Issue",
|
||
"contributorsQQ": "或者通过QQ群联系作者:1047781902",
|
||
"glossaryModalTitle": "当前术语表",
|
||
"glossaryTableSource": "原文 (src)",
|
||
"glossaryTableDestination": "译文 (dst)",
|
||
"engineOptionIdentity": "已经是Markdown格式",
|
||
"engineOptionMineru": "Mineru(推荐)",
|
||
"engineOptionDocling": "Docling",
|
||
"engineOptionMineru_deploy": "Mineru部署服务",
|
||
"apiHrefInfo302ai": "👈由此链接注册可享受1美元免费额度",
|
||
"glossaryEmpty": "术语表为空",
|
||
"status_fillRequired": "请填写所有必填项!",
|
||
"btn_initializing": "初始化...",
|
||
"btn_cancelTranslation": "取消翻译",
|
||
"status_cancelling": "取消中...",
|
||
"btn_reTranslate": "重新翻译",
|
||
"preview_cantPreviewType": "无法预览此文件类型",
|
||
"preview_noOriginalCache": "无原文缓存可供预览。",
|
||
"pdf_preparing": "正在准备打印,请稍候...",
|
||
"preview_bilingual": "双语预览",
|
||
"preview_translatedOnly": "仅译文预览",
|
||
"configImportSuccess": "配置导入成功!",
|
||
"configImportError": "配置文件解析失败,请检查文件格式。",
|
||
"providerLabel": "接口供应商"
|
||
},
|
||
"en": {
|
||
"pageTitle": "DocuTranslate - Interactive Document Translation",
|
||
"tutorialBtn": "Tutorial",
|
||
"projectContributeBtn": "Project Collaboration",
|
||
"workflowTitle": "Select Workflow",
|
||
"workflowOptionMarkdown": "Convert to Markdown then Translate (.pdf/.md/.png, etc.)",
|
||
"workflowOptionTxt": "Plain Text Translation (.txt)",
|
||
"workflowOptionEpub": "EPUB Translation (.epub)",
|
||
"workflowOptionDocx": "DOCX Translation (.docx)",
|
||
"workflowOptionXlsx": "XLSX Translation (.xlsx/.csv)",
|
||
"workflowOptionSrt": "SRT Subtitle Translation (.srt)",
|
||
"workflowOptionAss": "ASS Subtitle Translation (.ass)",
|
||
"workflowOptionJson": "JSON Translation (.json)",
|
||
"workflowOptionHtml": "HTML Translation (.html)",
|
||
"workflowOptionPptx": "PPTX Presentation (.pptx)",
|
||
"autoWorkflowLabel": "Auto-select Workflow",
|
||
"txtSettingsTitleText": "TXT Translation Options",
|
||
"insertModeLabel": "Insert Mode",
|
||
"insertModeReplace": "Replace Original (Replace)",
|
||
"insertModeAppend": "Append to Original (Append)",
|
||
"insertModePrepend": "Prepend to Original (Prepend)",
|
||
"insertModeHelpTxt": "Choose how to insert the translated text.",
|
||
"separatorLabel": "Separator",
|
||
"separatorPlaceholderSimple": "e.g., \\n---\\n",
|
||
"separatorHelp": "Character used to separate original and translated text in append or prepend mode. <code>\\n</code> represents a newline.",
|
||
"segmentModeLabel": "Segment Mode",
|
||
"segmentModeLine": "By Line (Each line is a segment)",
|
||
"segmentModeParagraph": "By Paragraph (Merge consecutive non-empty lines)",
|
||
"segmentModeNone": "No Segmentation (Entire text is one segment)",
|
||
"segmentModeHelp": "Choose how to segment the text for translation.",
|
||
"docxSettingsTitleText": "DOCX Translation Options",
|
||
"insertModeHelpDocx": "Choose how to insert the translated text.",
|
||
"xlsxSettingsTitleText": "XLSX Translation Options",
|
||
"insertModeHelpXlsx": "Choose how to insert the translated text into cells.",
|
||
"xlsxTranslateRegionsLabel": "Translation Regions (Optional)",
|
||
"xlsxTranslateRegionsPlaceholder": "One region per line, e.g., Sheet1!A1:B10 (applies to all sheets if sheet name is omitted).",
|
||
"srtSettingsTitleText": "SRT Translation Options",
|
||
"insertModeHelpSrt": "Choose how to insert the translated text.",
|
||
"epubSettingsTitleText": "EPUB Translation Options",
|
||
"insertModeHelpEpub": "Choose how to insert the translated text.",
|
||
"htmlSettingsTitleText": "HTML Translation Options",
|
||
"insertModeHelpHtml": "Choose how to insert the translated text.",
|
||
"assSettingsTitleText": "ASS Translation Options",
|
||
"insertModeHelpAss": "Choose how to insert the translated text.",
|
||
"separatorPlaceholderAss": "e.g., \\N (newline character)",
|
||
"separatorHelpAss": "Character used to separate original and translated text in append or prepend mode. <code>\\N</code> is the newline character for the ASS format.",
|
||
"pptxSettingsTitleText": "PPTX Translation Options",
|
||
"insertModeHelpPptx": "Choose how to insert the translated text into text boxes.",
|
||
"jsonSettingsTitleText": "JSON Path Configuration",
|
||
"jsonPathLabel": "JSON Paths to Translate",
|
||
"jsonPathPlaceholder": "One path per line, e.g.:\n$.name\n$.*",
|
||
"jsonPathHelp": "Uses <code>jsonpath-ng</code> syntax. Each line represents a JSON path. All strings within the matched objects will be translated.",
|
||
"parsingSettingsTitleText": "Parsing Configuration",
|
||
"parsingEngineLabel": "Parsing Engine",
|
||
"parsingEngineHelp": "If the uploaded file is already in .md format, this can be skipped.",
|
||
"mineruTokenPlaceholder": "Required when using the Mineru engine",
|
||
"modelVersionLabel": "Mineru Model Version",
|
||
"modelVersionVlm": "VLM",
|
||
"modelVersionPipline": "Pipeline",
|
||
"modelVersionHelp": "Mineru VLM is a newer internal test model.",
|
||
"mineruDeployBaseUrlLabel": "Service URL (Base URL)",
|
||
"mineruDeployBaseUrlPlaceholder": "e.g., http://127.0.0.1:8000",
|
||
"mineruDeployBackendLabel": "Backend Type",
|
||
"mineruDeployLangListLabel": "Language List (Pipeline Mode)",
|
||
"mineruDeployServerUrlLabel": "Server URL",
|
||
"mineruDeployServerUrlPlaceholder": "e.g., http://127.0.0.1:30000",
|
||
"mineruDeployParseMethodLabel": "Parse Method",
|
||
"mineruDeployTableEnableLabel": "Table Recognition",
|
||
"mineruDeployStartPageLabel": "Start Page",
|
||
"mineruDeployEndPageLabel": "End Page",
|
||
"mineruDeployFormulaEnableLabel": "Enable Formula Parsing",
|
||
"formulaOcrLabel": "Formula Recognition",
|
||
"codeOcrLabel": "Code Recognition",
|
||
"aiSettingsTitleText": "Translation Model",
|
||
"skipTranslationLabel": "Skip Translation",
|
||
"platformLabel": "Select Platform",
|
||
"platformCustom": "Custom API",
|
||
"baseUrlLabel": "API Address (Base URL)",
|
||
"baseUrlPlaceholder": "OpenAI-compatible address",
|
||
"apiKeyPlaceholder": "Please enter your API Key",
|
||
"modelIdLabel": "Model ID",
|
||
"modelIdPlaceholder": "e.g., gpt-4o, glm-4",
|
||
"systemProxyLabel": "Enable System Proxy",
|
||
"forceJson": "Force JSON output",
|
||
"forceJsonTooltip": "Force the model to output JSON format when required. May reduce translation quality; it's recommended to disable for models that follow instructions well.",
|
||
"translationSettingsTitleText": "Translation Configuration",
|
||
"targetLanguageLabel": "Target Language",
|
||
"targetLanguageCustom": "Other (Custom)",
|
||
"customLangPlaceholder": "Please enter the target language, e.g., Italian",
|
||
"thinkingModeLabel": "Thinking Mode",
|
||
"thinkingModeTooltip": "Set whether the mixed-inference model should think. Currently supported by Zhipu's glm4.5 series, Volcengine's seed1.6 series, SiliconFlow, Google's Gemini series, and 302AI (partial). Disabling is recommended.",
|
||
"thinkingModeEnable": "Enable",
|
||
"thinkingModeDisable": "Disable (Recommended)",
|
||
"thinkingModeDefault": "Default",
|
||
"customPromptLabel": "Custom Prompt",
|
||
"customPromptPlaceholder": "Optional, e.g., \"Do not translate personal names, keep them in the original language\"",
|
||
"chunkSizeLabel": "Chunk Size",
|
||
"resetBtn": "Reset",
|
||
"concurrentLabel": "Concurrency",
|
||
"retryLabel": "Retries",
|
||
"rpmLabel": "Requests Per Minute",
|
||
"tpmLabel": "Tokens Per Minute(Estimated)",
|
||
"unlimitedPlaceholder": "Leave empty for unlimited",
|
||
"glossaryGenTitle": "Glossary",
|
||
"glossaryLabel": "Glossary (Optional)",
|
||
"glossaryHelp": "Select one or more CSV files. Files must contain 'src' and 'dst' headers, representing source and destination terms.",
|
||
"viewGlossaryBtn": "View Glossary",
|
||
"clearGlossaryBtn": "Clear",
|
||
"glossaryGenEnableLabel": "Auto-generate Glossary",
|
||
"glossaryCustomPromptLabel": "Custom Prompt",
|
||
"glossaryCustomPromptPlaceholder": "Glossary generation prompt",
|
||
"glossaryGenConfigLabel": "Glossary Generation Config",
|
||
"glossaryGenConfigSame": "Same as Translation Config",
|
||
"glossaryGenConfigCustom": "Custom",
|
||
"importConfigBtn": "Import Config",
|
||
"exportConfigBtn": "Export Config",
|
||
"taskListTitle": "Task List",
|
||
"newTaskBtn": "New Task",
|
||
"noTaskPlaceholder": "No tasks yet. Click \"New Task\" to get started!",
|
||
"taskCardIdLabel": "Task ID",
|
||
"taskCardIdPlaceholder": "Awaiting submission...",
|
||
"taskCardFileDrop": "Click or drag file here",
|
||
"taskCardFileSelected": "File Selected",
|
||
"taskCardFilenameLabel": "Filename: ",
|
||
"taskCardLogLabel": "Logs",
|
||
"copyLogsTooltip": "Copy logs",
|
||
"taskCardStatusWaiting": "Waiting for file upload...",
|
||
"taskCardPreviewBtn": "Preview",
|
||
"taskCardDownloadBtn": "Download",
|
||
"taskCardAttachmentBtn": "Attachments",
|
||
"taskCardStartBtn": "Start Translation",
|
||
"downloadMdEmbedded": "Markdown (Embedded Img)",
|
||
"downloadMdZip": "Markdown Zip",
|
||
"previewBilingualBtn": "Bilingual",
|
||
"previewTranslatedOnlyBtn": "Translation Only",
|
||
"syncScrollTooltip": "Sync Scrolling",
|
||
"previewOriginal": "Original",
|
||
"previewTranslated": "Translation",
|
||
"closeBtn": "Close",
|
||
"tutorialModalTitle": "Tutorial",
|
||
"tutorialModalBody": "<p><i class=\"bi bi-camera-video me-2\"></i>Video tutorials are available on Bilibili by searching for <a href=\"https://search.bilibili.com/all?keyword=docutranslate\" target=\"_blank\">docutranslate</a>.</p><p>Welcome to DocuTranslate! Please follow these steps to translate your documents:</p><ol><li><strong><i class=\"bi bi-diagram-3 me-2\"></i>Step 1: Select Workflow</strong><p class=\"mt-2\">At the top of the left-side configuration panel, first choose the processing flow that best suits your file type.</p><div class=\"alert alert-info mt-2\" role=\"alert\"><i class=\"bi bi-lightbulb-fill me-2\"></i>Tip: \"Auto-select Workflow\" is enabled by default. Simply upload your file, and the system will automatically match it with the appropriate workflow to simplify the process.</div><ul><li><b>Convert to Markdown then Translate</b>: Suitable for translating PDF, Markdown, images, etc. This is the most versatile and powerful mode.</li><li><b>Plain Text Translation</b>: For translating <code>.txt</code> plain text files.</li><li><b>EPUB Translation</b>: For translating <code>.epub</code> e-book files.</li><li><b>DOCX Translation</b>: For translating <code>.docx</code> Word documents.</li><li><b>XLSX Translation</b>: For translating <code>.xlsx</code> or <code>.csv</code> spreadsheet files.</li><li><b>PPTX Translation</b>: For translating <code>.pptx</code> slide files.</li><li><b>SRT Subtitle Translation</b>: For translating <code>.srt</code> subtitle files.</li><li><b>ASS Subtitle Translation</b>: For translating <code>.ass</code> advanced subtitle files.</li><li><b>JSON Translation</b>: For translating specific fields within <code>.json</code> files.</li><li><b>HTML Translation</b>: For translating <code>.html</code> web page files.</li></ul></li><li><strong><i class=\"bi bi-gear-fill me-2\"></i>Step 2: Configure Parameters</strong><p class=\"mt-2\">After selecting a workflow, the relevant configuration options will appear below. Please complete the settings in order (all configurations are automatically saved in your browser):</p><p class=\"mb-2\"><strong>A. Workflow-Specific Options</strong> (Appears based on your choice in Step 1):</p><ul class=\"ms-4\"><li><u>If \"Convert to Markdown then Translate\" is selected</u>, configure <strong>Parsing Configuration</strong>:<ul><li><strong>Parsing Engine</strong>: Choose an engine to convert your file (like a PDF) into a translation-friendly Markdown format. No selection is needed if your file is already in Markdown format.</li><li><strong>Mineru Token</strong>: If you choose the <code>minerU</code> engine, you need to enter your token here.</li></ul></li><li><u>If \"Plain Text/DOCX/XLSX/PPTX/SRT/ASS/EPUB/HTML\" is selected</u>, configure its <strong>Translation Options</strong>:<ul><li><strong>Insert Mode</strong>: Defines how the translation result is placed in the document. You can choose to \"Replace\" the original, \"Append\" it after the original, or \"Prepend\" it before the original.</li><li><strong>Separator</strong>: When \"Append\" or \"Prepend\" mode is selected, this is used to insert a separator between the original and translated text (e.g., <code>\\\\N</code> is common for ASS format, <code><br /></code> for EPUB format as a line break).</li></ul></li><li><u>If \"JSON Translation\" is selected</u>, configure <strong>JSON Paths</strong>:<ul><li><strong>JSON Paths to Translate</strong>: Enter one <a href=\"https://goessner.net/articles/JsonPath/\" target=\"_blank\">JSONPath</a> expression per line to translate all strings within the matched objects. For example: <code>$.*</code> (translate all strings), <code>$..description</code> (translate all values with the key <code>description</code>).</li></ul></li></ul><p class=\"mb-2 mt-3\"><strong>B. General Options</strong> (Applicable to all workflows):</p><ul class=\"ms-4\"><li><strong>Translation Model</strong>:<ul><li><strong>Select Platform/API Address/API Key/Model ID</strong>: Configure the AI translation service you wish to use. The better the model follows instructions, the lower the probability of <strong>errors</strong> and <strong>missed translations</strong>.</li><li><strong>Skip Translation</strong>: If checked, only document parsing and format conversion will be performed, without calling the AI for translation.</li></ul></li><li><strong>Translation Configuration</strong>:<ul><li><strong>Target Language</strong>: Specify the target language for the translation.</li><li><strong>Custom Prompt</strong>: Optional, add extra instructions, like \"Do not translate personal names.\"</li><li><strong>Thinking Mode</strong>: A setting for some models that support mixed inference; \"Disable (Recommended)\" is the suggested choice.</li><li><strong>Chunk Size/Concurrency, etc.</strong>: Advanced parameters for adjusting performance and API request behavior; usually, the defaults are fine.</li></ul></li><li><strong>Glossary</strong>:<ul><li><strong>Upload Glossary (Optional)</strong>: Upload a CSV file (must contain 'src' and 'dst' columns) to ensure consistency and accuracy for specific terms.</li><li><strong>Auto-generate Glossary</strong>: When enabled, the program will first extract terms from the original text to create a glossary before proceeding with the translation.</li></ul></li></ul></li><li><strong><i class=\"bi bi-file-earmark-arrow-up-fill me-2\"></i>Step 3: Upload File</strong><p class=\"mt-2\">In the task list on the right, click or drag your document into the file upload area.</p></li><li><strong><i class=\"bi bi-play-circle-fill me-2\"></i>Step 4: Start Translation</strong><p class=\"mt-2\">Once the file is successfully selected, click the <span class=\"badge bg-primary\">Start Translation</span> button on the bottom right of the task card. The system will begin processing the task, and you can view the real-time progress in the log area.</p></li><li><strong><i class=\"bi bi-check-circle-fill me-2\"></i>Step 5: View and Download</strong><p class=\"mt-2\">After the translation is complete, action buttons will appear on the task card:</p><ul><li><span class=\"badge bg-success\"><i class=\"bi bi-eye-fill me-1\"></i>Preview</span>: Compare the original and translated text side-by-side in a slide-out panel.</li><li><span class=\"badge bg-secondary\"><i class=\"bi bi-download me-1\"></i>Download</span>: Download the translation in various formats, including PDF, DOCX, Markdown, etc.</li><li><span class=\"badge bg-info\"><i class=\"bi bi-paperclip me-1\"></i>Attachments</span>: If any additional files were generated during the process (like an auto-generated glossary), they can be downloaded here.</li></ul></li></ol><div class=\"alert alert-warning mt-3\" role=\"alert\"><i class=\"bi bi-info-circle-fill me-2\"></i><strong>Important Note</strong>: All configurations are automatically saved locally in your browser for future use. You can also use the new \"Export Config\" and \"Import Config\" buttons to back up and restore your settings.</div>",
|
||
"tutorialUnderstandBtn": "I Understand",
|
||
"contributorsModalTitle": "Thanks for Contributing",
|
||
"contributorsPara1": "DocuTranslate is an open-source project! The community's needs and usage are the driving force behind its progress.",
|
||
"contributorsPara2": "Thank you to everyone who has sponsored the project, submitted code, provided valuable suggestions, and starred the project!",
|
||
"contributorsWelcome": "You are welcome to contribute in the following ways:",
|
||
"contributorsGithub": "GitHub Page",
|
||
"contributorsPR": "Submit a Pull Request",
|
||
"contributorsIssue": "Report an Issue",
|
||
"contributorsQQ": "Or contact the author via the QQ group: 1047781902",
|
||
"glossaryModalTitle": "Current Glossary",
|
||
"glossaryTableSource": "Source (src)",
|
||
"glossaryTableDestination": "Destination (dst)",
|
||
"engineOptionIdentity": "Already Markdown Format",
|
||
"engineOptionMineru": "Mineru (Recommended)",
|
||
"engineOptionDocling": "Docling",
|
||
"engineOptionMineru_deploy": "Mineru Deploy Service",
|
||
"apiHrefInfo302ai": "👈 Register through this link to enjoy a $1 free credit",
|
||
"glossaryEmpty": "Glossary is empty",
|
||
"status_fillRequired": "Please fill in all required fields!",
|
||
"btn_initializing": "Initializing...",
|
||
"btn_cancelTranslation": "Cancel Translation",
|
||
"status_cancelling": "Cancelling...",
|
||
"btn_reTranslate": "Re-translate",
|
||
"preview_cantPreviewType": "Cannot preview this file type",
|
||
"preview_noOriginalCache": "No original file cached for preview.",
|
||
"pdf_preparing": "Preparing PDF...",
|
||
"preview_bilingual": "Bilingual Preview",
|
||
"preview_translatedOnly": "Translation Only Preview",
|
||
"configImportSuccess": "Configuration imported successfully!",
|
||
"configImportError": "Failed to parse config file, please check the file format.",
|
||
"providerLabel": "Provider"
|
||
},
|
||
"vi": {
|
||
"pageTitle": "DocuTranslate - Dịch tài liệu tương tác",
|
||
"tutorialBtn": "Hướng dẫn",
|
||
"projectContributeBtn": "Hợp tác dự án",
|
||
"workflowTitle": "Chọn quy trình làm việc",
|
||
"workflowOptionMarkdown": "Chuyển sang Markdown rồi dịch (.pdf/.md/.png, v.v.)",
|
||
"workflowOptionTxt": "Dịch văn bản thuần (.txt)",
|
||
"workflowOptionEpub": "Dịch EPUB (.epub)",
|
||
"workflowOptionDocx": "Dịch DOCX (.docx)",
|
||
"workflowOptionXlsx": "Dịch XLSX (.xlsx/.csv)",
|
||
"workflowOptionSrt": "Dịch phụ đề SRT (.srt)",
|
||
"workflowOptionAss": "Dịch phụ đề ASS (.ass)",
|
||
"workflowOptionJson": "Dịch JSON (.json)",
|
||
"workflowOptionHtml": "Dịch HTML (.html)",
|
||
"workflowOptionPptx": "Thuyết trình PPTX (.pptx)",
|
||
"autoWorkflowLabel": "Tự động chọn quy trình",
|
||
"txtSettingsTitleText": "Tùy chọn dịch TXT",
|
||
"insertModeLabel": "Chế độ chèn",
|
||
"insertModeReplace": "Thay thế bản gốc (Replace)",
|
||
"insertModeAppend": "Thêm vào sau bản gốc (Append)",
|
||
"insertModePrepend": "Thêm vào trước bản gốc (Prepend)",
|
||
"insertModeHelpTxt": "Chọn cách chèn văn bản đã dịch.",
|
||
"separatorLabel": "Dấu phân cách",
|
||
"separatorPlaceholderSimple": "Ví dụ: \\n---\\n",
|
||
"separatorHelp": "Ký tự dùng để phân cách văn bản gốc và văn bản dịch trong chế độ Append hoặc Prepend. <code>\\n</code> đại diện cho xuống dòng.",
|
||
"segmentModeLabel": "Chế độ phân đoạn",
|
||
"segmentModeLine": "Theo dòng (Mỗi dòng là một đoạn)",
|
||
"segmentModeParagraph": "Theo đoạn văn (Gộp các dòng không trống liên tiếp)",
|
||
"segmentModeNone": "Không phân đoạn (Toàn bộ văn bản là một đoạn)",
|
||
"segmentModeHelp": "Chọn cách phân chia văn bản để dịch.",
|
||
"docxSettingsTitleText": "Tùy chọn dịch DOCX",
|
||
"insertModeHelpDocx": "Chọn cách chèn văn bản đã dịch.",
|
||
"xlsxSettingsTitleText": "Tùy chọn dịch XLSX",
|
||
"insertModeHelpXlsx": "Chọn cách chèn văn bản đã dịch vào các ô.",
|
||
"xlsxTranslateRegionsLabel": "Vùng dịch (Tùy chọn)",
|
||
"xlsxTranslateRegionsPlaceholder": "Mỗi dòng một vùng, ví dụ: Sheet1!A1:B10 (áp dụng cho tất cả các sheet nếu bỏ qua tên sheet).",
|
||
"srtSettingsTitleText": "Tùy chọn dịch SRT",
|
||
"insertModeHelpSrt": "Chọn cách chèn văn bản đã dịch.",
|
||
"epubSettingsTitleText": "Tùy chọn dịch EPUB",
|
||
"insertModeHelpEpub": "Chọn cách chèn văn bản đã dịch.",
|
||
"htmlSettingsTitleText": "Tùy chọn dịch HTML",
|
||
"insertModeHelpHtml": "Chọn cách chèn văn bản đã dịch.",
|
||
"assSettingsTitleText": "Tùy chọn dịch ASS",
|
||
"insertModeHelpAss": "Chọn cách chèn văn bản đã dịch.",
|
||
"separatorPlaceholderAss": "Ví dụ: \\N (ký tự xuống dòng)",
|
||
"separatorHelpAss": "Ký tự dùng để phân cách văn bản gốc và văn bản dịch trong chế độ Append hoặc Prepend. <code>\\N</code> là ký tự xuống dòng cho định dạng ASS.",
|
||
"pptxSettingsTitleText": "Tùy chọn dịch PPTX",
|
||
"insertModeHelpPptx": "Chọn cách chèn văn bản đã dịch vào hộp văn bản.",
|
||
"jsonSettingsTitleText": "Cấu hình đường dẫn JSON",
|
||
"jsonPathLabel": "Đường dẫn JSON cần dịch",
|
||
"jsonPathPlaceholder": "Mỗi dòng một đường dẫn, ví dụ:\n$.name\n$.*",
|
||
"jsonPathHelp": "Sử dụng cú pháp <code>jsonpath-ng</code>. Mỗi dòng đại diện cho một đường dẫn JSON. Tất cả các chuỗi trong các đối tượng khớp sẽ được dịch.",
|
||
"parsingSettingsTitleText": "Cấu hình phân tích",
|
||
"parsingEngineLabel": "Công cụ phân tích",
|
||
"parsingEngineHelp": "Nếu tệp tải lên đã ở định dạng .md, mục này có thể bỏ qua.",
|
||
"mineruTokenPlaceholder": "Bắt buộc khi sử dụng công cụ Mineru",
|
||
"modelVersionLabel": "Phiên bản mô hình Mineru",
|
||
"modelVersionVlm": "VLM",
|
||
"modelVersionPipline": "Pipeline",
|
||
"modelVersionHelp": "Mineru VLM là mô hình thử nghiệm nội bộ mới hơn.",
|
||
"mineruDeployBaseUrlLabel": "URL dịch vụ (Base URL)",
|
||
"mineruDeployBaseUrlPlaceholder": "Ví dụ: http://127.0.0.1:8000",
|
||
"mineruDeployBackendLabel": "Loại Backend",
|
||
"mineruDeployLangListLabel": "Danh sách ngôn ngữ (Chế độ Pipeline)",
|
||
"mineruDeployServerUrlLabel": "URL máy chủ",
|
||
"mineruDeployServerUrlPlaceholder": "Ví dụ: http://127.0.0.1:30000",
|
||
"mineruDeployParseMethodLabel": "Phương pháp phân tích",
|
||
"mineruDeployTableEnableLabel": "Nhận dạng bảng",
|
||
"mineruDeployStartPageLabel": "Trang bắt đầu",
|
||
"mineruDeployEndPageLabel": "Trang kết thúc",
|
||
"mineruDeployFormulaEnableLabel": "Bật phân tích công thức",
|
||
"formulaOcrLabel": "Nhận dạng công thức",
|
||
"codeOcrLabel": "Nhận dạng mã (Code)",
|
||
"aiSettingsTitleText": "Mô hình dịch",
|
||
"skipTranslationLabel": "Bỏ qua dịch thuật",
|
||
"platformLabel": "Chọn nền tảng",
|
||
"platformCustom": "API tùy chỉnh",
|
||
"baseUrlLabel": "Địa chỉ API (Base URL)",
|
||
"baseUrlPlaceholder": "Địa chỉ tương thích OpenAI",
|
||
"apiKeyPlaceholder": "Vui lòng nhập API Key của bạn",
|
||
"modelIdLabel": "Model ID",
|
||
"modelIdPlaceholder": "Ví dụ: gpt-4o, glm-4",
|
||
"systemProxyLabel": "Bật proxy hệ thống",
|
||
"forceJson": "Bắt buộc xuất JSON",
|
||
"forceJsonTooltip": "Bắt buộc mô hình xuất định dạng JSON khi được yêu cầu. Có thể làm giảm chất lượng dịch; khuyên dùng nên tắt đối với các mô hình tuân thủ hướng dẫn tốt.",
|
||
"translationSettingsTitleText": "Cấu hình dịch thuật",
|
||
"targetLanguageLabel": "Ngôn ngữ đích",
|
||
"targetLanguageCustom": "Khác (Tùy chỉnh)",
|
||
"customLangPlaceholder": "Vui lòng nhập ngôn ngữ đích, ví dụ: Vietnamese",
|
||
"thinkingModeLabel": "Chế độ tư duy (Thinking Mode)",
|
||
"thinkingModeTooltip": "Thiết lập xem mô hình suy luận hỗn hợp có thực hiện tư duy hay không. Hiện được hỗ trợ bởi dòng glm4.5 của Zhipu, dòng seed1.6 của Volcengine, SiliconFlow, dòng Gemini của Google và 302AI (một phần). Khuyên dùng tùy chọn 'Tắt'.",
|
||
"thinkingModeEnable": "Bật",
|
||
"thinkingModeDisable": "Tắt (Khuyên dùng)",
|
||
"thinkingModeDefault": "Mặc định",
|
||
"customPromptLabel": "Prompt tùy chỉnh",
|
||
"customPromptPlaceholder": "Tùy chọn, ví dụ: \"Không dịch tên người, giữ nguyên ngôn ngữ gốc\"",
|
||
"chunkSizeLabel": "Kích thước phân khối (Chunk Size)",
|
||
"resetBtn": "Đặt lại",
|
||
"concurrentLabel": "Số lượng đồng thời",
|
||
"retryLabel": "Thử lại",
|
||
"rpmLabel": "Số yêu cầu mỗi phút (RPM)",
|
||
"tpmLabel": "Số token mỗi phút (TPM - Ước tính)",
|
||
"unlimitedPlaceholder": "Để trống nếu không giới hạn",
|
||
"glossaryGenTitle": "Thuật ngữ",
|
||
"glossaryLabel": "Bảng thuật ngữ (Tùy chọn)",
|
||
"glossaryHelp": "Chọn một hoặc nhiều tệp CSV. Các tệp phải chứa tiêu đề 'src' và 'dst', đại diện cho thuật ngữ nguồn và đích.",
|
||
"viewGlossaryBtn": "Xem bảng thuật ngữ",
|
||
"clearGlossaryBtn": "Xóa",
|
||
"glossaryGenEnableLabel": "Tự động tạo bảng thuật ngữ",
|
||
"glossaryCustomPromptLabel": "Prompt tùy chỉnh",
|
||
"glossaryCustomPromptPlaceholder": "Gợi ý tạo bảng thuật ngữ",
|
||
"glossaryGenConfigLabel": "Cấu hình tạo thuật ngữ",
|
||
"glossaryGenConfigSame": "Giống cấu hình dịch",
|
||
"glossaryGenConfigCustom": "Tùy chỉnh",
|
||
"importConfigBtn": "Nhập cấu hình",
|
||
"exportConfigBtn": "Xuất cấu hình",
|
||
"taskListTitle": "Danh sách tác vụ",
|
||
"newTaskBtn": "Tác vụ mới",
|
||
"noTaskPlaceholder": "Chưa có tác vụ nào. Nhấn \"Tác vụ mới\" để bắt đầu!",
|
||
"taskCardIdLabel": "ID Tác vụ",
|
||
"taskCardIdPlaceholder": "Đang chờ gửi...",
|
||
"taskCardFileDrop": "Nhấp hoặc kéo tệp vào đây",
|
||
"taskCardFileSelected": "Đã chọn tệp",
|
||
"taskCardFilenameLabel": "Tên tệp: ",
|
||
"taskCardLogLabel": "Nhật ký (Logs)",
|
||
"copyLogsTooltip": "Sao chép nhật ký",
|
||
"taskCardStatusWaiting": "Đang chờ tải tệp lên...",
|
||
"taskCardPreviewBtn": "Xem trước",
|
||
"taskCardDownloadBtn": "Tải xuống",
|
||
"taskCardAttachmentBtn": "Tệp đính kèm",
|
||
"taskCardStartBtn": "Bắt đầu dịch",
|
||
"downloadMdEmbedded": "Markdown (Nhúng ảnh)",
|
||
"downloadMdZip": "Markdown nén (Zip)",
|
||
"previewBilingualBtn": "Song ngữ",
|
||
"previewTranslatedOnlyBtn": "Chỉ bản dịch",
|
||
"syncScrollTooltip": "Cuộn đồng bộ",
|
||
"previewOriginal": "Bản gốc",
|
||
"previewTranslated": "Bản dịch",
|
||
"closeBtn": "Đóng",
|
||
"tutorialModalTitle": "Hướng dẫn sử dụng",
|
||
"tutorialModalBody": "<p><i class=\"bi bi-camera-video me-2\"></i>Video hướng dẫn có sẵn trên Bilibili bằng cách tìm kiếm <a href=\"https://search.bilibili.com/all?keyword=docutranslate\" target=\"_blank\">docutranslate</a>.</p><p>Chào mừng bạn đến với DocuTranslate! Vui lòng làm theo các bước sau để dịch tài liệu của bạn:</p><ol><li><strong><i class=\"bi bi-diagram-3 me-2\"></i>Bước 1: Chọn quy trình làm việc</strong><p class=\"mt-2\">Ở đầu bảng cấu hình bên trái, trước tiên hãy chọn quy trình xử lý phù hợp nhất với loại tệp của bạn.</p><div class=\"alert alert-info mt-2\" role=\"alert\"><i class=\"bi bi-lightbulb-fill me-2\"></i>Mẹo: \"Tự động chọn quy trình\" được bật theo mặc định. Chỉ cần tải tệp lên, hệ thống sẽ tự động khớp với quy trình phù hợp để đơn giản hóa thao tác.</div><ul><li><b>Chuyển sang Markdown rồi Dịch</b>: Thích hợp để dịch PDF, Markdown, hình ảnh, v.v. Đây là chế độ đa năng và mạnh mẽ nhất.</li><li><b>Dịch văn bản thuần</b>: Dùng để dịch các tệp văn bản thuần <code>.txt</code>.</li><li><b>Dịch EPUB</b>: Dùng để dịch các tệp sách điện tử <code>.epub</code>.</li><li><b>Dịch DOCX</b>: Dùng để dịch các tài liệu Word <code>.docx</code>.</li><li><b>Dịch XLSX</b>: Dùng để dịch các tệp bảng tính <code>.xlsx</code> hoặc <code>.csv</code>.</li><li><b>Dịch PPTX</b>: Dùng để dịch các tệp trình chiếu <code>.pptx</code>.</li><li><b>Dịch phụ đề SRT</b>: Dùng để dịch các tệp phụ đề <code>.srt</code>.</li><li><b>Dịch phụ đề ASS</b>: Dùng để dịch các tệp phụ đề nâng cao <code>.ass</code>.</li><li><b>Dịch JSON</b>: Dùng để dịch các trường cụ thể trong tệp <code>.json</code>.</li><li><b>Dịch HTML</b>: Dùng để dịch các tệp trang web <code>.html</code>.</li></ul></li><li><strong><i class=\"bi bi-gear-fill me-2\"></i>Bước 2: Cấu hình tham số</strong><p class=\"mt-2\">Sau khi chọn quy trình, các tùy chọn cấu hình liên quan sẽ xuất hiện bên dưới. Vui lòng hoàn tất cài đặt theo thứ tự (tất cả cấu hình được tự động lưu trong trình duyệt của bạn):</p><p class=\"mb-2\"><strong>A. Tùy chọn riêng theo quy trình</strong> (Xuất hiện dựa trên lựa chọn ở Bước 1):</p><ul class=\"ms-4\"><li><u>Nếu chọn \"Chuyển sang Markdown rồi Dịch\"</u>, hãy cấu hình <strong>Cấu hình phân tích</strong>:<ul><li><strong>Công cụ phân tích</strong>: Chọn công cụ để chuyển đổi tệp của bạn (như PDF) sang định dạng Markdown phù hợp để dịch. Không cần chọn nếu tệp đã ở định dạng Markdown.</li><li><strong>Mineru Token</strong>: Nếu chọn công cụ <code>minerU</code>, bạn cần nhập token vào đây.</li></ul></li><li><u>Nếu chọn \"Văn bản thuần/DOCX/XLSX/PPTX/SRT/ASS/EPUB/HTML\"</u>, hãy cấu hình <strong>Tùy chọn dịch</strong> tương ứng:<ul><li><strong>Chế độ chèn</strong>: Xác định cách đặt kết quả dịch vào tài liệu. Bạn có thể chọn \"Thay thế\" bản gốc, \"Thêm vào sau\" (Append), hoặc \"Thêm vào trước\" (Prepend).</li><li><strong>Dấu phân cách</strong>: Khi chọn chế độ \"Thêm vào sau\" hoặc \"Thêm vào trước\", ký tự này được dùng để ngăn cách giữa bản gốc và bản dịch (ví dụ: <code>\\\\N</code> thường dùng cho định dạng ASS, <code><br /></code> cho định dạng EPUB để xuống dòng).</li></ul></li><li><u>Nếu chọn \"Dịch JSON\"</u>, hãy cấu hình <strong>Đường dẫn JSON</strong>:<ul><li><strong>Đường dẫn JSON cần dịch</strong>: Nhập mỗi dòng một biểu thức <a href=\"https://goessner.net/articles/JsonPath/\" target=\"_blank\">JSONPath</a> để dịch tất cả các chuỗi trong các đối tượng khớp. Ví dụ: <code>$.*</code> (dịch tất cả chuỗi), <code>$..description</code> (dịch tất cả giá trị có khóa là <code>description</code>).</li></ul></li></ul><p class=\"mb-2 mt-3\"><strong>B. Tùy chọn chung</strong> (Áp dụng cho mọi quy trình):</p><ul class=\"ms-4\"><li><strong>Mô hình dịch</strong>:<ul><li><strong>Chọn nền tảng/Địa chỉ API/API Key/Model ID</strong>: Cấu hình dịch vụ dịch thuật AI bạn muốn sử dụng. Mô hình tuân thủ hướng dẫn càng tốt thì xác suất <strong>lỗi</strong> và <strong>bỏ sót</strong> càng thấp.</li><li><strong>Bỏ qua dịch thuật</strong>: Nếu chọn, hệ thống chỉ thực hiện phân tích tài liệu và chuyển đổi định dạng mà không gọi AI để dịch.</li></ul></li><li><strong>Cấu hình dịch thuật</strong>:<ul><li><strong>Ngôn ngữ đích</strong>: Chỉ định ngôn ngữ cần dịch sang.</li><li><strong>Prompt tùy chỉnh</strong>: Tùy chọn, thêm hướng dẫn bổ sung, ví dụ \"Không dịch tên riêng\".</li><li><strong>Chế độ tư duy</strong>: Cài đặt cho một số mô hình hỗ trợ suy luận hỗn hợp; khuyên dùng \"Tắt (Khuyên dùng)\".</li><li><strong>Kích thước phân khối/Số lượng đồng thời, v.v.</strong>: Các tham số nâng cao để điều chỉnh hiệu suất và hành vi yêu cầu API; thông thường nên giữ mặc định.</li></ul></li><li><strong>Thuật ngữ</strong>:<ul><li><strong>Tải lên bảng thuật ngữ (Tùy chọn)</strong>: Tải lên tệp CSV (phải chứa cột 'src' và 'dst') để đảm bảo tính nhất quán và chính xác cho các thuật ngữ cụ thể.</li><li><strong>Tự động tạo bảng thuật ngữ</strong>: Khi bật, chương trình sẽ trích xuất thuật ngữ từ văn bản gốc để tạo bảng thuật ngữ trước khi tiến hành dịch.</li></ul></li></ul></li><li><strong><i class=\"bi bi-file-earmark-arrow-up-fill me-2\"></i>Bước 3: Tải tệp lên</strong><p class=\"mt-2\">Trong danh sách tác vụ bên phải, nhấp hoặc kéo tài liệu của bạn vào khu vực tải lên.</p></li><li><strong><i class=\"bi bi-play-circle-fill me-2\"></i>Bước 4: Bắt đầu dịch</strong><p class=\"mt-2\">Sau khi chọn tệp thành công, nhấp nút <span class=\"badge bg-primary\">Bắt đầu dịch</span> ở góc dưới bên phải thẻ tác vụ. Hệ thống sẽ bắt đầu xử lý và bạn có thể xem tiến độ thời gian thực trong khu vực nhật ký.</p></li><li><strong><i class=\"bi bi-check-circle-fill me-2\"></i>Bước 5: Xem và Tải xuống</strong><p class=\"mt-2\">Sau khi dịch xong, các nút thao tác sẽ xuất hiện trên thẻ tác vụ:</p><ul><li><span class=\"badge bg-success\"><i class=\"bi bi-eye-fill me-1\"></i>Xem trước</span>: So sánh văn bản gốc và bản dịch song song trong bảng trượt ra.</li><li><span class=\"badge bg-secondary\"><i class=\"bi bi-download me-1\"></i>Tải xuống</span>: Tải xuống bản dịch ở nhiều định dạng, bao gồm PDF, DOCX, Markdown, v.v.</li><li><span class=\"badge bg-info\"><i class=\"bi bi-paperclip me-1\"></i>Tệp đính kèm</span>: Nếu có tệp bổ sung nào được tạo trong quá trình (như bảng thuật ngữ tự động), bạn có thể tải xuống tại đây.</li></ul></li></ol><div class=\"alert alert-warning mt-3\" role=\"alert\"><i class=\"bi bi-info-circle-fill me-2\"></i><strong>Lưu ý quan trọng</strong>: Tất cả cấu hình được tự động lưu cục bộ trong trình duyệt để sử dụng lần sau. Bạn cũng có thể dùng nút \"Xuất cấu hình\" và \"Nhập cấu hình\" mới để sao lưu và khôi phục cài đặt.</div>",
|
||
"tutorialUnderstandBtn": "Tôi đã hiểu",
|
||
"contributorsModalTitle": "Cảm ơn vì đã đóng góp",
|
||
"contributorsPara1": "DocuTranslate là một dự án mã nguồn mở! Nhu cầu và việc sử dụng của cộng đồng là động lực thúc đẩy sự tiến bộ của dự án.",
|
||
"contributorsPara2": "Cảm ơn tất cả những người đã tài trợ, gửi mã, đóng góp ý kiến quý báu và gắn sao (star) cho dự án!",
|
||
"contributorsWelcome": "Hoan nghênh bạn đóng góp qua các cách sau:",
|
||
"contributorsGithub": "Trang GitHub",
|
||
"contributorsPR": "Gửi Pull Request",
|
||
"contributorsIssue": "Báo cáo vấn đề (Issue)",
|
||
"contributorsQQ": "Hoặc liên hệ tác giả qua nhóm QQ: 1047781902",
|
||
"glossaryModalTitle": "Bảng thuật ngữ hiện tại",
|
||
"glossaryTableSource": "Nguồn (src)",
|
||
"glossaryTableDestination": "Đích (dst)",
|
||
"engineOptionIdentity": "Đã là định dạng Markdown",
|
||
"engineOptionMineru": "Mineru (Khuyên dùng)",
|
||
"engineOptionDocling": "Docling",
|
||
"engineOptionMineru_deploy": "Dịch vụ Mineru Deploy",
|
||
"apiHrefInfo302ai": "👈 Đăng ký qua liên kết này để nhận $1 tín dụng miễn phí",
|
||
"glossaryEmpty": "Bảng thuật ngữ trống",
|
||
"status_fillRequired": "Vui lòng điền tất cả các trường bắt buộc!",
|
||
"btn_initializing": "Đang khởi tạo...",
|
||
"btn_cancelTranslation": "Hủy dịch",
|
||
"status_cancelling": "Đang hủy...",
|
||
"btn_reTranslate": "Dịch lại",
|
||
"preview_cantPreviewType": "Không thể xem trước loại tệp này",
|
||
"preview_noOriginalCache": "Không có tệp gốc được lưu trong bộ nhớ đệm để xem trước.",
|
||
"pdf_preparing": "Đang chuẩn bị PDF...",
|
||
"preview_bilingual": "Xem trước song ngữ",
|
||
"preview_translatedOnly": "Xem trước chỉ bản dịch",
|
||
"configImportSuccess": "Nhập cấu hình thành công!",
|
||
"configImportError": "Không thể phân tích tệp cấu hình, vui lòng kiểm tra định dạng tệp.",
|
||
"providerLabel": "Nhà cung cấp"
|
||
}
|
||
}
|