Skip to content

Latest commit

 

History

History
243 lines (171 loc) · 6.58 KB

File metadata and controls

243 lines (171 loc) · 6.58 KB

English | 中文

Turn arXiv Papers into Multilingual Masterpieces

• 📖 介绍 • 🛠️ 安装指南 • ⚙️ 配置说明 • 📚 使用方式 • 🖼️ 翻译样例

从 arXiv 论文 ID 到译文 PDF 的端到端翻译。LaTeXTrans 有如下的特点和优势 :

  • 🌟 保持公式、排版和交叉引用的完整性
  • 🌟 保证术语翻译的一致性
  • 🌟 支持从原文 LaTeX 源码(通过提供的 arXiv 论文 id 自动下载)到译文 PDF 的端到端翻译

借助 LaTeXTrans,研究人员和学生可以得到更高质量的论文翻译而无需担心格式混乱或内容缺失,从而更高效地阅读和理解 arXiv 论文。

📖 介绍

LaTeXTrans 是一个基于多智能体协作的结构化 LaTeX 文档翻译系统. 该系统能够直接翻译 LaTeX 代码,并生成与原文排版高度一致的译文 PDF。 不同于传统文档翻译方法(例如 PDF 翻译)容易破坏公式和格式,该系统使用大模型直接翻译预处理过的论文 LaTeX 源码,并通过由 Parser, Translator, Validator, Summarizer, Terminology Extractor, Generator 这六个智能体组成的工作流实现了排版一致和格式保持.

🛠️ 安装指南

1. 克隆仓库

git clone https://github.com/NiuTrans/LaTeXTrans.git
cd LaTeXTrans
pip install -e .

(可选)使用 Conda 虚拟环境

conda create -n latextrans python=3.10 -y
conda activate latextrans
git clone https://github.com/NiuTrans/LaTeXTrans.git
cd LaTeXTrans
pip install -e .

2. 安装MikTex(推荐, 更轻量)或TeXLive

如需编译LaTeX文件(例如生成PDF输出),需要安装 MikTexTeXLive !

Important

*对于 MikTex,安装时请务必选择 “install on the fly”,此外,您需要额外安装 Strawberry Perl 支持编译。

⚙️ 配置说明

使用前请编辑配置文件:

config/default.toml

设置语言模型的API密钥和基础URL:

model = " " # model name (For example, deepseek-chat)
api_key = " " # your_api_key_here
base_url = " " # base url of the API (For example, https://api.deepseek.com/v1/chat/completions)

Note

下面的例子是对于不同的模型,推荐使用的base_url:

Model base_url
deepseek-chat https://api.deepseek.com/v1/chat/completions
gpt-4o https://api.openai.com/v1/chat/completions
gemini-2.5-pro https://generativelanguage.googleapis.com/v1beta/openai/chat/completions

📚 使用方式

通过 ArXiv ID 翻译

只需提供 arXiv 论文 ID 即可完成翻译:

latextrans --arxiv ${xxxx}
# For example, 
# latextrans --arxiv 2508.18791

现在也支持带版本号的 arXiv ID,可以指定论文的具体修订版本:

latextrans --arxiv 2508.18791v2

该命令将:

  1. 从 arXiv 下载 LaTeX 源码并解压
  2. 执行由解析、翻译、重构和编译组成的工作流
  3. 在 outputs 文件夹保存翻译后的论文 LaTeX 项目文件和编译生成的译文PDF

批量翻译 ArXiv 论文

支持逗号分隔的多个 arXiv ID:

latextrans --arxiv ${xxxx}, ${xxxx}
# For example,
# latextrans --arxiv 2508.18791v2, 2407.01648

翻译本地项目

本地压缩包(.zip/.tar/.tar.gz/.tgz):

latextrans --project D:\\path\\to\\paper_source.tar.gz

本地已解压项目目录:

latextrans --project D:\\path\\to\\paper_project_dir

当你提供 --arxiv--project 时,LaTeXTrans 只会处理这些显式指定的输入, 不会扫描并翻译 tex source 下其他已有项目。

如果你确实要处理 tex source 下全部已有项目,请使用:

latextrans --all-existing

Streamlit GUI

如果你想使用带有进度显示、日志和可配置参数的图形界面,可以运行:

latextrans-gui

也可以直接使用 Streamlit:

streamlit run src/gui/streamlit_app.py

Note

尽管 LaTeXTrans 支持任意语言到任意语言的翻译,但是目前版本仅对英文到中文的翻译做了相对完善的编译适配。翻译到其他语言时,最终输出的 pdf 可能会有错误,欢迎提出 issue 来描述您遇到的问题,我们会逐个解决。

🖼️ 翻译样例

以下是 LaTeXTrans 生成的四个真实翻译样例,左侧为原文,右侧为译文。

📄 样例 1 ( 英文->中文 ) :

原文 译文

📄 样例 2 ( 英文->中文 ):

原文 译文

📄 样例 3 ( 英文->日文 ):

原文 译文

📄 样例 4 ( 英文->日文 ):

原文 译文

📂 更多样例请查看examples/ 文件夹, 包含每个样例的完整翻译 PDF。


致谢

感谢为本系统做出贡献的同学: 徐浩淞,刘奕扬,张恒,李晨阳,黄小茹,张一航,刘策,张硕昌,于济航,刘博扬。


Citation

@article{zhu2025latextrans,
  title={LaTeXTrans: Structured LaTeX Translation with Multi-Agent Coordination},
  author={Zhu, Ziming and Wang, Chenglong and Xing, Shunjie and Huo, Yifu and Tian, Fengning and Du, Quan and Yang, Di and Zhang, Chunliang and Xiao, Tong and Zhu, Jingbo},
  journal={arXiv preprint arXiv:2508.18791},
  year={2025}
}