--- sidebar_position: 4 title: DGX SparkでClaude Codeをローカルモデルで動かす description: DGX Spark上でQwen3-Coder-Next-FP8をvLLM経由でClaude Codeのバックエンドとして使う方法 hide_table_of_contents: false displayed_sidebar: null --- # DGX SparkでClaude Codeをローカルモデルで動かす ## 概要 Claude Codeをローカルで動かすメリット: - **プライバシー**: コードがクラウドに送信されない - **コスト**: API料金不要 - **速度**: ネットワーク遅延なし この記事では、DGX Spark上でQwen3-Coder-Next-FP8を使ってClaude Codeを動かす方法を解説する。 ## 構成 ``` ┌─────────────────────────────────────────────────────┐ │ DGX Spark │ │ │ │ ┌─────────────┐ ┌──────────────────┐ │ │ │ Claude Code │───▶│ claude-code-proxy│ │ │ └─────────────┘ │ (port 8082) │ │ │ └────────┬─────────┘ │ │ │ │ │ ▼ │ │ ┌──────────────────┐ │ │ │ vLLM Server │ │ │ │ (port 8000) │ │ │ │ Qwen3-Coder-Next │ │ │ └──────────────────┘ │ └─────────────────────────────────────────────────────┘ ``` **なぜプロキシが必要?** - Claude Code → Anthropic Messages API - vLLM → OpenAI互換API フォーマットが異なるため、**claude-code-proxy**で変換する。 ## 前提条件 - DGX Spark(128GB統合メモリ) - Docker - Node.js 22+ ## Step 1: vLLMでQwen3-Coder-Next-FP8を起動 ```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 32768 \ --max-num-seqs 32 \ --gpu-memory-utilization 0.85 \ --enable-auto-tool-choice \ --tool-call-parser qwen3_xml \ --trust-remote-code ``` ### 重要なパラメータ | パラメータ | 値 | 説明 | |-----------|-----|------| | `--served-model-name` | `qwen3-coder-next` | モデル名(`/`を含めない) | | `--enable-auto-tool-choice` | - | Tool Calling有効化 | | `--tool-call-parser` | `qwen3_xml` | **Qwen3専用パーサー**(重要!) | :::danger tool-call-parserに注意 `--tool-call-parser hermes` ではなく **`qwen3_xml`** を使うこと! hermesだとTool Callingのフォーマットが崩れてClaude Codeが止まる。 ::: ### 起動確認 ```bash # ヘルスチェック curl http://localhost:8000/health # モデル一覧 curl http://localhost:8000/v1/models ``` 初回起動は約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 ``` ### 設定ファイル ```bash title=".env作成" 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 ``` ### プロキシ起動 ```bash python start_proxy.py ``` ### 動作確認 ```bash curl http://localhost:8082/v1/messages \ -H "Content-Type: application/json" \ -H "x-api-key: dummy" \ -d '{"model": "claude-3-5-sonnet-20241022", "max_tokens": 100, "messages": [{"role": "user", "content": "Hello"}]}' ``` ## Step 3: Claude Codeを起動 :::tip ANTHROPIC_AUTH_TOKEN `ANTHROPIC_AUTH_TOKEN` は**設定しない**こと! 両方設定するとAuth conflictエラーが出る。 ::: ```bash ANTHROPIC_BASE_URL=http://localhost:8082 \ ANTHROPIC_API_KEY=dummy \ claude ``` ### シェル設定に追加(推奨) ```bash title="~/.bashrc" alias claude-local='ANTHROPIC_BASE_URL=http://localhost:8082 ANTHROPIC_API_KEY=dummy claude' ``` ## パフォーマンス | 項目 | 値 | |------|-----| | プロンプト処理 | ~1900 tokens/s | | 生成速度 | ~6 tokens/s | | メモリ使用量 | ~84GB / 119GB | | KVキャッシュ | 26GB(32Kコンテキスト) | ### 動作確認済み機能 - ✅ チャット応答 - ✅ ストリーミング - ✅ Tool Calling(Bash実行、ファイル操作) - ✅ 日本語対応 ## トラブルシューティング ### Tool Callingで止まる **原因:** `--tool-call-parser` の設定が間違っている ```bash # ❌ 間違い --tool-call-parser hermes # ✅ 正解 --tool-call-parser qwen3_xml ``` ### Auth conflict エラー ``` Auth conflict: Both a token (ANTHROPIC_AUTH_TOKEN) and an API key (ANTHROPIC_API_KEY) are set. ``` **対処:** ```bash unset ANTHROPIC_AUTH_TOKEN ``` ### 文字化け ```bash LANG=en_US.UTF-8 claude ``` ### vLLMが404を返す vLLMはAnthropic API未実装のため、claude-code-proxyを使う。 ## まとめ DGX SparkでClaude Codeをローカルモデルで動かすポイント: 1. **vLLM** + **Qwen3-Coder-Next-FP8**を起動 2. **`--tool-call-parser qwen3_xml`** を使う(重要!) 3. **claude-code-proxy**でAPI変換 4. **`ANTHROPIC_AUTH_TOKEN`は設定しない** これでプライベートなコーディング環境の完成!🎉 ## 参考リンク - [vLLM Claude Code統合](https://docs.vllm.ai/en/latest/serving/integrations/claude_code/) - [vLLM Tool Calling](https://docs.vllm.ai/en/latest/features/tool_calling/) - [claude-code-proxy](https://github.com/fuergaosi233/claude-code-proxy) - [Qwen3-Coder-Next-FP8](https://huggingface.co/Qwen/Qwen3-Coder-Next-FP8) --- *この記事は2026年2月時点の情報です。*