Huawei による KV キャッシュ量子化のためのネイティブ vLLM バックエンド KVarN

2026/06/05 0:18

Huawei による KV キャッシュ量子化のためのネイティブ vLLM バックエンド KVarN

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

KVarN は、vLLM の革命的なキャリブレーション不要型アップデートであり、基盤となるモデルアーキテクチャを変更せず、長文脈の人工知能タスクのパフォーマンスを大幅に向上させることを目的としています。内部メモリキャッシュを 4 つの段階に分けられたプロセス(回転と分散正規化を含む)によって量子化することで、KVarN は KV キャッシュ容量を 3~5 倍増加させ、FP16 と同等あるいはそれ以上の精度で困難な推論ベンチマーク(例:AIME25)において最大約 1.3 倍の処理能力を提供します。重要なのは、高リスクな意思決定に必要な完全な数値精度を保ちながら、単一の構成フラグを通じてアクセシブルなプラグアンドプレイ型のソリューションとして動作することです。Apache 2.0 ライセンスの下で公開されており、vLLM バージョン 0.22.0 を基盤とする KVarN のデフォルトプリセットは、固定サイズのトークンタイル(128)内で 4 ビットのキーおよび 2 ビットの値を使用し、厳格な生産環境での精度基準を満たします。論文「KVarN: Variance-Normalized KV-Cache Quantization Mitigates Error Accumulation in Reasoning Tasks」の公式実装であり、企業はこれにより高負荷なバーストシナリオを即座に処理できます。マルチ GPU セットアップでは自動的に最大限の恩恵が得られますが、単一 GPU ユーザーの場合には完全な容量を実現するために環境変数の微調整が必要な場合があります。結局のところ、KVarN は再キャリブレーションなしで大規模な文脈長を管理するためのスケーラブルシステムにおける新たな基準を設定します。

本文

KVarN:分散正規化 KV キャッシュ

代理モデルや長いコンテキスト長のタスク向けに設計された最適化技術です。

メインのメリット

  • 容量の向上:KV キャッシュ容量を 3〜5 倍に増加させます。
  • 処理性能(throughput)の向上:FP16 の水準を維持しつつ、最大で約 1.3 倍の処理速度を実現します。
  • 用途への適合:はるかに長いコンテキスト長を扱い、同時に多数のリクエストを処理できるようになります。

特徴

  • 校正不要のプラグ&プレイ機能

    • vLLM のネイティブな注意力(attention)バックエンドとして動作します。
    • 単一のフラグを追加するだけで利用可能で、モデルの変更や特別的な校正手順は一切不要です。
  • 高性能

    • 同等の容量を維持しつつ精度も向上させるため、TurboQuant 相当の実装でも約 2.4 倍の高い処理性能を発揮します。
  • 優れたバランス性能

    • 他の手法では到達できない「右上隅」に位置します。
    • FP16 と同等の精度、FP16 以上(またはそれ以上)の処理速度、そして何倍にもなるコンテキスト長を実現しています。

KVarN とは何か

  • 発音
    /kvɑːɳ/
  • 語源(スウェーデン語由来)
    • 名詞で、「穀物、種子、スパイス、コーヒー豆」などを変えて小さく粉砕するための研磨装置という意味です。
    • 「KV キャッシュ」も同じく変えて小さく処理(量子化)するという意味の隠喩です。

なぜ KVarN は必要なのか

通常、KV キャッシュの量子化には代償が伴います。既存の手法は容量を増やしますが、代わりに処理速度を犠牲にする傾向があります(TurboQuant では容量が 2.3〜3.7 倍になる代わりに、処理速度が 40〜52%低下)。また、激しい低ビット量子化は精度低下をもたらします。

  • KVarN は、このスピードと品質の両方を維持するように構築されています。
  • Qwen3-32B(AIME25 テスト、16K コンテキストバースト、TP=2)での実装では:
    • FP16 と同等の精度を達成しつつ処理速度も上回ります。
    • KV キャッシュ容量は約 4 倍に向上しました。

クイックスタート

KVarN は vLLM のフォークとして配布されています。vLLMと同様にインストールし、設定で KVarN を有効にします。

インストール

以下の手順でリポジトリをセットアップしてください。

# 1. リポジトリをクローンする
git clone https://github.com/huawei-csl/KVarN.git
cd KVarN

# 2. インストールする
# ※上流の先行コンパイル済み wheel を使用し、KVarN の kernels は Triton 製(実行時 JIT コンパイル)となります。
VLLM_USE_PRECOMPILED=1 pip install -e .

使用方法

Python による推論:

from vllm import LLM, SamplingParams

