概要
ゲーミングPCの限られたVRAM環境で高品質な翻訳LLMを動かすため、モデル構造の削減、語彙の最適化、量子化、およびランタイムの軽量化を組み合わせ、VRAM消費を約70%削減した実践記録。
詳細内容
オンラインゲーム中のチャット翻訳を目的とした、翻訳特化型LLM「MiLMMT-46」のゲーミングPC向け最適化プロセスを解説した記事です。ゲームとVRAMを共有する制約下で、以下の3段階の最適化を実施しています。
1. **モデルファイルの最適化**: 不要なVisionモジュールの削除に加え、日・英・韓の3言語に絞った語彙削減(26万→13万トークン)を実施。さらにimatrixを用いた重要度ベースの量子化(Q4_K_S)により、精度を99.8%維持しつつサイズを73%削減しました。
2. **プロセスメモリの削減**: 推論時の`ubatch`サイズを128まで下げることでKVキャッシュ等のオーバーヘッドを抑制。VRAM消費を9.02GBから2.7GBまで低減させました。
3. **ランタイムの軽量化**: llama.cppのCUDAビルドからcuBLAS等の重い依存ライブラリを排除し、必要最小限のカーネルのみをカスタムビルドすることで、ランタイムのサイズを843MBから11MBへと劇的に縮小しました。
最終的に、2〜3GBのVRAMで商用レベルの翻訳精度を維持しつつ、ゲームとの並行動作が可能なデプロイ環境を実現しています。