【要約】GPT-SoVITS を Mac M4 で動かすまでの記録 [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
Apple Silicon環境特有の技術的課題が複数存在する。
- ・FFmpegのバージョン依存:torchcodecが最新版では動作せず、ffmpeg@4が必須。
- ・Pythonバージョンの制約:Python 3.12が動作せず、3.11を指定する必要がある。
- ・MPS(GPU)による品質劣化:MPSでトレーニングを行うと、音声に金属的なノイズが発生する。
- ・ASRの制約:Apple Silicon上でint8精度を使用すると、処理に失敗する。
// Approach
以下の手順で環境構築と最適化を実施した。
1.パッケージ管理:
uvを採用し、Python 3.11環境を構築。2.ライブラリ解決:
brew install ffmpeg@4を実行し、DYLD_LIBRARY_PATHでライブラリパスを明示。3.モデル選定:金属ノイズを回避し、48kHz出力に対応したV4モデルを採用。
4.学習戦略:品質維持のため、MPSではなくM4 CPUを用いてトレーニングを実行。
5.ASR設定:精度確保のため、ASRの精度を
float32に固定。// Result
Mac M4 CPUにおいて、RTF(Real Time Factor)約0.526を達成。1秒の音声に対し約0.5秒で生成可能。V4モデルとCPU学習の組み合わせにより、金属ノイズのない高品質な音声合成を実現した。
Senior Engineer Insight
>
Apple SiliconにおけるAI実装の難所が凝縮されている。特に、ライブラリのバイナリ互換性(FFmpeg)や、MPSにおける演算精度の問題は、実戦的なトラブルシューティング能力を要する。学習においてMPSを避け、CPUを選択する判断は、計算資源の効率よりも出力品質を優先した極めて合理的な選択である。M4のメモリ帯域幅を活かした推論性能は高く、エッジ側でのリアルタイムTTS運用において、強力な選択肢となり得る。ただし、依存関係の複雑さは、プロダクション環境へのデプロイにおける大きな障壁となる。