あなたの GPU は Llama 2 のような大規模なモデルを実行できますか?このオープンソースプロジェクトを試してみてください

あなたの GPU は Llama 2 のような大規模なモデルを実行できますか?このオープンソースプロジェクトを試してみてください

コンピューティング能力が重要視される時代に、GPU は大規模モデル (LLM) をスムーズに実行できるでしょうか?

多くの人は、この質問に明確な答えを出すのが難しく、GPU メモリの計算方法を知りません。 GPU がどの LLM を処理できるかを確認するのはモデルのサイズを確認するほど簡単ではないため、モデルは推論中に大量のメモリを消費する可能性があります (KV キャッシュ)。たとえば、シーケンス長が 1000 の llama-2-7b では、1 GB の追加メモリが必要です。それだけでなく、モデルのトレーニング中は、KV キャッシュ、アクティベーション、量子化のすべてが大量のメモリを消費します。

上記のメモリ使用量を事前に知ることはできないかと疑問に思わざるを得ません。最近、LLM のトレーニングや推論中に必要な GPU メモリの量を計算するのに役立つ新しいプロジェクトが GitHub に登場しました。それだけでなく、このプロジェクトの助けを借りて、詳細なメモリ配分、評価に使用する量子化方法、処理する最大コンテキスト長などの問題も知ることができ、ユーザーが自分に適した GPU 構成を選択するのに役立ちます。

プロジェクトアドレス: https://github.com/RahulSChand/gpu_poor

それだけでなく、このプロジェクトはインタラクティブです。以下に示すように、LLM を実行するために必要な GPU メモリを計算できます。空欄を埋めるだけの簡単な作業です。ユーザーは必要なパラメータをいくつか入力し、最後に青いボタンをクリックするだけで答えが得られます。

交流アドレス: https://rahulschand.github.io/gpu_poor/

最終的な出力は次のようになります。

 { "Total": 4000, "KV Cache": 1000, "Model Size": 2000, "Activation Memory": 500, "Grad & Optimizer memory": 0, "cuda + other overhead": 500 }

このプロジェクトが行われた理由について、著者の Rahul Shiv Chand 氏は、次のような理由があると述べています。

  • GPU 上で LLM を実行する場合、モデルを適応させるためにどのような量子化方法を使用する必要がありますか。
  • GPU が処理できるコンテキストの最大長はどれくらいですか?
  • どのような微調整方法があなたに適していますか?フル?LoRA?それともQLoRA?
  • 微調整中に使用できる最大バッチ サイズはどれくらいですか?
  • どのタスクが GPU メモリを消費しているか、また LLM が GPU に適応できるようにそれを調整する方法。

それで、どうやって使うのでしょうか?

最初のステップは、モデル名、ID、モデル サイズを処理することです。 Huggingface のモデル ID を入力できます (例: meta-llama/Llama-2-7b)。現在、このプロジェクトでは、Huggingface で最もダウンロード数が多い上位 3000 個の LLM のモデル構成をハードコードして保存しています。

カスタム モデルを使用する場合、または Hugginface ID が利用できない場合は、json 構成をアップロードするか (プロジェクトの例を参照)、モデル サイズ (例: llama-2-7b の場合は 70 億) を入力する必要があります。

次は量子化です。現在、プロジェクトは bitsandbytes (bnb) int8/int4 と GGML (QK_8、QK_6、QK_5、QK_4、QK_2) をサポートしています。後者は推論にのみ使用されますが、bnb int8/int4 はトレーニングと推論の両方に使用できます。

最後のステップは推論とトレーニングです。推論中は、HuggingFace を使用するか、vLLM または GGML を使用して推論用の vRAM を見つけます。トレーニング中は、vRAM を見つけてモデル全体を微調整するか、LoRA (現在のプロジェクトでは、LoRA 構成用に r=8 がハードコードされています) または QLoRA を使用して微調整します。

ただし、プロジェクトの作成者は、最終結果はユーザー モデル、入力データ、CUDA バージョン、量子化ツールなどによって異なる可能性があると述べています。実験では、著者はこれらすべての要素を考慮し、最終結果が 500 MB 以内になるように努めました。次の表は、Web サイトで提供されている 3b、7b、13b モデルのメモリ使用量と、著者が RTX 4090 および 2060 GPU で取得したメモリ比較をクロスチェックしたものです。すべての値は500MB以内です。

興味のある読者は自分で体験することができます。提示された結果が不正確な場合、プロジェクト作成者は、プロジェクトは適時に最適化され、改善されると述べています。

<<:  視覚的な手がかりに「マーカー」を追加することで、Microsoft と他の企業は GPT-4V をより正確かつ詳細にしました。

>>:  テイラー・スウィフトが本物の中国語を話す動画が話題になっている。ほぼ完璧な唇の動きと時間通りのパフォーマンスが特徴だ。その背後にはAIツールがあることが判明した。

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

人工知能の新時代が近づいています。従来の産業の従事者はどこへ向かうのでしょうか?

世間の好むと好まざるとにかかわらず、人工知能の新しい時代が静かに到来した。しかし、人工知能が本格的に...

スマート製造を活用して持続可能な工場フロアを構築するにはどうすればよいでしょうか?

自動車メーカーは、施設を近代化し、事業運営をより持続可能にするために、スマート製造戦略を採用していま...

...

AIにソフトウェア開発を教える: IBMオープンソースデータセットProject CodeNetには1,400万のコード例が含まれている

[[399492]] Big Blue は、AI ベースのプログラミング ツール向けの充実したトレー...

...

顔認証ロック解除を使用するとき、携帯電話はどのようにしてあなたを「認識」するのでしょうか?顔認識について詳しく知る

2020年10月1日、私たちの祖国は71歳の誕生日を迎えました!我が国は、最初の人工衛星の打ち上げか...

5Gヘルスケアの7つの未来

病院が導入する医療機器やモバイルデバイスが増えるにつれて、医療システムの IT インフラストラクチャ...

...

...

...

...

これはホログラムではありません!多角度から視聴できる真の3D画像

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

HDビデオは本物ではなく、数枚の写真でレンダリングされた3Dシーンでは本物かどうか判断が難しい。

今日の紹介を始める前に、次のシナリオを見てみましょう。 上記のアニメーションは、複数の写真からレンダ...

デジタル時代におけるデータ近代化の重要性

1. データの近代化とは何ですか? デジタル時代においてなぜ重要なのですか?データの最新化とは、デー...

機械学習を使って株価を予測する非常に簡単な方法

[[336572]]この記事では、H2o.ai フレームワークを使用した機械学習を使用して R 言語...