llm = LLM(
    model="Qwen/Qwen3-32B",
    dtype="float16",                      # KVarN は float16 で動作
    kv_cache_dtype="kvarn_k4v2_g128",     # KVarN を有効化
    block_size=128,                       # KVarN のタイルサイズ
)

print(llm.generate("Explain KV-cache quantization in one sentence.",
                    SamplingParams(max_tokens=64))[0].outputs[0].text)

モデルの提供(serve):

vllm serve Qwen/Qwen3-32B \
  --dtype float16 \
  --kv-cache-dtype kvarn_k4v2_g128 \
  --block-size 128

注記:KVarN は

float16
の計算精度で動作します。現在のタイル/ページサイズは固定され、128(1 つの vLLM ブロック=1 つの KVarN タイル)です。他のページサイズについては近日公開予定です。

最適化ヒント(容量に関する事項)

KVarN は、小さな固定化のデコードワークスペースを平準化できる余白があるときに、最大限の KV キャッシュ容量を実現します。

  • マルチ GPU またはメモリ利用率高い環境

    --gpu-memory-utilization
    を寛大な値に設定した場合は自動的に適用されます。

  • 単一 GPU かつメモリ制約が厳しい環境:vLLM の CUDA グラフメモリプロファイラが過剰予約を行い、KV プールを縮小することがあります。その際は以下のいずれかの方法で完全な容量を取り戻すことができます。

    • VLLM_MEMORY_PROFILER_ESTIMATE_CUDAGRAPHS=0
      を設定する
    • または
      --gpu-memory-utilization
      の値を引き上げる

KVarN の仕組み

KVarN は、固定サイズのトークンタイルごとに KV キャッシュを量子化します。各タイルは以下の 4 つの段階を経て処理されます:

  1. キャッシュ

    • 注意力から直接得られた生の
      fp16
      KV タイル(チャネル × トークン)。
  2. 回転済みキャッシュ

    • チャネル次元に沿うアダマール回転を用いて、チャネルごとの外れ値を広範囲に分散させます。
    • これによりタイルを量子化しやすくし、直交性により注意力スコアが保持されます。
  3. 正規化済みキャッシュ

    • 反復的な分散正規化(シンクホーン法のような手法)を用います。
    • 対数空間で列方向および行方向の標準偏差正規化を行交互に実施し、タイル全体の変散を均等化します。
    • これにより量子化誤差を削減します。
  4. 量子化済みキャッシュ

    • 低位ビット幅における非対称な「近傍丸め」を行います。
    • 読み出し時にスケーリング係数(チャネルごとのキー、トークンごとのバリュー)を組み込みます。

プリセットの構成

  • 配布されているプリセットでは、キーに比べてバリューよりも多くビットを割り当てています(例:
    kvarn_k4v2_g128
    :4 ビットのキー、2 ビットのバリュー)。
  • この構成が選ばれた理由は:
    • 最も厳しい精度基準を満たすこと。
    • 量産環境で要求される FP16 水準の精度を達成すること。
    • FP16 を上回る処理速度を提供できるためです。

引用

KVarN は当社の論文における公式な vLLM 実装です。

📄 論文タイトルKVarN: Variance-Normalized KV-Cache Quantization Mitigates Error Accumulation in Reasoning Tasks

KVarN をご使用の場合は、以下の BibTeX 引用を記載してください:

