PDFMathTranslate: Star13.8k,一款基于AI的PDF文档全文双语翻译PDF文档全文双语翻译,保留格式神器,你应该需要它

嗨,大家好,我是小华同学,关注我们获得"最新、最全、最优质"开源项目和高效工作学习方法

PDFMathTranslate是一个开源项目,旨在为用户提供便捷的PDF科学论文翻译解决方案。它不仅能够翻译文本,还能保留公式、图表、目录和注释等元素,确保翻译后的文档与原文保持一致的阅读体验。

功能特点

  • 保留格式:翻译后的文档能够完整保留原文件的公式、图表、目录和注释。

  • 多语言支持:支持多种语言的翻译,满足不同用户的需求。

  • 多样化翻译服务:集成了Google、DeepL、Ollama、OpenAI等翻译服务,用户可以根据需要选择。

  • 多种使用方式:提供命令行工具、图形用户界面、Docker容器等多种使用方式。

使用方法

命令行工具

在安装了Python(版本在3.8到3.12之间)的环境中,可以通过以下命令安装PDFMathTranslate

pip install pdfmathtranslate

然后,执行以下命令进行翻译:

pdf2zh example.pdf

这将在当前工作目录生成翻译后的文档example-mono.pdf和双语文档example-dual.pdf

图形用户界面

如果你更喜欢图形界面,可以通过以下命令启动:

pdf2zh -i

如果浏览器没有自动打开,可以手动访问以下链接:

http://localhost:7860/

Docker使用

如果你熟悉Docker,可以使用以下命令拉取并运行容器:

docker pull byaidu/pdf2zh
docker run -d -p 7860:7860 byaidu/pdf2zh

然后在浏览器中访问:

http://localhost:7860/

高级选项

PDFMathTranslate提供了丰富的命令行选项,例如:

  • -p:进行部分文档的翻译。

  • -li:指定源语言。

  • -lo:指定目标语言。

  • -s:选择翻译服务。

  • -t:设置多线程翻译。

更多高级选项和详细使用方法,请参考官方文档

在线服务

如果你不想在本地安装,可以直接使用以下在线服务:

请注意,在线服务的计算资源有限,请避免过度使用。

API服务

Pythone方式

from pdf2zh import translate, translate_stream

params = {"lang_in": "en", "lang_out": "zh", "service": "google", "thread": 4}
file_mono, file_dual = translate(files=["example.pdf"], **params)[0]
with open("example.pdf", "rb") as f:
    stream_mono, stream_dual = translate_stream(stream=f.read(), **params)

HTTP方式

pip install pdf2zh[backend]
pdf2zh --flask
pdf2zh --celery worker

curl http://localhost:11008/v1/translate -F "file=@example.pdf" -F "data={\"lang_in\":\"en\",\"lang_out\":\"zh\",\"service\":\"google\",\"thread\":4}"
{"id":"d9894125-2f4e-45ea-9d93-1a9068d2045a"}

curl http://localhost:11008/v1/translate/d9894125-2f4e-45ea-9d93-1a9068d2045a
{"info":{"n":13,"total":506},"state":"PROGRESS"}

curl http://localhost:11008/v1/translate/d9894125-2f4e-45ea-9d93-1a9068d2045a
{"state":"SUCCESS"}

curl http://localhost:11008/v1/translate/d9894125-2f4e-45ea-9d93-1a9068d2045a/mono --output example-mono.pdf

curl http://localhost:11008/v1/translate/d9894125-2f4e-45ea-9d93-1a9068d2045a/dual --output example-dual.pdf

curl http://localhost:11008/v1/translate/d9894125-2f4e-45ea-9d93-1a9068d2045a -X DELETE

同类项目

  • DocTranslator:一个在线文档翻译工具,支持多种文件格式,但可能无法保留复杂的排版格式。

  • Papago:由韩国NAVER公司开发的在线翻译服务,支持文档翻译,但同样在格式保留方面有所限制。

  • DeepL Translate:一个广受好评的在线翻译服务,提供高质量的翻译,但需要手动复制粘贴文本进行翻译。

与这些项目相比,PDFMathTranslate在保留原文排版格式方面具有明显优势,是阅读和翻译科学论文的理想选择。

结语

PDFMathTranslate是一个强大的PDF文档翻译工具,无论你是科研工作者、学生还是对科学论文感兴趣的普通读者,它都能帮助你跨越语言障碍,更好地理解和研究科学论文。快来尝试这个项目,让你的阅读和研究更加高效吧!

项目地址

https://github.com/Byaidu/PDFMathTranslate
相关推荐
背太阳的牧羊人2 分钟前
RAG检索中使用一个 长上下文重排序器(Long Context Reorder) 对检索到的文档进行进一步的处理和排序,优化输出顺序
开发语言·人工智能·python·langchain·rag
007_rbq10 分钟前
XUnity.AutoTranslator-Gemini——调用Google的Gemini API, 实现Unity游戏中日文文本的自动翻译
人工智能·python·游戏·机器学习·unity·github·机器翻译
Java知识技术分享43 分钟前
使用LangChain构建第一个ReAct Agent
python·react.js·ai·语言模型·langchain
奔跑吧邓邓子1 小时前
【Python爬虫(44)】分布式爬虫:筑牢安全防线,守护数据之旅
开发语言·分布式·爬虫·python·安全
IDRSolutions_CN1 小时前
如何在 PDF 文件中嵌入自定义数据
java·经验分享·pdf·软件工程·团队开发
程序员 小濠1 小时前
接口测试基础 --- 什么是接口测试及其测试流程?
自动化测试·python·测试工具·职场和发展·appium·接口测试·压力测试
程序媛徐师姐1 小时前
Python基于Django的酒店推荐系统【附源码】
python·django·酒店·酒店推荐·python django·酒店推荐系统·python酒店推荐系统
~kiss~2 小时前
python的thrift2pyi学习
windows·python·学习
奔跑吧邓邓子2 小时前
【Python爬虫(45)】Python爬虫新境界:分布式与大数据框架的融合之旅
开发语言·分布式·爬虫·python·大数据框架
Luke Ewin2 小时前
根据音频中的不同讲述人声音进行分离音频 | 基于ai的说话人声音分离项目
人工智能·python·音视频·语音识别·声纹识别·asr·3d-speaker