あなたの 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時代に医療データの品質が重要な理由

効果的な医療データ分析においては、データの品質は主観的なものになります。データから得られる情報の正確...

AIは雇用を奪うのか、それとも雇用を生み出すのか?

人工知能は、職場環境で参照される場合、複雑な感情と視点をもたらします。同僚、友人、または見知らぬ人に...

詳細レポート: ビッグモデルが AI を全面的に加速させます!黄金の10年が始まる

過去70年間に「3つの上昇と2つの下降」を経験した後、基盤となるチップ、コンピューティングパワー、デ...

機械学習モデルを使用して数十億のデータポイントの性別を予測する方法

[[327734]]ユーザーポートレートに基づいた広告は、広告効果を最適化し、精密なマーケティングを...

【コレクション】貢献度が最も高い GitHub コレクションとディープラーニング フレームワーク 16 選

ディープラーニングは、データの経験的学習に基づく機械学習手法であり、近年発展し、人気が高まっています...

この目立たないロボットトラックにユニコーンが登場しました!

人工知能やビッグデータなどの技術の発展に伴い、チャットボットも大きな進歩を遂げています。その応用分野...

海底撈のIPOは1000億元規模:将来、厨房に必要なのはエンジニア2人だけ

[[245580]] 2018年9月26日、海底撈国際ホールディングス株式会社(06862.HK)が...

JD X ロボティクス チャレンジが終了、BUPT チームのインテリジェント ロボットが優勝

3月25日、北京郵電大学のウォータードロップチームが優勝トロフィーを掲げ、JD X部門主催のJD 2...

復旦大学の邱希鵬さんへの10の質問:大手モデルはAndroidの時代に入り、国産モデルがLIamaに取って代わることを望みます

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

データがあなたを監視することに抵抗はありませんか?

AI 技術の発展と影響に関する最近の調査、研究、予測、その他の定量的評価により、消費者はデータのプ...

私はパニックになりました。上司はこう言いました。「AIはフロントエンドを100%置き換えるだろう」

この記事では、フロントエンド開発と人工知能の関係、そして将来 AI がフロントエンド開発の仕事に取っ...

オープンソースのコラボレーションを通じて AI を進化させる方法

[[377773]]人工知能は、業界団体によって大々的に宣伝され、推進されている用語の 1 つになっ...

...

GTA6のトレーラーは1億回以上再生されており、3人のAI巨人も数秒でGTAギャングに変身できる

新しいGTAゲームの予告編を見ましたか?この予告編は3つのギネス世界記録を破り、再生回数は1億回を超...

北京が初の政策実験区を設置:自動運転は今年中に試験運用へ

車に乗り込み、コードをスキャンすると、運転手が操作しなくても黒い「タクシー」が動き出す。横断歩道では...