@misc{muller2026kvarn,
      title={KVarN: Variance-Normalized KV-Cache Quantization Mitigates Error Accumulation in Reasoning Tasks}, 
      author={Lorenz K. Muller and Philippe Bich and Chiara Boretti and Hyun-Min Chang and Jiawei Zhuang and Lukas Cavigelli},
      year={2026},
      eprint={2606.03458},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={http://arxiv.org/abs/2606.03458}
}

ライセンスと出典先

  • KVarN は vLLM(v0.22.0)を基盤として構築されています。
  • Apache 2.0 ライセンスの下で公開されています。
  • 元の vLLM の README は
    README_vLLM.md
    として保存されています。

同じ日のほかのニュース

一覧に戻る →

2026/06/05 5:11

Anthropic の AI 駆動型脆弱性情報発見のためのオープンソースフレームワーク

## Japanese Translation: サマリーは全体的には良好ですが、キーポイント(コマンド、特定のスキル、パイプラインの段階)に見られる具体的な実行可能な詳細が不足しています。構造とコマンドを取り入れたやや詳細なバージョンであれば、推論を加えずに完全性を向上させることができます。 ## サマリー(改善版) Anthropic は、「Claude Security」というソフトウェアの脆弱性発見および修正のためのマネージドサービスを紹介しており、オープンソースのリファレンスハルネス `github.com/anthropics/defending-code-reference-harness` が提供されています。このリポジトリは、セキュリティチームとのパートナーシップから得られた知見を活用し、自律的な C/C++ 脆弱性発見および修正のためのガイド役を担っていますが、外部からのコントリビューションを受け入れるメンテナンスされた製品ではありません。アクセスには Bedrock や Vertex、Azure などの特定の API が要求されます。 コア技術は、脅威モデリング、静的スキャン、実行検証、パッチ適用を含む厳格な多段階パイプラインを使用しています。主要なスキルには `/threat-model`、`/vuln-scan`、`/triage`、`/patch`、および `/customize` があります。特に重要なのは、自律エージェントがシステムへの損傷を防ぐために **gVisor** サンドボックス内で対象コードを実行すること(Claude API へのエGRESSは制限されている)であり、パイプラインを `bin/vp-sandboxed` を通じて呼び出す前にユーザーが `./scripts/setup_sandbox.sh` を実行する必要があります。`/quickstart` スキルはサンドボックスなしで **Claude Code** で安全に確認できるのに対し、自律ループにはそれを必要とします。 ユーザーは段階的なアプローチに従うよう推奨されます:ステップ 1(Day 1)では、対象コードに対して静的スキャンと脅威モデリングを行い、`/patch` を通じてパッチを生成し、カスタマイズをスモークランで検証してからステップ 2(Day 2)へ進む。ステップ 2 では C/C++ ライブラリ向けの完全な自律ループを展開します。生产用途では、組織は複数の並列パイプラインウェーブ(ステップ 4)を実行し、結果に対して自動タリアジを行うべきです(`/triage` で投票を使用)。本システムは SDLC に連続的検証を統合しており、毎日スキャンや CI パイプラインを通じて運用され、ゼロから構築される完璧なプラットフォームを要求せずに多様な依存関係の露出に対処するのを支援します。サンドボックス化、カスタマイズ、およびパッチに関するドキュメントは `docs/security.md`、`docs/agent-sandbox.md` および関連ガイドで利用可能です。

2026/06/05 6:42

URL の IPv6 ゾーンは間違いです

## Japanese Translation: - 現在稼働中の Anubis ウェブサイトはバージョン v1.25.1-0.20260604200537-44d5fa3ce047 を使用しています。マスコットのデザインは CELPHASE によって作成されました。サイトには Techaro に帰属する著作権表示が表示され、コンテンツは「❤️(愛)と🇨🇦(カナダ)で作成」であるとしてクレジットされています。

2026/06/04 22:00

Cloudflare に参加する VoidZero が決定

## Japanese Translation: VoidZero(Vite、Vitest、Rolldown、Oxc、および Vite+ の開発者)が、その全チームを Cloudflare に統合し、エコシステムを完全にオープンソース化し、MIT ライセンスに基づき、ベンダー非依存な状態を維持することを約束しています。100 万ドルの資金を Vite エコシステムファンドに供与することで、コミュニティ主導の開発を優先し、ツールをプロプライエタリなスタックに合わせるのではなく、強化されたエンジニアリングリソースを直接ツール維持に向けるとして、この戦略的移行を進めています。Evan とコアチームは引き続き開発をリードし続けます。Vite(週 1.29 億回のダウンロード)や新しい Cloudflare プラグイン(週 1,400 万回のダウンロード)の高い採用率は、特に AI 開発者がこの統一されたワークフローによって支えられる高速フィードバックループを必要としていることで、強固な市場の信頼を示しています。現在、Vite は React、Next.js(vinext 経由)、Vue、SvelteKit、Nuxt、Astro、Solid、Qwik、Angular など主要なフレームワークの基盤となるビルドツールとして機能しています。新たに導入された統一 CLI(`cf`)はネイティブデプロイとバインディングを統合しており、標準的な Vite 操作と完全に互換性を保ちつつ、「cf dev」コマンドにより「vite dev」の超集合体として動作します。将来の計画には、Void プラットフォームを完全にオープンソース化して公衆との協力を促進することや、Cloudflare の Environment API を通じて非 Node ランタイムをサポートするツールへの進化が含まれています。結局のところ、開発者は強力なリソースと統一された環境にアクセスでき、業界はベンダーロックインなしで長期的なポータビリティを確保する強化された標準から恩恵を受け、Cloudflare のツールは Vite を Cloudflare 用に特別に適応させるのではなく、Vite スタンドダードの方へ移行しています。

Huawei による KV キャッシュ量子化のためのネイティブ vLLM バックエンド KVarN | そっか~ニュース