11 个版本

0.0.12 2024 年 8 月 3 日
0.0.11 2024 年 8 月 3 日
0.0.10 2024 年 6 月 23 日

#208命令行工具

Download history 320/week @ 2024-06-16 105/week @ 2024-06-23 148/week @ 2024-07-28 62/week @ 2024-08-04 1/week @ 2024-08-11

每月 211 次下载

MIT/Apache

185KB
964

trans-epub

Crates.io Docs.rs CI Rust GitHub Template

这是一个使用 OpenAI/Gemini API 翻译 EPUB 的 CLI 工具。

注意

  • 如果已经可以购买到翻译后的书籍,我们强烈建议您购买。
  • 这只是一个帮助阅读尚未翻译的书籍的工具。
  • 由于 ratelimit 的限制,即使 API 并行调用,翻译也需要很长时间。
  • 此外,虽然翻译是以 20 行为单位进行的,但如果行数与原文和译文不符,则需要为每一行再次调用 API,这比简单翻译文本要昂贵。

Translate sample

安装

Cargo

  • 按照 此指南 安装 rust 工具链以安装 cargo。
  • 运行 cargo install trans-epub

执行

安装

curl -OL https://github.com/tomiyan/trans-epub/releases/download/0.0.10/trans-epub-0.0.10-macos-arm64.tar.gz
tar xvzf trans-epub-0.0.10-macos-arm64.tar.gz

使用 Open AI 帮助

./trans-epub open-ai --help
Use OpenAI API

Usage: trans-epub open-ai [OPTIONS] --input <INPUT> --output <OUTPUT> --language <LANGUAGE> --api-key <API_KEY>

Options:
  -i, --input <INPUT>        input file path
  -o, --output <OUTPUT>      output file path
  -l, --language <LANGUAGE>  translate language
  -m, --model <MODEL>        OpenAI model ex(gpt-4o, gpt-4-turbo, gpt-3.5-turbo-1106) [default: gpt-4o]
  -a, --api-key <API_KEY>    OpenAI API Key [env: API_KEY]
      --lines <LINES>        Number of lines of translation [default: 20]
      --requests <REQUESTS>  Number of concurrent requests [default: 5]
  -h, --help                 Print help

使用 Open AI 翻译

export API_KEY=sk-....
./trans-epub open-ai -i ./origin.epub -o ./translated.epub -l Japanese

请稍等片刻。

使用 Gemini 帮助

./trans-epub gemini --help
Use Gemini API

Usage: trans-epub gemini [OPTIONS] --input <INPUT> --output <OUTPUT> --language <LANGUAGE> --api-key <API_KEY>

Options:
  -i, --input <INPUT>        input file path
  -o, --output <OUTPUT>      output file path
  -l, --language <LANGUAGE>  translate language
  -m, --model <MODEL>        Gemini model ex(gemini-1.5-flash) [default: gemini-1.5-flash]
  -a, --api-key <API_KEY>    Gemini API Key [env: API_KEY]
      --lines <LINES>        Number of lines of translation [default: 100]
      --requests <REQUESTS>  Number of concurrent requests [default: 1]
  -h, --help                 Print help

使用 Gemini 翻译

export API_KEY=AI....
./trans-epub gemini -i ./origin.epub -o ./translated.epub -l Japanese

请稍等片刻。

许可

根据您的选择,许可协议可以是以下之一:

贡献

除非您明确说明,否则根据 Apache-2.0 许可协议定义的任何有意提交以包含在作品中的贡献,均应双重许可,不附加任何额外条款或条件。

请参阅 CONTRIBUTING.md

感谢

灵感来自 epub-translator

依赖关系

~16–29MB
~438K 代码行数