ChatGPT API SRT 字幕翻译器

作者 : noise 发布时间: 2024-08-5

介绍

该字幕翻译器不仅能够处理常见语言,还能够处理表情符号和单词乱序等非常规写作形式。然而,它可能并不总是产生确定性的输出并遵守线对线相关性,即使被指示遵循精确的指令并将模型参数设置为 0,也可能会扰乱字幕的时间。temperature

该实用程序使用 OpenAI ChatGPT API 翻译文本,特别关注基于行的翻译,尤其是 SRT 字幕。转换器通过消除 SRT 开销、将文本分组到批次中来优化令牌的使用,从而在不过度消耗令牌的情况下实现任意长度的翻译,同时确保行输入和输出之间的一对一匹配。

Web界面:https://cerlancism.github.io/chatgpt-subtitle-translator

GitHub:https://github.com/Cerlancism/chatgpt-subtitle-translator

1722859532179

特征

  • 正在进行的新工作:Web UI

  • 基于行的批处理:避免每个请求的令牌限制,减少开销令牌浪费,在一定程度上保持翻译上下文

  • 使用免费的 OpenAI 审核工具进行检查:如果模型极有可能拒绝翻译,则防止令牌浪费

  • 流式处理进程输出

  • 每分钟请求数 (RPM) 速率限制

  • TODO:每分钟令牌数速率限制 (TPM)

  • 进度恢复(仅限 CLI)- 缓解频繁的 API 网关错误和停机时间

  • TODO:重试翻译部分

设置

参考资料: https://github.com/openai/openai-quickstart-node#setup

  • 需要Node.js版本。本 README 假定 shell 环境>= 16.13.0``bash

  • 克隆此存储库并导航到该目录

    git clone https://github.com/Cerlancism/chatgpt-subtitle-translator && cd chatgpt-subtitle-translator

  • 安装要求

    npm install

  • 授予可执行权限

    chmod +x cli/translator.mjs

  • 复制到

    .example.env
    .env
    cp .env.example .env

  • 将您的 API 密钥添加到新创建的文件中

    .env

命令行界面

cli/translator.mjs --help
Usage: translator [options]
Translation tool based on ChatGPT API

选项:

  • --from <language> 源语言(默认:“”)

  • --to <language> 目标语言(默认为“英语”)

  • -i, --input <file> 输入包含此文件内容的源文本,格式为纯文本.srt

  • -o, --output <file> 输出文件名,默认基于输入文件名

  • -p, --plain-text <text> 使用此纯文本参数输入源文本

  • -s, --system-instruction <instruction> 使用此纯文本覆盖提示系统指令模板,忽略和选项Translate ${from} to ${to}``--from``--to

  • --initial-prompts <prompts> JSON 翻译的初始提示(默认:"[]")

  • --no-use-moderator 请勿使用 OpenAI API 审核端点

  • --no-prefix-number 不要在行前面加上数字索引

  • --no-line-matching 不要强制执行一对一的行数量输入输出匹配

  • -l, --history-prompt-length <length> 为下一个请求批处理保留的提示历史记录长度(默认值:10)

  • -b, --batch-sizes <sizes>JSON Array 中翻译提示切片的递增顺序的批量大小(默认:"[10, 100]")

    每个翻译提示中要包含的行数,前提是它们估计在标记限制内。 如果输出行数量不匹配,该数字将根据数组中的值逐步减少,最终达到 1。

    较大的批量大小通常会导致更高效的令牌利用率,并可能带来更好的上下文翻译。 但是,如果输出行数量不匹配或超过令牌限制,将导致令牌浪费,需要以较小的批处理大小重新提交。

ChatAPT 的其他选项:

来自NOISE资源阁-noisevip.cn
NOISE宝藏阁 » ChatGPT API SRT 字幕翻译器

发表回复

微信
我会尽快回复。
取消