| V100サーバーの件について弁護士からのアップデートです。みなさんのうち何人かが、粉塵が落ち着いた後に私が実際に何を動かすことになったのかを聞いていたので、ここに載せます。相変わらず弁護士です。相変わらずClaude Code経由で全体を回しています。まだ何をしているのか完全には自信がありませんが、少なくとも今は動きます。前回「動いていない」ことを思えば、私はそれだけでも十分でした。 まず、ハードウェアが計画に追いつきました。最後の2台のV100が導入されたので、私が約束していた「最終形」が本当に実現しました。Threadripper Pro上に、12台のV100-SXM2 32GBです。GPUはボードAが{4,5,8,9}、ボードBが{6,7,10,11}。NVLinkペアが{0,1}で、{2,3}は混在ペアで片方が16GBです。別のNVLinkボードにまたがってモデルを分割するとスループットが急落します(ボード間のホップはNVLinkではなくPCIe/NUMAです)なので、すべてのモデルを1つのボードの中に閉じ込めています。これは高い授業料を払って学びました。 それと、ええ、2台目の筐体も作ってしまいました。EPYC 7302P、512GB RAM、4x RTX 3090 + 2x V100-PCIeです。中年の危機は予定通りです。 より大きな変更点は、ローカルモデルについてvLLMをやめたことです。vLLMが悪いからではありません。私が実際に欲しいのはMoEのGGUFで、Volta上のvLLMはそれに対して行き詰まりだからです(FP8/AWQ/MarlinはいずれもSM75+が必要、GPTQカーネルは7.0で壊れています)。そこで全部をllama.cppに移しました(メインライン。最近のビルドで、Gemmaのチャットパーサのバグがようやく直っており、長いプロンプトがぐちゃぐちゃにされていたのが直りました)。 ここからが、最初の投稿が示唆していたのと真逆のポイントです。V100では、密な(dense)モデルは罠です。有効な速度を得られるのはMoEだけ。ざっくりしたデコード数 — Q8 GGUF、Q4 KVキャッシュ、flash-attnは有効、4枚構成のボードを1つ、実際の法務の下書きプロンプトに対して(文脈が数千トークンで、「hello」のような5トークンではありません):
つまり、122B/10Bの推論モデルはV100を4枚使うと約50 tok/sで動きます。しかも、前回の投稿でvLLM上でdense 32Bが出せていたより速いです。そして長いコンテキストでもそれを維持します(Gemmaは崩れないまま25kトークン超まで押せました。denseモデルは詰まりました)。これで全てが再定義されました。私は大きなdenseウェイトを追いかけるのをやめ、システムをMoE中心に組み直しました。 実際に動かしているもの(あなたが求めていた構成): - 仕事の主力となる下書き — ボードA {4,5,8,9} 上のQwen3.6-35B-A3B 順番のパイプラインなので全員が同時に殴りに行くわけではありませんが、16枚すべてが常駐状態(resident)です。軽い作業はずっと少ない計算資源で済みます。編集とBatesスタンプ用のエクジビット統合は純粋にCPUで、GPUは使いません(PyMuPDF + Tesseract)。単純な要約は主にGemmaとルータに当たるだけです。 正直な部分(このサブが前回も私を正直にさせてくれたので): それでも、最初の投稿で私が欲しかったのと同じもの — 私のように書いて、退屈なフォーム記入や定型パターンを処理できるモデル — が欲しいです。かなり近づきました。今のシステムは私の編集を「修正データ」として取り込みます。これは本物の微調整セットの始まりです。まだQLoRAのトリガは引いていません。同じ疑問が残っているので、そして本当に助言が欲しいので質問します: 私が何を間違っているのか教えてください。 [リンク] [コメント] |
V100 12×32GBクラスタのアップデート/法務文書作成のローカルAI
Reddit r/LocalLLaMA / 2026/5/26
💬 オピニオンDeveloper Stack & InfrastructureSignals & Early TrendsTools & Practical UsageModels & Research
要点
- 法務文書作成向けにローカルAIを動かしている弁護士が、V100サーバの最終構成を報告しました。Threadripper Pro上にV100-SXM2 32GBを12枚搭載し、NVLinkボードをまたぐ転送による性能低下を避けるためにGPUをグルーピングしています。
- vLLMからllama.cppへ移行した主な理由は、Volta環境でvLLM上では狙っているMoEのGGUFモデルがうまく性能を出せないためで、さらにllama.cppではGemmaのチャットパーサ不具合が修正されたことで長文プロンプトの扱いも改善した、という経緯です。
- 性能テストでは、V100上でMoEモデルが実用的なデコード速度を出す一方、密(dense)モデルは大幅に遅くなります。例としてGemma-4-26B-A4B(MoE)は約113 tok/s、Qwen3.5-122B-A10B(MoE)は4枚のV100で約50 tok/sで、密な27〜32Bは約20〜28 tok/s程度、密な約128Bはほぼ無理な水準でした。
- これらの結果により方針転換が起き、巨大なdense重みを追いかけるのをやめてMoEを軸にシステムを組み直しました。長文コンテキストでも破綻しにくく(25kトークン超まで拡張可能)速度を維持しやすい点が重要な判断材料になっています。
