---
sidebar_position: 3
title: DGX SparkでQwen3-Coder-Next（80B MoE）を動かす
description: NVIDIA DGX Sparkの128GB統合メモリでQwen3-Coder-Next（80B MoE）をFP8量子化で動かす方法を解説
hide_table_of_contents: false
displayed_sidebar: null
image: ./banner.png
---

# DGX SparkでQwen3-Coder-Nextを動かす

## はじめに

**DGX Spark**はNVIDIAのデスクトップAIワークステーション。Grace Blackwell（GB10）アーキテクチャで、**128GB統合メモリ**を持つ。この記事では、最新の**Qwen3-Coder-Next**（80B-A3B MoE）をDGX Spark単体で動かす方法を解説する。

### 対象読者

- DGX Sparkを持っている
- 大規模LLMをローカルで動かしたい
- コーディング用のAIモデルを探している

### Qwen3-Coder-Nextとは

Qwen3-Coder-Nextは2026年2月にリリースされたMixture of Experts（MoE）コーディングモデル：

| 項目 | 値 |
|-----|-----|
| 総パラメータ | 80B（800億） |
| アクティブパラメータ | 3B（30億） |
| アーキテクチャ | Mamba + Transformer ハイブリッド |
| コンテキスト長 | 最大1M tokens |

MoE構造により、80Bパラメータでありながら推論時は3Bしかアクティブにならないため、効率的。

## ワンライナーでセットアップ

```bash
curl -sL https://docs.techswan.online/scripts/dgx-spark-qwen3-coder.sh | bash
```

:::tip 初回起動
モデルダウンロード（約45GB）+ ロードで15-20分かかる。`docker logs -f qwen3-coder-next-fp8` で進捗確認。
:::

## 重要：コンテナ選定

:::danger NGCコンテナ必須
DGX Sparkでは必ずNGC公式コンテナを使う。pipインストールや野良ビルドは、ドライバー互換性問題を引き起こす。
:::

```bash
# ❌ やってはいけない
pip install vllm

# ✅ 正解：NGC公式コンテナ
docker pull nvcr.io/nvidia/vllm:25.11-py3
```

## 量子化の選択

### BF16は無理

80BモデルをBF16（16bit）で動かすには約160GBのメモリが必要。DGX Sparkの128GBでは足りない。

```
torch.OutOfMemoryError: CUDA out of memory.
GPU 0 has a total capacity of 119.64 GiB of which 994.07 MiB is free.
```

### FP8を使う

**FP8版**（`Qwen/Qwen3-Coder-Next-FP8`）を使えば、約45GBで収まる。

| 量子化 | メモリ | DGX Spark単体 |
|--------|--------|--------------|
| BF16 | ~160GB | ❌ |
| FP8 | ~45GB | ✅ |
| NVFP4 | ~25GB | ✅ |

## 手動セットアップ

### 起動コマンド

```bash title="Qwen3-Coder-Next-FP8 起動"
docker run -d --name qwen3-coder-next-fp8 \
  --gpus all \
  -p 8000:8000 \
  -v ~/.cache/huggingface:/root/.cache/huggingface \
  --ipc=host \
  nvcr.io/nvidia/vllm:25.11-py3 \
  vllm serve Qwen/Qwen3-Coder-Next-FP8 \
  --max-model-len 32768 \
  --max-num-seqs 32 \
  --gpu-memory-utilization 0.85 \
  --trust-remote-code
```

### パラメータ解説

| パラメータ | 値 | 説明 |
|-----------|-----|------|
| `--gpus all` | - | 全GPU使用 |
| `--ipc=host` | - | 共有メモリ設定（必須） |
| `--max-model-len` | 32768 | 最大コンテキスト長 |
| `--max-num-seqs` | 32 | 同時リクエスト数 |
| `--gpu-memory-utilization` | 0.85 | GPUメモリ使用率 |
| `--trust-remote-code` | - | カスタムコード許可 |

## 起動ログの確認

### 正常な起動シーケンス

```bash
docker logs -f qwen3-coder-next-fp8
```

1. **モデルダウンロード**（初回のみ、約45GB）
2. **Safetensorsロード**（40シャード、約10分）
3. **KVキャッシュ確保**
4. **CUDAグラフキャプチャ**
5. **API起動完了**

```
INFO: Application startup complete.
```

### 進捗確認

```bash
# ダウンロード進捗
du -sh ~/.cache/huggingface/hub/models--Qwen--Qwen3-Coder-Next-FP8

# ロード進捗（ログに表示）
Loading safetensors checkpoint shards: 62% Completed | 25/40
```

## 推論テスト

### ヘルスチェック

```bash
curl http://localhost:8000/health
```

### チャット

```bash
curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Qwen/Qwen3-Coder-Next-FP8",
    "messages": [
      {"role": "user", "content": "Pythonでフィボナッチ数列を生成する関数を書いて"}
    ],
    "max_tokens": 500
  }'
```

## トラブルシューティング

### OOM（メモリ不足）

:::warning 症状
```
CUDA out of memory. Tried to allocate X GiB.
```
:::

**対処:**
1. FP8/NVFP4量子化版を使う
2. `--max-model-len`を減らす（32768 → 16384）
3. `--gpu-memory-utilization`を減らす（0.85 → 0.75）
4. 他のプロセスを停止

### メモリリーク

**症状:** OOM後に空きメモリが減ったまま

**対処:**
```bash
# 全コンテナ停止
docker stop $(docker ps -q)

# メモリ確認
free -h
```

### gpu-memory-utilizationエラー

**症状:**
```
ValueError: Free memory on device (94.25/119.64 GiB) is less than desired GPU memory utilization
```

**対処:**
```bash
# 他のプロセスがGPUを使用中
# 全コンテナを停止してからリトライ
docker stop $(docker ps -q)
```

## スペック情報

### 起動後のメモリ使用量

```
Mem: 119Gi total, 84Gi used, 21Gi free
```

### KVキャッシュ

```
Available KV cache memory: 26.23 GiB
GPU KV cache size: 286,144 tokens
Maximum concurrency for 32,768 tokens per request: 32.91x
```

## まとめ

DGX SparkでQwen3-Coder-Next（80B MoE）を動かすポイント：

1. **NGC公式コンテナ**を使う（`nvcr.io/nvidia/vllm:25.11-py3`）
2. **FP8量子化版**を使う（BF16は128GBに収まらない）
3. **初回起動は時間がかかる**（ダウンロード + ロードで15-20分）
4. **メモリ競合に注意**（他のプロセスがGPUを使っているとOOM）

FP8で45GB程度なので、32Kコンテキストで余裕をもって動作する。コーディング用途に最適！

## 参考リンク

- [Qwen3-Coder-Next HuggingFace](https://huggingface.co/Qwen/Qwen3-Coder-Next-FP8)
- [DGX Spark Playbooks](https://build.nvidia.com/spark/)
- [vLLM Documentation](https://docs.vllm.ai/)

---

*この記事は2026年2月時点の情報です。*
