Repolode
schibsted

schibsted/WAAS

ジョブキュー、メールまたはWebhookコールバック、SRT/VTT/テキスト出力に対応した、OpenAI Whisperのセルフホスト型GUIおよびREST API。

スター
2,068
フォーク
114
未解決の Issue
39
最終コミット
8 日前

これは何?

WaaS(Whisper as a Service)は、OpenAI WhisperをWeb GUIとHTTP APIで利用できるようにし、モデルを手動で実行せずに音声・動画ファイルを文字起こしできます。クライアントがtranscribeエンドポイントにファイルを送信すると、ジョブはRedisベースのキューに登録され、別のworkerによって処理されます。ジョブが完了すると、メールまたは署名付きWebhook POSTでユーザーに通知します。

結果はJSON、SRT、WebVTT、プレーンテキスト、タイムコード付きプレーンテキストとしてダウンロードできます。また、ローカルで動作するブラウザベースのエディターが付属しており、個々のセグメントを再生して文字起こしの誤りを修正し、結果を保存できます。APIでは言語検出と英語への翻訳も利用できます。

APIにはPythonとFlask、workerにはRQを使用し、docker-compose(redis、api、worker)でデプロイします。NVIDIA CUDAによる高速化に対応したGPU用のDockerfileも別途用意されています。最小のtinyモデルに必要なVRAMは約1GBです。

主な機能

  • 01Redisベースのキューとworkerで処理する非同期の文字起こしジョブ。
  • 02メールまたは署名付きWebhookコールバックによる完了通知。
  • 03結果をJSON、SRT、WebVTT、プレーンテキスト、タイムコード付きテキストで出力。
  • 04文字起こしのセグメントを確認・修正できる、ブラウザベースのローカルエディター。
  • 05API経由の言語検出と、文字起こしまたは翻訳タスク。
  • 06NVIDIA CUDAのオプションサポートを備えたdocker-compose構成。

ユースケース

  • クラウドサービスを使わず、社内サーバーで録音したインタビューや会議を文字起こしする。
  • 動画コンテンツの字幕ファイル(SRTまたはVTT)をまとめて生成する。
  • Webhookコールバックに対応したHTTP APIを通じて、社内アプリケーションに音声認識機能を追加する。
  • ローカルのブラウザエディターで機械生成された文字起こしを確認・修正する。

クイックスタート

  1. 1

    Python仮想環境を作成する

    python3 -mvenv .venv
  2. 2

    仮想環境を有効化する

    source .venv/bin/activate
  3. 3

    Pythonの依存関係をインストールする

    pip install -r requirements.txt
  4. 4

    READMEの説明に従って.envrcファイルとallowed_webhooks.jsonを作成し、すべてのコンテナを起動する

    docker-compose --env-file .envrc up

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

  • 大きなWhisperモデルを使うにはVRAMを搭載したGPUが必要です。最小のモデルでも約1GB必要です。
  • Python 3.8~3.10とRedisインスタンスが必要です。また、メールコールバック用のSMTP設定も必要です。
  • docker-composeでセットアップするには、複数の環境変数とwebhookファイルを設定する必要があります。

収録されている特集

トピック

よくある質問

WAAS とは?
ジョブキュー、メールまたはWebhookコールバック、SRT/VTT/テキスト出力に対応した、OpenAI Whisperのセルフホスト型GUIおよびREST API。 WaaS(Whisper as a Service)は、OpenAI WhisperをWeb GUIとHTTP APIで利用できるようにし、モデルを手動で実行せずに音声・動画ファイルを文字起こしできます。クライアントがtranscribeエンドポイントにファイルを送信すると、ジョブはRedisベースのキューに登録され、別のworkerによって処理されます。ジョブが完了すると、メールまたは署名付きWebhook POSTでユーザーに通知します。
WAAS は無料で使えますか?ライセンスは?
WAAS は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
WAAS は今もメンテナンスされていますか?
活発にメンテナンス中。WAAS の最終コミットは 2026年10月30日 です。
WAAS は何に使えますか?
クラウドサービスを使わず、社内サーバーで録音したインタビューや会議を文字起こしする。 動画コンテンツの字幕ファイル(SRTまたはVTT)をまとめて生成する。 Webhookコールバックに対応したHTTP APIを通じて、社内アプリケーションに音声認識機能を追加する。 ローカルのブラウザエディターで機械生成された文字起こしを確認・修正する。
WAAS のインストール方法は?
Python仮想環境を作成する: python3 -mvenv .venv 仮想環境を有効化する: source .venv/bin/activate Pythonの依存関係をインストールする: pip install -r requirements.txt READMEの説明に従って.envrcファイルとallowed_webhooks.jsonを作成し、すべてのコンテナを起動する: docker-compose --env-file .envrc up
WAAS はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/schibsted/WAAS

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

関連プロジェクト