HUOXIU

DeepSeekと企業実践の深層理解(パート3):671B 超低コスト導入手法とパフォーマンス評価

序文

連載記事「DeepSeekとエンタープライズプラクティス(パート1):抽出、展開、評価」および「DeepSeekとエンタープライズプラクティス(パート2):32BマルチGPU推論の原理、ハードウェア冷却、パフォーマンステスト」では、さまざまなDeepSeek R1モデルの関係性とコアメトリクスを紹介し、ZStack AIOS上で複数の抽出モデルを展開し、評価しました。評価によると、抽出バージョンは、元のモデルと比較して、数学的およびコーディング能力の向上が見られることが多いことが分かりました。しかし、より複雑なタスク(数百行のコード記述など)では、パフォーマンスが十分でない場合があります。このような場合は、オンラインで「フルパワーバージョン」と呼ばれることが多いDeepSeek-R1 671Bモデルの使用を検討する必要があります。

しかし、671Bはパラメータが多すぎます。デバイスがFP8をサポートしていない場合、モデルの重みだけで1.3TBとなり、非常に高価になります。そこでこの記事では、1兆近くのパラメータを持つ大規模モデルであるDeepSeek-R1 671Bを最低コストで導入する方法、量子化バージョンのパフォーマンス、量子化バージョンと非量子化バージョンの比較、様々なハードウェア構成における全体的な費用対効果、そして適切なシナリオに焦点を当てます。

目次

I. DeepSeek-R1 671B量子化バージョンの分析

II. 超圧縮ソリューション: DeepSeek-R1 671B 1.58ビット導入事例

III. 複数マシン拡張ソリューション: 671B-1.58b の 3090 クラスタ展開による評価

IV. 高性能ソリューション:H20×8 + AWQ定量展開

V. 実践的なケーススタディ: Flappy Bird コード生成

VI. 費用便益分析と結論

VII. 展望:完全精度非量子化モデルの展開戦略

I.ディープシーク-R1 671B

定量分析

現在、DeepSeek R1 671Bでは多くの量子化方式が利用可能です。ここではIQ_1_SやAWQといった量子化方式の具体的な意味については詳しく説明しません。以下に、いくつかの代表的な方式とそのメモリ要件を直接比較します。

(注: メモリ要件には、最小のキー値キャッシュとシステムオーバーヘッドが含まれており、これが最小要件です。実際の要件は、コンテキストウィンドウのサイズ、キー値キャッシュの精度などに基づいて正確に見積もる必要があります。推論エンジンと並列方法の違いにより、GGUF 形式と safetensor 形式のメモリ使用量を直接比較することはできません。)

II. 極限圧縮方式:

DeepSeek-R1 671B 1.58ビットの導入実践

上記の表を見ると、3090 8カードサーバーが671B-1.58bの最小要件を完全に満たすことがわかります。さらに、すべての重みをGPUに割り当てることができるため、比較的高い推論速度が保証されます。ただし、GGUF形式であるため、llama.cpp推論フレームワークが必要であることに注意してください。ZStack AIOSは複数の推論フレームワークをサポートしており、ユーザーは特定のニーズに応じて選択できます。

環境設定

展開プロセス

  1. 環境の準備: ZStack AIOS をインストールし、システムが動作要件を満たしていることを確認します。

  2. ワンクリック展開

    1. ZStack AIOS を使用してモデルを選択し、適切な推論テンプレート (llama.cpp) およびイメージに関連付けます。

    2. モデルを実行するための GPU とコンピューティング仕様を指定したら、モデルをデプロイできます。

  3. テスト実行: エクスペリエンス ダイアログ ボックスで会話エクスペリエンスを試したり、API 経由で他のアプリケーションに接続したりできます。

パフォーマンス評価

671B-1.58b の実行に成功しました!しかし、残念ながらコンテキストは 4K しかありませんでした。これは、llama.cpp がモデルを GPU に階層的にロードする方法を採用しているため、モデルを確実に実行するために各レイヤーでフルコンテキストサイズが必要なためです。さらに、llama.cpp の推論原理により、同時実行性を高めてもサービス全体のスループットは大幅に向上せず、むしろ単一セッションのコンテキストサイズが減少するため、同時実行性をさらに高めることはしませんでした。

