dsh-easypaper-translate:把英文论文做成中英对照 PDF

前言

在 DeepSeek Harness(DSH)里读外文论文,常见做法是整篇丢给在线翻译或自己复制段落问模型。前者对版式、表格和图内文字往往不够用,后者对照原文时要反复切换窗口。DSH 社区插件 dsh-easypaper-translate(维护者 GROW1234567,SkillHub 分类为联网工具)走的是另一条路:在本地把 PDF 拆块、裁图裁表,由你配置的会话模型完成翻译,再在本地合成 奇数页原文、偶数页译文 的对照 PDF。本文介绍它的能力边界、安装方式与典型流程;事实以 GitHub 仓库 README 与 package.json(当前版本 0.2.0,MIT)为准。

这是什么

简易论文翻译 是个人开发的 DSH 插件,目标不是「出版级排版」,而是 看得懂:正文、表格与图内文字尽量原位替换中文,公式保留原排版,图表区域在保护规则下可跳过部分图例文字。项目 仅提供工具,不包含任何论文或译本;处理内容的合法使用权、版权与是否向模型服务发送材料,均由使用者自行负责(README 中有中英文法律声明)。

抽取与渲染 不依赖第三方排版服务;翻译步骤由 DSH 会话中的模型完成,内容会发往你所配置的模型服务,因此 SkillHub 将其归为联网工具类是合理的。

核心功能

下面按 README 中的处理表概括各元素行为。

元素 处理方式
正文 逐块擦除原文,按原位置重排中文(字号自适应)
表格 模型读懂结构后重建为统一三线表,尺寸受原表墨迹约束
图内文字 检测墨迹框后按编号原位替换,带反色描边保证对比度
公式 保留原始数学排版,不硬塞中文
曲线/柱状图等 检测到长条墨迹可整框跳过,减少涂白图表
参考文献 标题译中文并加《》,作者/期刊/DOI 保留
页眉 作为可译块抽取,期刊名可译中文

输出形态:奇数页 嵌入矢量原文(可搜索、可复制);偶数页 为渲染后的中文页(README 注明译文页为图片,不可搜索复制)。

插件向模型暴露两个工具:paper_translate(prepare / build / status / batch)与 paper_translate_env(check / install 依赖)。Python 侧依赖 pymupdf、scipy、pyyaml,约 210 MB,安装在插件目录内(.pylibs),不污染系统 Python。

安装与启用

DSH 以当前进程权限加载插件,安装前建议自行查看仓库源码与 MIT 许可证。安装命令须使用 README 原文写法,不要用仓库名拼 github:owner/repo。

# 1) 装进当前 profile(DSH 界面里或用 CLI)
dsh plugin --profile desktop add <本目录路径>

装完后 重启 DSH(插件在启动时加载;改 lib/index.js 后也需重启,Python 脚本则在每次调用时执行)。

首次使用前检查依赖:

调用工具 paper_translate_env,action = "check"

若缺失则 action = "install"(从 PyPI 拉取 wheel,之后可离线使用)。

典型用法

典型流程分三步:本地 prepare → 模型翻译 → 本地 build。翻译由会话模型完成,不是插件内置在线 API。

1. paper_translate(action="prepare", pdfPath="D:\papers\xxx.pdf", workDir="D:\papers\xxx_work")
   → 抽文字块、裁表格、裁插图(纯本地,几秒)

2. 模型翻译
   → 译文落到 workDir/zh/,表格矩阵落到 workDir/tables/matrices.json

3. paper_translate(action="build", pdfPath="...", workDir="...", dpi=200, nameTemplate="...")
   → 生成中英对照 PDF

常用参数(摘自 README):

参数 说明
pdfPath 源 PDF 绝对路径
workDir 工作目录,默认 ./work;每篇论文应使用独立目录
dpi 译文页 DPI:150 / 200 / 300,默认 150
imageDpi 图片/表格裁剪 DPI,默认 200
nameTemplate 输出文件名模板

默认输出命名:[中英对照]{zh_title}+{en_title}.pdf。可用 {zh_title}、{en_title}、{stem}、{dpi}、{pages}、{date} 等字段;写错会回退默认,不报错。

随时可用 action="status" 查看已译/待译页数及表格、插图是否就绪。中断后可续跑:已完成的 zh/pNN.json 不会重译。

paper_translate(action="batch", batchDir="...") 会列出目录内所有 PDF 并 串行 处理(作者说明是为避免并发抢额度与难以定位失败)。批量前请自行排除文件名含 [中英对照] 的已有产物,否则可能重复翻译。

性能、成本与限制

README 给出 22 页样本的参考数据:抽取约 8 s,模型翻译约 3–8 min,200 dpi 构建约 8–11 s;单篇约 20 页论文费用约 ¥0.5(按 DeepSeek 公开价估算,实际随套餐与缓存浮动)。DPI 主要影响构建耗时与体积,不影响 token 消耗。

已知限制包括:图形表多行可能丢行、一页多表时可能只重建首张、曲线图图例/坐标轴可能被保护规则保留英文、PDF 切块导致的跨块断句、译文页不可搜索等。复杂版式建议先译一篇试跑。

适用场景与注意

适合需要 对照阅读原文、又希望表格与图内说明尽量中文化的研究者或个人读者。不适合追求投稿级版式或译文页全文检索的场景。

使用前请注意:每篇论文独立 workDir,勿复用;译文质量取决于模型与提示词;大批量建议一次 5–10 篇。插件在 DSH 进程内运行,翻译环节会将内容发往你所配置的模型服务,勿用于涉密或未授权材料。

结尾

dsh-easypaper-translate 把「拆 PDF → 模型译 → 本地合成对照 PDF」收成两条可调用工具,用奇偶分页降低阅读原文时的切换成本。社区目录见 SkillHub 插件页,源码与完整参数说明见 GitHub。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye