--- sidebar_position: 4 title: DGX SparkでClaude Code + Qwen3-Coder-Nextをローカル実行する description: Claude Codeを完全ローカル化!Qwen3-Coder-Next(80B MoE)で動かす方法を解説 hide_table_of_contents: false displayed_sidebar: null --- # DGX SparkでClaude Codeを完全ローカル化!Qwen3-Coder-Nextで動かしてみた ## はじめに **Claude Code**、使ってますか? Anthropic公式のターミナルベースAIコーディングアシスタント。ファイルを読んで、コードを書いて、コマンドを実行して...まるで優秀なペアプログラマーがそばにいるような体験ができます。 ただ、1つ気になることが。 **「自分のコード、全部クラウドに送ってるんだよな...」** 企業の機密コードや、個人的なプロジェクトを扱うとき、ちょっと気になりませんか? そこで今回は、**Claude Codeを完全ローカルで動かす**方法を紹介します。 ## Ollama Launchとの比較 Claude Codeをローカルで動かす方法は他にもあります。代表的なのが**Ollama Launch**。 | 項目 | この記事の方法 | Ollama Launch | |------|---------------|---------------| | **セットアップ** | 複雑(vLLM + プロキシ) | **簡単** | | **推論速度** | **速い(20-30 tok/s)** | 遅め | | **対応モデル** | FP8量子化モデル | GGUF量子化モデル | | **コンテキスト長** | **200K対応** | モデル依存 | | **必要スペック** | 高(DGX Spark等) | 低〜中 | :::tip どちらを選ぶ? - **手軽に試したい** → Ollama Launch - **本格的に使いたい・速度重視** → この記事の方法 ::: この記事の方法は**セットアップが複雑**ですが、vLLMの最適化により**推論速度が速く**、**200Kトークン**の大規模コンテキストにも対応しています。 ## 何ができるようになるの? - ✅ **プライバシー保護** - コードがクラウドに送られない - ✅ **API料金ゼロ** - 月額課金から解放 - ✅ **200Kトークン対応** - 大規模なコードベースも一度に読める - ✅ **オフライン動作** - ネット環境がなくてもOK ## 必要なもの 今回使うのは **NVIDIA DGX Spark**。 :::note 同じ手順は他のNVIDIA GPU搭載マシンでも応用できます(VRAMは多めに必要)。 ::: ### DGX Sparkとは? NVIDIAの「デスクトップAIワークステーション」です。 | スペック | 値 | |---------|-----| | GPU | NVIDIA GB10(Blackwell世代) | | メモリ | **128GB統合メモリ** | | サイズ | Mac Studioくらい | | 価格 | 約50万円〜 | 128GBの統合メモリがポイント。普通のGPUだとVRAM 24GBとかですが、DGX Sparkは128GB全部をモデルに使えます。 ## 構成図 \`\`\` ┌─────────────────────────────────────────────────────┐ │ あなたのPC / DGX Spark │ │ │ │ ┌─────────────┐ │ │ │ Claude Code │ ← いつものClaude Code │ │ │ (Terminal) │ │ │ └──────┬──────┘ │ │ │ Anthropic API形式 │ │ ▼ │ │ ┌──────────────────┐ │ │ │ claude-code-proxy│ ← API形式を変換 │ │ │ (port 8082) │ │ │ └────────┬─────────┘ │ │ │ OpenAI API形式 │ │ ▼ │ │ ┌──────────────────┐ │ │ │ vLLM │ ← 推論エンジン │ │ │ (port 8000) │ │ │ │ │ │ │ │ ┌──────────────┐ │ │ │ │ │Qwen3-Coder- │ │ ← 80Bパラメータの │ │ │ │ Next-FP8 │ │ コーディングモデル │ │ │ └──────────────┘ │ │ │ └──────────────────┘ │ └─────────────────────────────────────────────────────┘ \`\`\` ### なぜプロキシが必要? Claude CodeはAnthropic独自のAPI形式を使います。一方、vLLMはOpenAI互換API。 この2つを繋ぐために **claude-code-proxy** を間に挟みます。 ## 使用するモデル:Qwen3-Coder-Next 今回使うのは **Qwen3-Coder-Next-FP8**。 | 項目 | 値 | |------|-----| | 開発 | Alibaba Cloud | | パラメータ | 80B(総数)/ 3B(推論時アクティブ) | | アーキテクチャ | MoE(Mixture of Experts) | | 最大コンテキスト | 1Mトークン | | 特徴 | コーディング特化 | **MoE(Mixture of Experts)** がポイント。80Bパラメータでも、推論時は3Bしか使わないので高速です。 FP8量子化版を使うことで、メモリ使用量は約45GB。DGX Sparkの128GBなら余裕です。 ## ワンライナーで全自動セットアップ \`\`\`bash curl -sL https://docs.techswan.online/scripts/dgx-spark-claude-code.sh | bash \`\`\` これだけ!約10分待つと環境が整います。 以下は手動でやりたい人向けの解説です。 --- ## 手動セットアップ ### Step 1: vLLMでモデルを起動 \`\`\`bash title="vLLM起動コマンド" 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 \\ --served-model-name qwen3-coder-next \\ --max-model-len 200000 \\ --max-num-seqs 8 \\ --gpu-memory-utilization 0.85 \\ --enable-auto-tool-choice \\ --tool-call-parser qwen3_xml \\ --trust-remote-code \`\`\` #### 重要なポイント | オプション | 値 | 説明 | |-----------|-----|------| | \`--max-model-len\` | 200000 | 200Kトークンまで対応 | | \`--max-num-seqs\` | 8 | 同時リクエスト数(メモリ節約) | | \`--tool-call-parser\` | **qwen3_xml** | ⚠️ これ超重要! | :::danger tool-call-parserに注意 \`--tool-call-parser\` を間違えると、Claude Codeのファイル操作やコマンド実行が動きません。**必ず \`qwen3_xml\`** を指定してください。 ::: 初回起動は約10分かかります(45GBのモデルをダウンロード&ロード)。 ### Step 2: claude-code-proxyを起動 \`\`\`bash # クローン git clone https://github.com/fuergaosi233/claude-code-proxy.git cd claude-code-proxy # 依存関係インストール pip install -r requirements.txt --user # 設定ファイル作成 cat > .env << 'EOF' OPENAI_BASE_URL=http://localhost:8000/v1 OPENAI_API_KEY=dummy BIG_MODEL=qwen3-coder-next MIDDLE_MODEL=qwen3-coder-next SMALL_MODEL=qwen3-coder-next REQUEST_TIMEOUT=300 MAX_TOKENS_LIMIT=8192 EOF # 起動 python start_proxy.py \`\`\` ### Step 3: Claude Codeを起動 \`\`\`bash ANTHROPIC_BASE_URL=http://localhost:8082 \\ ANTHROPIC_API_KEY=dummy \\ claude \`\`\` :::warning ANTHROPIC_AUTH_TOKEN \`ANTHROPIC_AUTH_TOKEN\` は設定しないでください。両方設定するとエラーになります。 ::: ### 便利なエイリアス設定 \`\`\`bash title="~/.bashrc に追加" alias claude-local='ANTHROPIC_BASE_URL=http://localhost:8082 ANTHROPIC_API_KEY=dummy claude' \`\`\` これで \`claude-local\` と打つだけでOK! ## パフォーマンス | 項目 | 値 | |------|-----| | プロンプト処理 | ~2300 tokens/秒 | | 生成速度 | ~20-30 tokens/秒 | | 最大コンテキスト | 200K tokens | | メモリ使用量 | 約84GB | Anthropic APIに比べると生成速度は遅めですが、ローカルで完結する安心感は大きいです。 ## ハマったポイント ### 1. Tool Callingで止まる 最初、ファイル操作しようとすると固まりました。 **原因**: \`--tool-call-parser hermes\` を使っていた **解決**: \`--tool-call-parser qwen3_xml\` に変更 Qwen3系モデルは独自のTool Callingフォーマットを使うので、専用のパーサーが必要です。 ### 2. Auth conflictエラー \`\`\` Auth conflict: Both a token (ANTHROPIC_AUTH_TOKEN) and an API key (ANTHROPIC_API_KEY) are set. \`\`\` **解決**: \`ANTHROPIC_AUTH_TOKEN\` を設定しない(または \`unset ANTHROPIC_AUTH_TOKEN\`) ### 3. max_tokensエラー 入力が長すぎると、出力用のトークン枠がなくなってエラーに。 **解決**: vLLMの \`--max-model-len\` を増やす(今回は200Kに設定) ## まとめ DGX SparkでClaude Codeをローカル化できました! **ポイントまとめ**: 1. **vLLM + Qwen3-Coder-Next-FP8** でモデルを動かす 2. **claude-code-proxy** でAPI形式を変換 3. \`--tool-call-parser qwen3_xml\` を忘れずに! 4. \`ANTHROPIC_AUTH_TOKEN\` は設定しない セットアップは複雑ですが、一度動けば**速くて安定**。完全ローカルでClaude Codeが動く喜び、ぜひ体験してみてください。 ## 参考リンク - [vLLM公式ドキュメント](https://docs.vllm.ai/) - [claude-code-proxy](https://github.com/fuergaosi233/claude-code-proxy) - [Qwen3-Coder-Next-FP8(Hugging Face)](https://huggingface.co/Qwen/Qwen3-Coder-Next-FP8) - [DGX Spark Playbooks](https://build.nvidia.com/spark/) --- *この記事は2026年2月時点の情報です。*