しかし、4KコンテキストはDeepSeek-R1にとって全く不十分であり、応答中に切り捨てられやすいため、MMLUやC-EVALといった一般的な評価を完了することができません。コンテキストサイズを増やすには、DeepSeek-R1-671B-1.58bを複数のマシンに展開してテストする必要があります。

III.複数マシン拡張ソリューション:

671B-1.58bの3090クラスタ展開の評価

3090 単体ではコンテキストが小さすぎるため、クラスタリングによって 671B-1.58b モデルサービスのコンテキストを拡張しようと試みました。モデルの重みを 16 枚のカードに分散させることで、理論上は KV キャッシュの実行に約 14GB のスペースを確保でき、これは約 14KB のコンテキスト空間に相当します(llama.cpp におけるマルチマシン並列推論は本番環境での使用には推奨されておらず、テスト目的でのみ使用されていることに注意してください)。

環境設定

パフォーマンス

ボトルネック分析

  • ご覧のとおり、コンテキストが長くなるとモデルのスループットはわずかに増加します。

  • llama.cpp のアーキテクチャと 3090 グラフィック カードの帯域幅の制限により、同時実行性を高めても GPU の使用率を効果的に向上させることはできません。

モデル能力評価

ZStack AIOS のサービス評価機能を使用して、DeepSeek-R1-671B-1.58b に対して MMLU、C-Eval、および HumanEval 評価を実施し、異なる次元からの量子化後の 671B のパフォーマンスを比較し、さらにそれを蒸留バージョンと比較しました。

実行時間が非常に長いため、評価の一部からサンプルを抽出し、その結果を以下にまとめました。

*データは ZStack 実験環境でのテストからのものであり、公式の学術論文からのものではないことに注意してください。

**コンテキストが 14K しかないため、AIME24 テストを正しく完了できません。**

上記のデータに基づくと、量子化率1.58では能力に多少の影響を受けますが、その影響は想像ほど大きくありません。さらに、英語力、中国語力、コーディング能力の面では、GPT-4oやClaude-3.5に対して依然として大きな優位性を維持しています

「モデルが本格的なバージョンかどうかを見分ける」ためのヒントがオンラインでいくつか見つかりました。いくつか選んでテストしたところ、以下の質問にはある程度の認識能力があることがわかりました。

IV.高性能ソリューション:

H20×8 + AWQ定量展開

llama.cppのアーキテクチャ設計と1.58量子化データ構造の制約により、パフォーマンスのさらなる向上は困難です。しかしながら、企業にとって、 3090を1台または2台導入することは低コストではあるものの、コンテキストウィンドウ機能と同時実行性は著しく低下します

そこで、別の量子化手法であるAWQを検討します。理論上、AWQ量子化を実行するには、64GB以上のビデオメモリを搭載したグラフィックカード8枚のみが必要です。しかし、制約のため、AWQ量子化モデルのパフォーマンステストにはH2O 96GBを使用しました。

環境設定

パフォーマンス

下の画像は、ZStack AIOS での DeepSeek-R1-AWQ ダイアログのパフォーマンスを示しています。

パフォーマンス分析

1. AWQ 量子化後は、 MLA アクセラレーションや FP8 アクセラレーションなどの方法は使用できなくなり、高同時実行シナリオではパフォーマンスが十分に活用されない可能性があります。

2. 同時ユーザー数が増加すると、スループットは 400 トークン/秒近くまで増加し続ける可能性がありますが、この時点ではセッションあたりのスループットがすでに非常に低いため、オフライン シナリオにのみ適しています

3. 厳格なテスト方法のため、テスト中のKVキャッシュのヒット率は低かった。同様のプロンプトを使用してKVキャッシュのヒット率を向上させると、最大910TPS程度まで向上できる可能性がある

能力評価の比較:

