Compress then Serve: Serving Thousands of LoRA Adapters with Little Overhead

要約

低ランク適応 (LoRA) を使用して大規模言語モデル (LLM) を微調整することは一般的な手法となっており、LoRA の更新のみが異なる同じ LLM のコピーが多数生成されることがよくあります。
このパラダイムは、それぞれが異なる LoRA に関係するクエリに対してリアルタイムの応答を提供するシステムに課題をもたらします。
これまでの研究では、このようなシステムの設計を最適化していましたが、数千の LoRA を GPU メモリに保存するのは現実的ではないため、依然として LoRA の継続的なロードとオフロードが必要でした。
この問題を軽減するために、LoRA を提供する際のモデル圧縮の有効性を調査します。
我々は、LoRA を LoRA 固有のスケーリング行列と組み合わせた共有基底に共同圧縮する方法を提案します。
私たちはアルゴリズムを拡張して、共同圧縮に適した LoRA のクラスターを学習し、大規模な LoRA コレクションに適切に拡張できるようにします。
最大 500 の LoRA を使用した実験では、圧縮された LoRA がパフォーマンスを維持しながら、1,000 を超える LoRA を使用する現実的なサービス シナリオでスループットが大幅に向上し、単一の LoRA をサービスするスループットの 80% を維持できることが実証されました。

要約(オリジナル)

Fine-tuning large language models (LLMs) with low-rank adaptations (LoRAs) has become common practice, often yielding numerous copies of the same LLM differing only in their LoRA updates. This paradigm presents challenges for systems that serve real-time responses to queries that each involve a different LoRA. Prior works optimize the design of such systems but still require continuous loading and offloading of LoRAs, as it is infeasible to store thousands of LoRAs in GPU memory. To mitigate this issue, we investigate the efficacy of model compression when serving LoRAs. We propose a method for joint compression of LoRAs into a shared basis paired with LoRA-specific scaling matrices. We extend our algorithm to learn clusters of LoRAs that are more amenable to joint compression, allowing it to scale gracefully to large LoRA collections. Our experiments with up to 500 LoRAs demonstrate that compressed LoRAs preserve performance while offering major throughput gains in realistic serving scenarios with over a thousand LoRAs, maintaining 80% of the throughput of serving a single LoRA.

arxiv情報

著者 Rickard Brüel-Gabrielsson,Jiacheng Zhu,Onkar Bhardwaj,Leshem Choshen,Kristjan Greenewald,Mikhail Yurochkin,Justin Solomon
発行日 2024-10-25 16:57:10+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.AI, cs.CL, cs.DC, cs.LG パーマリンク