
Qwen4-Ask QSAがHuaweiのAscendに登場:SGLangのオプトインCANN prefill PRの内部
- typesafeNEWTypeSafe: Jev 1.132026-09-24$0.04 / $0.00 100万トークンあたり · 348 tok/s
- OpenAINEWOpenAI: GPT-6 Luna2026-09-2237知能
- OpenAINEWOpenAI: GPT-6 Sol2026-09-2248知能
- AnthropicNEWAnthropic: Claude Opus 5.52026-09-2258知能
- xAINEWGrok 4.72026-09-2146知能
- OrcaNEWOrca: OrcaCyber Zero 1.02026-09-17$3.00 / $5.00 100万トークンあたり · 105 tok/s
- OrcaOrca: OrcaVerify Text 1.02026-09-16$2.00 / $0.00 100万トークンあたり · 987 tok/s
- DeepSeekDeepSeek: DeepSeek V4.1 Flash2026-09-1040知能
- OpenAIOpenAI: GPT-6 Astra2026-09-0453知能77コーディング
- GoogleGoogle: Gemini 3.8 Flash2026-09-0241知能76コーディング
- AlibabaQwen: Qwen3.8 Max (0902)2026-09-0245知能76コーディング
- AnthropicAnthropic: Claude Fable 5.12026-09-0153知能82コーディング
- TencentTencent: Hy4 preview2026-08-28$0.83 / $2.50 100万トークンあたり · 49 tok/s
- AlibabaQwen: Qwen3.8 Flash2026-08-26$0.15 / $0.47 100万トークンあたり · 106 tok/s
- z-aiZ.ai: GLM 5.3 Flash2026-08-2642知能72コーディング
- DeepSeekDeepSeek: DeepSeek V4 Flash Vision (Exp)2026-08-21$0.22 / $0.66 100万トークンあたり · 219 tok/s
- z-aiZ.ai: GLM 5.32026-08-1845知能75コーディング
- obsidianQwen3.8 27B2026-08-1534知能68コーディング
- DeepSeekDeepSeek: DeepSeek V4 Pro 08132026-08-1236知能69コーディング
- xAISpaceXAI: Grok 4.62026-08-1244知能77コーディング
2026年9月30日、あるコントリビューターが SGLang のプルリクエスト #41855 をオープンしました。タイトルは「[NPU] Add opt-in CANN sparse attention for Qwen4-Exp QSA prefill」で、興味深いのは算術ではなくハードウェアです。Qwen4Exp アーキテクチャには現在、Huawei の Ascend 910C アクセラレータ向けの手書きのスパースアテンション経路があり、デフォルトでオフになるフラグの背後にあり、まだマージされていないドラフトのプルリクエスト内にあります。一方、そのアーキテクチャ名が属するモデル Qwen4-Exp は、いかなる形でも公開されたことがありません。このアーキテクチャをオープンウェイトで持つ唯一のチェックポイントは、依然として Qwen3.8-Flash-Next です。これはベンダーが 2026年8月24日に Hugging Face で公開した 1,250億パラメータの Mixture-of-Experts プレビューであり、そのモデルカードが実際にアーキテクチャとして宣言しているのは qwen4_exp。Qwen 4 自体 — ベンダーが 2026年9月22日の Apsara カンファレンスで名前を挙げた Max、Flash、Plus、27B の各ティア — には、依然としてウェイトも識別子も価格も日付もありません。つまりこれは、ローンチについてではなく、エンジニアリング成果物についての「現時点で分かっていること」をまとめた記事です。さらにもう一つのベンダーのサービングスタックが、未公開のアーキテクチャを早くからサポートする価値があると静かに判断したのです。
プルリクエストが実際に追加するもの
この変更は意図的に小さく、意図的に範囲も狭い。5ファイル、1コミット、コミット b87a241 の main ブランチに対する +355 行で、SGLang の npu ラベルが付いている。作者の w1idaは冒頭でその意図を明言している。Qwen4-Exp QSA のイーガープリフィル向けのオプトイン CANN メインアテンションパスであり、torch_npu.npu_sparse_flash_attention を基に構築され、インデクサー、Top-K 選択、トークン予算、KV キャッシュの内容はいずれも従来どおり一切変更されていない。
そこへ到達するために使われるトリックは一段落に値する。なぜなら、これが新しい attention カーネルではなくレイアウトアダプタである理由を説明しているからだ。すでに回転済みの Q と K に対して、この経路はキャッシュを C = [K, V] として、クエリを Q' = [Q, 0] としてパックする。積 Q' @ C.T は Q @ K.T に等しくなり、パディングされたクエリは何も寄与しないため、softmax(scale * Q' @ C.T) @ C は [P @ K, P @ V] をスタックして返す — したがって V の半分を切り出せる。著者自身の言葉を借りれば、これは「モデルの attention や低ランク KV 圧縮への変更ではなく、attention レイアウトの埋め込み」である。各 KV ヘッドはネイティブ MLA レイアウト内の独立したバッチになり、元の D256 スケールが保持され、補助 RoPE はゼロにされる。
運用上の詳細は、数学と同じくらい重要です:
• 有効化 — SGLANG_NPU_QSA_NATIVE_PREFILL=1、デフォルトではオフ。通常のForwardMode.EXTENDのみがオプトインします。デコード、投機的モード、混合フォワード、グラフキャプチャはすべて既存のパスに留まり、グラフキャプチャはアダプターを完全にバイパスします。
• ハードウェアと dtype — ヘッド次元 256 の BF16、Ascend 910C(Ascend910_93*)、CANN 9.0 および torch-npu 2.10 で検証済み。未対応の dtype や形状は、サイレントに参照パスへフォールバックします。
• ヘッド形状 — 対応するローカル(Q ヘッド、KV ヘッド)のペアは(16,2)、(24,2)、(12,1)、(6,1)、および(3,1)です。CANN はクエリ/KV 比 12 をきっぱり拒否します。そのタイラーは 2 の冪しか受け付けないため、ヘッドは 12→16、6→8、3→4 にパディングされ、追加された出力は破棄されます。これは、ハードウェアがスパースアテンションのヘッド比を考慮して設計されていなかったことを示す、この PR 全体の中で最も明確な兆候であり、アダプターはモデルがそれに合わせて形を変えるのではなく、その不一致を吸収しているのです。
• サイズ境界 — 参照される物理キャッシュ範囲のみがパックされ、最大262,144トークンに制限されます。著者による計算では、2つのKVヘッドでのパックされたBF16 K/Vテンソルに対して最大512 MiBとなります。内部の-1パディングは検出され、CANNが連続した有効スロットを必要とするため、フォールバックにルーティングされます。完全にマスクされた行は、既存のゼロ出力規約を維持します。
• なぜ prefill のみなのか — extent と layout のチェックでは 2 つのスカラーをホストにコピーするため、一時コピーとネイティブワークスペースがメモリを消費します。この同期処理があるために、このパスは eager prefill に限定され、キャプチャ中は無効にされています。
![A capture of the SGLang GitHub pull request #41855, titled '[NPU] Add opt-in CANN sparse attention for Qwen4-Exp QSA prefill', showing an Open state with no merged marker, the line 'w1ida wants to merge 1 commit into main from npu/qsa-cann-prefill', the npu label, and the start of the Motivation section describing the Q' = [Q, 0] and C = [K, V] packing and stating that the approach avoids modifying the indexer, Top-K selection, or KV-cache layout.](https://cms.orcarouter.ai/api/media/file/2-1459.png)
合格した9つのテスト、そしてこのブランチから得られたものではない速度の数値
正確性の証拠は具体的かつ再現可能であり、これはほとんどのカーネルPRが提供するもの以上のものです。著者によれば、Ascend 910C(Ascend910_9362)上でCANN 9.0およびtorch-npu 2.10.0を用いて9件のテストが40.772秒で通過し、チェックポイントは不要だったとのことです。内容は、同じBF16入力から計算されたFP32 CPUリファレンスに対する非ゼロのランダムなBF16 Q/K/V、幅1/63/64/65/2051における非順序の物理スロット、デフォルトおよび明示的なスケール、完全にマスクされた行、ゼロ行、ゼロ選択幅、非連続テンソル、0から3までの圧縮率4の因果テール剰余、共有プレフィックスを持つ2リクエストの物理マッピング、キャッシュ内容の再利用、そして1および257クエリ行におけるFlash-Nextのローカルヘッド形状です。
代表的なケースは長いプリフィルである:7,810 個のクエリトークン対 65,536 トークンのキャッシュ、クエリあたり 2,051 個の選択スロット、すべての出力は有限、8 個のサンプリング行を FP32 リファレンスと比較。観測された相対 L2 誤差は小さいヘッド形状ケースで 0.209%、サンプリングされた長いプリフィル行で 0.231% に達し、テストのゲートは atol=0.025、rtol=0.025 および相対 L2 が 0.008 未満、空の行は正確にゼロでなければならない。その実行のピーク割り当て NPU メモリは 1,042.7 MiB と記載されており、著者はそれを PyTorch アロケータ指標であり、ボード HBM でもフルモデルのメモリでもないと注記している。これはまさに付けるべき正しい注意書きである。
次に、引用されることになるが、されるべきではない数字があります。PRの本文には、既存のローカルアテンションパスが毎秒2,270.79新規トークン、ネイティブパックドメインアテンションが3,890.06であることを示す速度表が含まれており、1.713倍 / +71.3%の向上で、初回トークンまでの平均時間は3.109秒から1.812秒に短縮されています。著者は、これらが2026年9月29日に取得された歴史的なプロトタイプ測定値であり、適応されたWhittle-Next-26B-A3B チェックポイントで、TP1でW8A8重みとBF16アテンションを使用してCANN 9.0下の910C上で実行され、公式のsglang.bench_serving ハーネスを並行度1で、6つのリクエスト、それぞれ1つの出力トークン、そして新規トークンのスループットから除外された36,096のキャッシュされたプレフィックストークンで使用しました。これらは ではない PRのアップストリームブランチのベンチマーク、元のサービングJSONアーティファクトはチェックアウトに存在せず、その後、毎秒約5,000トークンのローカル結果は、この変更に明示的に帰属されない追加のネイティブインデクサーとblock4の作業を使用していました。著者はまた、適応されたチェックポイントのインデクサー重みは不活性であり、その予算は元のものと異なるため、インデクサーの正確性やフルバジェット生成品質に関する証拠にはならないと述べています。
命名に関する補足を1つ。チェックポイントを検索する人なら必ず混乱するからです。ベンチマークモデルは、コントリビューター自身が適応させた成果物です。別に、「Whittle-Next」は、サードパーティのHugging Faceアカウントによって公開された、Qwen3.8由来のMoEファインチューニングの公開シリーズの名前でもあり、9月にアップロードされた26B-A3Bバリアントを含みます。それらは、このPRが対象とするQwen4Expモデルではなく、その1.713×という数値の背後にあるベンチマーク構成として読まれるべきではありません。
さらに2つの注意点は、私ではなく著者によるものです。完全なサービング統合、分散テンソル並列、および完全な Qwen3.8-Flash-Next モデルは、このブランチでは検証されていません。貢献者は、統合と依存関係の問題が議論されている間はドラフトのままにしておくのは意図的だと述べており、さらに PR 本文で、アダプターが SGLang に属するのか、それとも別個のsgl-kernel-npuリポジトリに属するのかとさえ尋ねています。CI もクリーンではありません — PR 本文の状態ブロックには、PR Test (Base)、PR Test (Extra)、および AMD ROCm 10 実行での失敗が示されています。上記で説明した正確性はオペレーターレベルです。PR には、統合スタックでのエンドツーエンドの精度やスループットの結果を主張するものは何もありません。
なぜQSAが厄介な部分なのか、数字で見る
Qwen Sparse Attentionは従来型のアテンション層ではなく、公開されている構成を見れば、アクセラレータベンダーがそれ専用のカスタムパスを書かなければならない理由が分かる。Qwen3.8-Flash-Nextの構成から:48層は、3つのGated DeltaNetブロックに続いて1つのフルアテンションブロックが来る構成を12回繰り返す形で配置され、full_attention_intervalは4、隠れ次元サイズは2,560、アテンションヘッド次元は256、24のクエリヘッドに対して2のKVヘッド、RoPE次元は64。アテンションをスパースにするインデクサは、4つのクエリヘッドが1つのキーヘッドを共有するマルチクエリ構造で、ヘッド次元は128、圧縮率は4、クエリあたり2,048個の選択されたマイクロブロックという予算である。
そのバジェットは、PRが固定しているものです。スパースブロックサイズは1のまま、スパースモードは0のまま、アテンションモードは2のままで、選択トークンインターフェースは変更されていません。ネイティブインデクサーとblock4最適化は明示的に対象外です。したがって、これは既存の選択メカニズムの下にボルト留めされたアダプターであり、QSAの再実装ではありません。それが、著者がKVキャッシュの内容は変わっていないと信頼できる形で主張できる理由でもあります。

モデルカードは設計意図を率直に示している。個々のトークンを選ぶのではなく、QSA はマイクロブロックレベルで動作して長コンテキストのレイテンシを削減する。そして、そのマイクロブロック粒度と、それに伴う複製されたセレクタ状態こそが、どちらのベンダーのシリコン上でも汎用のページドアテンションカーネルにきれいにマッピングされないまさにその理由である。
Qwen4Expサービング構築における本件の位置づけ
単独で見れば、1つのアクセラレータに関するドラフトPRが1件あるのは、物珍しいことにすぎない。しかし9月の残りと照らし合わせれば、それは、提供対象のファミリーが存在する前に公の場で組み立てられつつあるプラットフォームの、4枚目か5枚目の板である:
• オープンウェイトのアーキテクチャ — Qwen3.8-Flash-Next、2026-08-24、6B を有効化した 125B パラメータの MoE、510億パラメータの n-gram 埋め込みテーブル、および 4B の MTP ヘッドを備え、以下を含む:model_type: qwen4_exp と architectures Qwen4ExpForConditionalGeneration。
• vLLM側 — HyperConnection、QSA、PLEカーネルを追加する「qwen4 fuse op」PRである#53909は、2026-08-26以降ずっとオープンで未マージのまま。同じQSAパスにデコードコンテキスト並列処理を追加する#59279は、2026-09-29に開かれたドラフト。そして9月を通じてマージされたPLEオフロードの作業。
• SGLang 側 — DFlash の隠れ状態キャプチャ向けの #38642、Ascend 上の Qwen4-Exp PLE CPU オフロード向けの #39548、ファイルベースの PLE テーブルに対するホストステージングを追加する #40235、そして今度は Ascend アテンションパス向けの #41855。
• NPU 有効化の取り組み — sglang #37570 は、グラフリプレイ、MTP、Triton カーネルを備えた NPU 上の SGLang に Qwen3.8-Flash-Next を追加するもの(2026-09-02 起票、現在もオープン、20 ファイルにわたる +2,590 行)で、sgl-kernel-npu #807 はそれに付随する Triton カーネル向け(2026-09-17 起票、+4,643 行)です。どちらも同じコントリビューターによるものです。#41855 は、そのより大きな有効化の取り組みの中に位置するアテンション層です。
読者が行動に移せる2つの所見がある。第一に、Ascend Qwen4Exp の話全体はごく少数のコントリビューターに依存している — イネーブルメントPRとカーネルリポジトリは著者が同一で、アテンションアダプターはまた別の人物である。この集中度は、Ascend Qwen4Exp のサービングが実験ではなくサポート対象の製品パスになるまでどれだけ隔たりがあるかを示す妥当な推定値だ。第二に、カーネルのボトルネックはベンダー固有ではない。2026-08-28に起票された2件のSGLangイシューは、NVIDIA DGX Spark 上での Qwen4Exp デコードを記録しており、そこでは QSA、PLE、Gated DeltaNet のカーネル時間が支配的で、NVFP4 KV キャッシュは fp8_e4m3 に対してデコードを約29%悪化させることが測定された。このアーキテクチャのアテンション層と埋め込み層は、どこでも難しい部分である。
これが意味しないこと
それは Qwen 4 がリリースされた、あるいは間近だという意味ではない。Alibaba が 2026-09-22 に命名した Qwen 4 ファミリー — Max、Flash、Plus、そして 27B ティア — は、モデルカードも重みも API 識別子もコンテキストウィンドウもライセンスも価格もないロードマップのままである。内部アーキテクチャ名を対象とするフレームワークアダプターは、いつの日かそのファミリーをうまくサービングするための一歩ではあるが、そのファミリーが存在するための一歩ではない。
これは、今日すぐこれを実行できるという意味ではない。そのPRはドラフトであり、CIは失敗しており、マージ日も決まっていない。仮にマージされたとしても、このパスにはAscend 910C、BF16、torch-npu 2.10を備えたCANN 9.0、および5つの特定のローカルヘッド形状のうち1つが必要で、しかもオプトイン方式だ。つまり、デプロイ側がそれを選ばなければならない。著者はサーバーレベルの検証を主張することも控えており、それこそが、実際のバッチ処理下で耐えられるかどうかを本当に教えてくれる部分である。
そしてそれは、Qwen3.8-Flash-Next が Ascend 上で、あるいは出荷済みのエンジンビルドのどこかでサポートされている製品であることを意味するものではありません。2 大オープンランタイムにおける Qwen4Exp のパスは、未マージのプルリクエストです。このアーキテクチャをネイティブに提供する、インストール可能なリリース済みの SGLang や vLLM のバージョンは存在しません — ホスト型エンドポイントの FastAPI 流の手軽さは、自分で実行できるカーネルとは別物であり、その間のギャップこそが、このような PR の目的なのです。
待っている間に実際にかけられるもの
Qwen4Expに注目する理由が、そのカーネル内部ではなくアーキテクチャの長文コンテキスト挙動を試したいというものであるなら、手に取るべきモデルはAlibabaが実際に配信しているティアのものです。Qwen3.8-Flash — Qwen3.8-Flash-Next上に構築されたプロダクションラインで、公式の組み込みツールと1,000,000トークンのコンテキストを備えています — はOrcaRouter上でqwen/qwen3.8-flashとして稼働中です。テキスト、画像、動画の入力に対応し、最大出力は131,072トークン、入力は100万トークンあたり$0.15、出力は100万トークンあたり$0.47、キャッシュ読み取りは$0.0184です。これらはプロバイダーの定価を当社側で0%のマークアップでそのまま提供しているもので、ベンダーの価格や制限の変更は発表されたその日にお客様に反映されます。直近7日間のウィンドウにおいて、ライブカードはp50の初回トークン遅延4,416 ms、約106出力トークン/秒、エラー率2.68%を示しており、これはラボのプレビューではなく、大量処理向けテキストティアのプロファイルです。
正直に言っておくべき但し書きが2つあり、それはこのアーキテクチャに関する同系列の解説記事が挙げているのと同じ2つです。Qwen3.8-Flash-Nextそのもの — FP8プレビューチェックポイントであり、これらのカーネル測定のいずれかをローカルで再現するために必要なもの — は当社のカタログには載っていません。提供中のFlashティアは、そこから構築された本番デプロイメントであり、生のプレビュー成果物ではありません。また、上記のAscendやDCPの作業は、あなたが呼び出せるものの中には存在しません。どれもまだマージされていないからです。提供中のティアが実際に与えてくれるのは、あなたのワークロードがこれらのカーネルが解く問題に合った形になっているかどうかを低コストで確かめる方法です — 非常に長いコンテキストに対する、長く、プレフィックスが重く、エージェント的なプロンプト。もしそうなら、そこで観測されるスループットとキャッシュの挙動は、Qwen 4サービングスタックが保護すべくチューニングされる挙動と同じです。
日程が未定のファミリーを待たないことには、インフラ的な論拠もある。Qwen 4のラインナップで最終的にどのティアが勝つにせよ、スイッチングコストは統合プロジェクトではなくルーティングの問題であり、そして200以上のモデルに対応する1つのAPIこそ、重みが公開されたときに2つ目の契約やコード変更なしでその選択肢を開いておく方法だ。ここでは同じ理由が、特定の形でフェイルオーバーにも当てはまる。実績のないティアに対して構築したいなら、賭けた経路が不調なときに失敗するのではなく、リクエストを安定したものにフォールオーバーさせたいはずだ。

直接答える価値のある3つの質問
SGLang #41855 は、Qwen 4 がリリースされたという意味ですか、それともプレビュー可能ということですか?
いいえ、どちらの点についても違います。このプルリクエストが対象としているのは、Alibabaが2026-08-24にリリースしたQwen3.8-Flash-Nextに実装されているQwen4Expアーキテクチャです。Qwen 4の重みには触れておらず、そもそもQwen 4のどのティアにも、触れるべき重みは存在しません。ここで読み取るべきシグナルは、ファミリーが利用可能かどうかではなく、プレビュー版アーキテクチャのサービング容量に関するものです。
モデルカードにqwen4_expと書かれている場合、それはQwen 4ですか?
いいえ — これがこの話全体における命名の罠です。qwen4_exp は内部アーキテクチャ識別子であり、それが見つかるのはconfig.jsonの中です、Qwen3.8-Flash-Next とその FP8 版の。「Experimental architecture」が鍵となる言葉です。重みは公開されており、アーキテクチャは実在し、このモデルは Qwen 4 ファミリーがその上に構築されると見込まれるもののプレビューです。識別子を検索して、タイトルに Qwen4Exp を含む SGLang や vLLM の PR を見つけても、それはエンジンの作業について分かるだけで、リリースについてではありません。
これはAscend対NVIDIAの話なのか?
そうでもない。同じアテンションパスは、NVIDIA側でも専用アダプターを必要とした——vLLMにおけるQSA向けのデコード・コンテキスト並列化と、Hopper向けのネイティブなスパース・プリフィル・カーネルだ——そしてDGX Sparkの問題は、そこでもQSA、PLE、Gated DeltaNetのカーネル時間がデコードを支配していることを示している。QSAのマイクロブロック・インデクサーとその複製されたセレクター状態は、汎用のページドアテンション・カーネルの想定とはまったく異なる。このパターンに対するAscendの寄与は、より鋭い制約だ。すなわち、2の冪しか受け付けないヘッド比率タイラーであり、これがアダプターの隠さなければならないパディングを強制する。
注目すべきもの
これがマージされるかどうかではない。アダプターはアダプターであることを正直に認めており、正しさのテストはチェックポイントなしで再現可能で、著者は統合の問題を提起していて、決着済みであるかのようには装っていない。注視すべきは、NPU有効化の行とこのアテンションパスが組み合わされた後に何が起こるか——統合されたブランチが、どちらも経験したことのないエンドツーエンド実行を得るかどうか、局所的なヘッド形状テンソルではなく、完全なモデルでの実際のバッチ処理において。1.713×という数字が出回るだろうが、それは異なるビルドで、適応済みチェックポイント上で、不活性なインデクサーを用いて計算されたものだ。完成したスタック上で測定された数字なら、過去の数字よりかなり価値があるだろう。
それまでは、正直な要約はPR自身が守っているものだ。計算は合っており、フラグはデフォルトでオフ、CIは赤く、そしてタイトルにあるモデルは依然として存在しない。