バージョン 1.58 と同様に、オンラインで利用可能な人気の「フルパワー テスト」も実行しました。

V.実践的なケーススタディ: Flappy Bird コード生成

以前、DeepSeek-R1-671Bの量子化がコード生成能力にほとんど影響を与えないことについて説明しました。しかし、HumaneEvalスコアが90というのは、読者にとって直感的に分かりにくいかもしれません。そこで、Unslothのテスト手法を参考にしました。この手法では、モデルにFlappy Birdゲームを3回作成させる必要があります(pass@3) 。10の基準(ランダムな色、ランダムな形状の使用、正常に実行されるかどうかなど)に基づいてスコア付けし、3つのテストのスコアの平均を算出しました。テストで使用した温度は0.6でした。

使用されるプロンプトは次のとおりです。

次の結果は、最高のパフォーマンスを選択して実行した 3 回の実行の平均スコアを示しています。

ご覧のとおり、長いコード生成では AWQ の量子化はわずかに低下しますが、全体的なパフォーマンスは DeepSeek-R1 とそれほど変わりません

_

ランニング効果

スコア

DeepSeek-R1-671B-1.58b 量子化


78.5%

DeepSeek-R1-671B-AWQ定量分析


91.0%

DeepSeek-R1-671B 非量子化

92.5%

ご覧のとおり、長いコード生成では AWQ の量子化はわずかに低下しますが、全体的なパフォーマンスは DeepSeek-R1 とそれほど変わりません

VI.費用便益分析と結論

GPU モデルの価格はハードウェア構成と市場供給に大きく影響されることを考慮して、この分析は一般的なオンライン コンピューティング プラットフォームに基づいています。

AutoDLインスタンスに基づく価格見積もり:

月額レンタル料金と購入コストは必ずしも比例するわけではないことにご注意ください。例えば、 H2O 8カードサーバーの月額レンタル料金は3090 8カードサーバーの6倍ですが、購入コストは必ずしも6倍ではありません

結論は

  • 3090 シングルプレイヤー テストは、シンプルな体験に適しており、数学的タスクやコーディング タスク (どちらも長いコンテキストが必要) は含まれません。

  • 3090マルチマシン構成は、個人または非常に小規模なシナリオでのコード生成に適しています。14KBのコンテキストは一般的にコード生成には十分ですが、複雑な数学的推論シナリオには適していません。

  • 3090はユニットあたりのコストが低いものの、バッチ処理シナリオではそのメリットは明らかではありません。したがって、より大きなコンテキストウィンドウと高い並列処理能力を求める場合は、上位構成の方が全体的なコストパフォーマンスが向上します

  • モデルパラメータの数が多いために計算負荷が膨大になり、 1人のユーザーが30~50 TPSを超える推論速度を達成するのは困難です

ただし、DeepSeek モデルは比較的最近リリースされたため、推論エンジンにはまだ最適化の余地があり、今後変更される可能性があります。

VII. 展望:大規模パラメータモデルの展開戦略

本稿では、DeepSeek-R1-671Bモデルが1.58量子化によって経験コストを削減し、AWQ量子化によって超長コンテキストのコストを削減する仕組みについて、より深く理解しました。対応するモデルの性能と機能をテストした結果、複雑な数学的推論能力は量子化時に最も失われやすいことがわかりました。また、展開時にはコンテキストのサイズに細心の注意を払う必要があり、これがモデルのパフォーマンスに大きな影響を与えます。

今後の記事では、以下の点について引き続き検討していきます。

  • 完全精度の展開戦略:大規模モデルとハードウェア リソースの機能を最大限に活用するために、高性能コンピューティング環境にモデルを正しく展開する方法。


規模や精度の異なるモデルを比較することで、エンタープライズ アプリケーション向けのより包括的で詳細な展開ソリューションを提供し、より多くの業界が大規模な言語モデル テクノロジを迅速に実装して商業的価値を実現できるようにしたいと考えています。

注:本記事の一部のデータは例示であり、実際の状況とは異なる場合があります。具体的な導入プロセスにおいては、詳細なテストと検証を実施することをお勧めします。