AI Navigate

FishSpeech S2 Pro ストリーミングコード(380ms TTFA、RTX 5090でテスト)

Reddit r/LocalLLaMA / 2026/3/15

📰 ニュースDeveloper Stack & InfrastructureTools & Practical Usage

要点

  • FishSpeech S2 Pro のストリーミングコードは、著者のテスト設定によると torch.compile を使用した場合、RTX 5090 上で約 380ms の TTFA を達成します。
  • テストでは torch.compile を使わない場合は約 800ms、同じハードウェアとドライババージョンで torch.compile を使用した場合は 380ms になると報告されています。
  • 著者は、メモリ使用量の削減、TTFA の改良、より長いプロンプトのサポートを含む今後の最適化を概説し、プロファイリング、より小さな最初のチャンク、CUDA グラフの活用を検討しています。
  • データフローと作業の方向性を示す PR(1193)と概略図へのリンクがあり、他者にもこのアプローチを採用することを促しています。
FishSpeech S2 Pro streaming code (380ms TTFA, tested on RTX 5090)

ええと…ええと…、私はあなたの普通のウェブ開発者で、MLエンジニアではないので、呪われたコードについてお詫びします 🤣

https://github.com/fishaudio/fish-speech/pull/1193/changes

ストリーミングは、Arch Linux、RTX 5090、NVIDIA ドライバ 595.45.04、9950x3D 環境で、最初のオーディオチャンクが到達するまで約400ms の低 TTFA で、エンドツーエンドで動作するはずです。ただし、メモリ、TTFA、長いプロンプトにはまだ作業が必要です。

Here's some ideas:

  1. 正しく torch.compile を適用する方法を見つける。現状では、スモークのエンドツーエンドテストのウォームアップ後にだけリコンパイルされ、リコンパイルには約6分かかります。
  2. トークンをスケジュールに従ってボコーダーへストリームする(lengyue に基づくスケジュールで)、1つの大きな塊ではなく。
  3. メモリ使用量をさらに削減し、TTFA を改善する(プロファイリング、最初のチャンクを小さく、CUDA グラフの活用)。
  4. OOM なしで長いプロンプト(約30–50語)をサポートする。おそらく #1 がそれを解決するはずです。

私は メンテナー から少しの助けを得ました。私の解決策はそれほど印象的ではないかもしれませんが、他の人がこの方向に取り組むのを可能にするはずです。

This は、実際に何が起こっているかのおおよその図です:

https://preview.redd.it/hgwrc6azb5pg1.png?width=845&format=png&auto=webp&s=29995a0a8ee8a25f2ba2410e1544ac15d9d85ef3

これは改善の余地があります。私が理解している範囲では、DAC は賢いスケジューリングでトークンを独自に処理でき、LLM が PCM チャンクを実際に作成し終えるまで待つことはありません 🤷

とにかく、以下が私のテストです。

Without torch.compile の場合、TTFA は約 800ms です。

https://preview.redd.it/1t1en4c0f5pg1.png?width=1622&format=png&auto=webp&s=8199dfc7ff4393ca06144df9a30a801101c1a2fa

With torch.compile (380ms) + some logs / instrumentation

https://preview.redd.it/b7rkejvan5pg1.png?width=2547&format=png&auto=webp&s=3dedb4f7745102b5b1aa77c06da897cfab6d0a73

I