Repolode
Cerlancism

Cerlancism/chatgpt-subtitle-translator

ChatGPTやローカルのOllamaモデルを含むOpenAI互換APIを使い、SRT字幕ファイルを行単位で翻訳するCLI・Webツール。

スター
391
フォーク
43
未解決の Issue
4
最終コミット
7 日前

これは何?

OpenAIのChat Completions APIや、ローカルのOllamaサーバーなどのOpenAI互換プロバイダーを通じて、大規模言語モデルで字幕ファイルやプレーンテキストを翻訳します。行単位の翻訳を前提としており、送信前にSRTのインデックスとタイムスタンプを取り除き、行をまとめてバッチ処理します。これによりトークン使用量を抑え、出力の行数を入力と一致させて字幕のタイミングを保ちます。

WebインターフェースとCLIの両方を利用できます。CLIには、進捗ファイルを使った中断ジョブの再開、翻訳前のモデレーションチェック、1分あたりのリクエスト数によるレート制限、複数の構造化出力モード(array、object、timestamp、none)が用意されています。任意のエージェントモードでは、翻訳前にファイル全体を計画段階で処理し、コンテキストの要約を作成します。

このプロジェクトはJavaScriptで書かれており、Node.js 20以降で動作します。

主な機能

  • 01SRT字幕やプレーンテキストを翻訳できるWeb UIとCLI
  • 02SRTの付加情報を取り除き、トークン使用量を抑える行単位のバッチ処理
  • 03ローカルのOllamaモデルを含む、あらゆるOpenAI互換プロバイダーに対応
  • 04翻訳後も各行と入力の対応を保つ構造化出力モード
  • 05CLIでの進捗からの再開とストリーミング出力
  • 06翻訳前にファイル全体を計画する任意のエージェントモード

ユースケース

  • 映画やテレビ番組の字幕ファイルを別の言語に翻訳する
  • 動画コンテンツのSRT字幕を、タイミングを変えずにローカライズする
  • ローカルのOllamaモデルを使って字幕翻訳を完全オフラインで実行する
  • 行の順序を保ちながらプレーンテキストを行単位で翻訳する

クイックスタート

  1. 1

    リポジトリをクローンする

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

    ディレクトリに移動する

    cd chatgpt-subtitle-translator
  3. 3

    必要なパッケージをインストールする

    npm install
  4. 4

    .env.example を .env にコピーし、APIキーを追加する

    cp .env.example .env

使う前に知っておきたいこと

  • README の想定どおり、Node.js 20 以降と bash 形式のシェルが必要です。
  • 翻訳の品質とコストは選択したモデルによって異なります。Ollama などのローカル対応プロバイダーを使用しない場合は、OpenAI API キーが必要です。

収録されている特集

トピック

よくある質問

chatgpt-subtitle-translator とは?
ChatGPTやローカルのOllamaモデルを含むOpenAI互換APIを使い、SRT字幕ファイルを行単位で翻訳するCLI・Webツール。 OpenAIのChat Completions APIや、ローカルのOllamaサーバーなどのOpenAI互換プロバイダーを通じて、大規模言語モデルで字幕ファイルやプレーンテキストを翻訳します。行単位の翻訳を前提としており、送信前にSRTのインデックスとタイムスタンプを取り除き、行をまとめてバッチ処理します。これによりトークン使用量を抑え、出力の行数を入力と一致させて字幕のタイミングを保ちます。
chatgpt-subtitle-translator は無料で使えますか?ライセンスは?
chatgpt-subtitle-translator は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
chatgpt-subtitle-translator は今もメンテナンスされていますか?
活発にメンテナンス中。chatgpt-subtitle-translator の最終コミットは 2026年11月1日 です。
chatgpt-subtitle-translator は何に使えますか?
映画やテレビ番組の字幕ファイルを別の言語に翻訳する 動画コンテンツのSRT字幕を、タイミングを変えずにローカライズする ローカルのOllamaモデルを使って字幕翻訳を完全オフラインで実行する 行の順序を保ちながらプレーンテキストを行単位で翻訳する
chatgpt-subtitle-translator のインストール方法は?
リポジトリをクローンする: git clone https://github.com/Cerlancism/chatgpt-subtitle-translator ディレクトリに移動する: cd chatgpt-subtitle-translator 必要なパッケージをインストールする: npm install .env.example を .env にコピーし、APIキーを追加する: cp .env.example .env
chatgpt-subtitle-translator はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/Cerlancism/chatgpt-subtitle-translator

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト