論文の概要: S-LoRA: Serving Thousands of Concurrent LoRA Adapters
- arxiv url: http://arxiv.org/abs/2311.03285v3
- Date: Wed, 5 Jun 2024 06:06:43 GMT
- ステータス: 処理完了
- システム内更新日: 2024-06-07 04:05:59.069717
- Title: S-LoRA: Serving Thousands of Concurrent LoRA Adapters
- Title(参考訳): S-LoRA: 数千の同時LoRAアダプタ
- Authors: Ying Sheng, Shiyi Cao, Dacheng Li, Coleman Hooper, Nicholas Lee, Shuo Yang, Christopher Chou, Banghua Zhu, Lianmin Zheng, Kurt Keutzer, Joseph E. Gonzalez, Ion Stoica,
- Abstract要約: パラメータ効率のよい微調整法であるLoRA(Lo-Rank Adaptation)は、ベースモデルを複数のタスクに適応させるためによく用いられる。
本稿では,多数のLoRAアダプタのスケーラブルな提供を目的としたシステムであるS-LoRAを提案する。
- 参考スコア(独自算出の注目度): 59.490751234925206
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The "pretrain-then-finetune" paradigm is commonly adopted in the deployment of large language models. Low-Rank Adaptation (LoRA), a parameter-efficient fine-tuning method, is often employed to adapt a base model to a multitude of tasks, resulting in a substantial collection of LoRA adapters derived from one base model. We observe that this paradigm presents significant opportunities for batched inference during serving. To capitalize on these opportunities, we present S-LoRA, a system designed for the scalable serving of many LoRA adapters. S-LoRA stores all adapters in the main memory and fetches the adapters used by the currently running queries to the GPU memory. To efficiently use the GPU memory and reduce fragmentation, S-LoRA proposes Unified Paging. Unified Paging uses a unified memory pool to manage dynamic adapter weights with different ranks and KV cache tensors with varying sequence lengths. Additionally, S-LoRA employs a novel tensor parallelism strategy and highly optimized custom CUDA kernels for heterogeneous batching of LoRA computation. Collectively, these features enable S-LoRA to serve thousands of LoRA adapters on a single GPU or across multiple GPUs with a small overhead. Compared to state-of-the-art libraries such as HuggingFace PEFT and vLLM (with naive support of LoRA serving), S-LoRA can improve the throughput by up to 4 times and increase the number of served adapters by several orders of magnitude. As a result, S-LoRA enables scalable serving of many task-specific fine-tuned models and offers the potential for large-scale customized fine-tuning services. The code is available at https://github.com/S-LoRA/S-LoRA
- Abstract(参考訳): Pretrain-then-finetune"パラダイムは、大きな言語モデルのデプロイに一般的に採用されている。
パラメータ効率のよい微調整法であるLoRA(Lo-Rank Adaptation)は、ベースモデルを複数のタスクに適応させるのによく使われ、結果として1つのベースモデルから派生したLoRAアダプタのかなりのコレクションとなる。
我々は,このパラダイムが提供中のバッチ推論に重要な機会をもたらすことを観察した。
これらの機会を生かして,多くのLoRAアダプタのスケーラブルな提供を目的としたシステムであるS-LoRAを提案する。
S-LoRAは、すべてのアダプタをメインメモリに格納し、現在実行中のクエリが使用するアダプタをGPUメモリにフェッチする。
GPUメモリを効率的に使用し、フラグメンテーションを低減するため、S-LoRAはUnified Pagingを提案する。
Unified Pagingは統一メモリプールを使用して、異なるランクの動的アダプタウェイトと異なるシーケンス長のKVキャッシュテンソルを管理する。
さらに、S-LoRAは、新しいテンソル並列化戦略と高度に最適化されたカスタムCUDAカーネルを用いて、LoRA計算の不均一なバッチ処理を行う。
これらの機能により、S-LoRAは単一のGPU上で、あるいは小さなオーバーヘッドで複数のGPU上で数千のLoRAアダプタを提供することができる。
HuggingFace PEFTやvLLMのような最先端のライブラリと比較すると、S-LoRAはスループットを最大4倍改善し、サービスアダプタの数を桁違いに増やすことができる。
その結果、S-LoRAは多くのタスク固有の細調整されたモデルのスケーラブルな提供を可能にし、大規模にカスタマイズされた細調整サービスの可能性を秘めている。
コードはhttps://github.com/S-LoRA/S-LoRAで公開されている。
関連論文リスト
- Retrieval-Augmented Mixture of LoRA Experts for Uploadable Machine Learning [57.36978335727009]
Low-Rank Adaptation (LoRA)は、大規模言語モデル(LLM)を微調整する効率的な方法を提供する。
本稿では,入力プロンプトに基づいて複数のLoRAを適応的に検索・構成するフレームワークを提案する。
論文 参考訳(メタデータ) (2024-06-24T05:24:41Z) - Compress then Serve: Serving Thousands of LoRA Adapters with Little Overhead [41.31302904190149]
低ランクのアダプタ (LoRA) を持つ細調整の大型言語モデルは一般的な慣行となり、LoRA更新でのみ同じLLMのコピーを多数生成する。
このパラダイムは、異なるLoRAを含むクエリに対するリアルタイム応答を提供するシステムの課題を示す。
SVDを用いて個別に圧縮アダプタを検討するとともに,LoRA固有のスケーリング行列と組み合わせた共有ベースにLoRAを共同圧縮する方法を提案する。
論文 参考訳(メタデータ) (2024-06-17T15:21:35Z) - LoRA Land: 310 Fine-tuned LLMs that Rival GPT-4, A Technical Report [3.304521604464247]
ローランク適応(ローランク適応、LoRA)は、最も広く採用されている手法の一つである。
大規模言語モデル(LLM)の効率的な微細チューニング(PEFT)
本研究の目的は,LoRAで微調整されたLLMを実世界の応用に適用し,学習の可能性を評価することである。
論文 参考訳(メタデータ) (2024-04-29T04:01:45Z) - ResLoRA: Identity Residual Mapping in Low-Rank Adaption [96.59370314485074]
低ランク適応(LoRA)の改良フレームワークであるResLoRAを提案する。
提案手法は,LoRAと比較してトレーニング可能なパラメータや推論コストを必要とせずに,より少ないトレーニングステップでより良い結果を得ることができる。
NLG,NLU,テキスト・ツー・イメージタスクの実験により,本手法の有効性が示された。
論文 参考訳(メタデータ) (2024-02-28T04:33:20Z) - LoRA-Flow: Dynamic LoRA Fusion for Large Language Models in Generative
Tasks [72.88244322513039]
LoRAは、ダウンストリームタスクやドメイン毎に大きな言語モデル(LLM)をカスタマイズするために軽量モジュールを使用している。
動的重みを利用して異なるLoRAの影響を調整するLoRA-Flowを提案する。
6つの生成タスクに対する実験により、我々の手法はタスクレベルの融合重みでベースラインを一貫して上回ることを示した。
論文 参考訳(メタデータ) (2024-02-18T04:41:25Z) - Run LoRA Run: Faster and Lighter LoRA Implementations [50.347242693025336]
LoRAは、線形層に低ランクアダプタを導入することにより、ニューラルネットワーク内のトレーニング可能なパラメータの数を減らすテクニックである。
本稿では,LoRAの効率的な実装のためのRunLoRAフレームワークを提案する。
実験は、言語モデリングネットワーク上で最大28%のスピードアップを示す。
論文 参考訳(メタデータ) (2023-12-06T10:54:34Z) - MultiLoRA: Democratizing LoRA for Better Multi-Task Learning [20.750808913757396]
LoRAは、特定のタスクにLLMを適用する際に、顕著なリソース効率と同等のパフォーマンスを達成する。
LoRAは少数のトップ特異ベクトルに支配され、微調整はより重要でないユニタリ変換の集合に分解される。
我々は,LoRAで観測されるトップ特異ベクトルの優位性を低減し,マルチタスク適応性を向上するMultiLoRAを提案する。
論文 参考訳(メタデータ) (2023-11-20T02:59:18Z) - NOLA: Compressing LoRA using Linear Combination of Random Basis [22.76088132446952]
我々は、ロラに存在するランク1の下界を克服するNOLAを導入する。
NOLAは、ランク1のLoRAと比較してパラメータ数がはるかに少ないLoRAモデルと同様に、最高の圧縮LoRAをアーカイブできる。
論文 参考訳(メタデータ) (2023-10-04T03:30:24Z) - LoRA-FA: Memory-efficient Low-rank Adaptation for Large Language Models
Fine-tuning [19.08716369943138]
本稿では,性能劣化やコストのかかる再計算を伴わずに,メモリ効率のよい微調整法であるLoRA-FAを提案する。
この結果から,LORA-FAは全パラメータの微調整やLORAと比較して,各タスクにまたがる精密調整の精度が常に高いことがわかった。
論文 参考訳(メタデータ) (2023-08-07T05:12:27Z) - LoraHub: Efficient Cross-Task Generalization via Dynamic LoRA
Composition [46.770388457085936]
ローランク適応(LoRA)は、しばしば新しいタスクのために細調整された大きな言語モデル(LLM)に使用される。
本稿では,多様なタスクで訓練されたLoRAモジュールの組み立てのためのフレームワークであるLoraHubを紹介する。
新しいタスクからいくつか例を挙げると、LoraHubは複数のLoRAモジュールを流動的に結合することができ、人間の専門知識や前提を必要としない。
論文 参考訳(メタデータ) (2023-07-25T05:39:21Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。