ローカルLLMでOpenClawが結構使える!Ollama Qwen3.6-35b-a3bの実力

はじめに

前回の記事では「ローカルLLMでOpenClawは厳しい!」と結論づけましたが、諦めるのは早かったことがわかりました。

Ollamaの新モデル Qwen3.6-35b-a3b を適切に設定することで、OpenClawが実用的に使えることを発見しました。特に、エージェントとしての「自走能力」が大幅に向上し、DeepSeek-v3.2と比較しても遜色ないレベルになりました。

ハードウェア構成と課題

環境スペック

私の環境は以下の通りです。

  • CPU: Ryzen 5 5600X
  • メモリ: 32GB
  • GPU: RTX 3060 12GB

Qwen3.6-35b-a3bは約23GBのモデルサイズなので、GPUメモリだけでは完全に載り切りません。Qwen3.6-35b-a3bは約23GBのモデルサイズなので、GPUメモリだけでは完全に載り切りません。当初は挫折ポイントでしたが、以下の設定で解決しました。

# CPU+GPU混合モードでの起動
OLLAMA_NUM_GPU=8 ollama run qwen3.6:35b-a3b

OllamaのOLLAMA_NUM_GPU環境変数でGPUレイヤ数を制限し、残りをCPUで処理します。GPUレイヤ8程度だと、12GBメモリに収まりながらも速度低下を最小限に抑えられます。

CPUでも意外と速度が出てる

画像はRTX3060 12GB(GPUメモリ80%使用)+ Ryzen 5600Xの環境で、Qwen3.6-35b-a3bをCPUミックスで動かした時のベンチマーク結果です。

CPUベンチマーク結果

完全GPU載せではないにもかかわらず、予想以上に速度が出ています。特に、メインメモリが32GBあるため、モデルの一部がRAMに展開されるおかげで、GPUオンリのケースと比較しても実用上の問題ないレベルです。

人間が一呼吸する程度の待ち時間(5-20秒)で、複雑なタスクを完了してくれます。

OpenClawの設定変更点

タイムアウト延長

ローカルモデルの応答時間を考慮し、OpenClawのタイムアウトを延長しました:

"idleTimeoutSeconds": 300

デフォルトが120秒のところ、最初は180秒(3分)に延長しましたがタイムアウトが発生したため、現在は**300秒(5分)**に伸ばしています。これにより、長い思考プロセスや複雑なコード生成でも確実に完走します。

モデル設定の最適化

~/.openclaw/openclaw.json に以下の設定を追加:

{
  "agents": {
    "defaults": {
      "model": {
        "primary": "ollama/qwen3.6:35b-a3b",
        "fallbacks": [
          "openrouter/deepseek/deepseek-v3.2",
          "ollama/gemma4-e2b-agent"
        ]
      }
    }
  }
}

重要なポイント:primaryモデルをOllamaに設定。これにより、普段使いはローカルモデル、必要に応じてDeepSeek-v3.2にフォールバックという構成です。

コンテキスト設定の秘訣

これが最大のポイントです:

{
  "id": "qwen3.6:35b-a3b",
  "name": "Qwen3.6 35B A3B",
  "contextWindow": 200000,
  "contextTokens": 131072,
  "maxTokens": 8192
}
  • contextTokens: 131072 – 128Kトークンのコンテキスト
  • maxTokens: 8192 – 一度に生成できる最大トークン数

なぜこれが重要なのか?

OpenClawはエージェントとして動作する際、以下のような大量の情報をコンテキストに保持します:

  1. 会話履歴
  2. ファイル内容
  3. ツール仕様
  4. 実行結果
  5. 思考プロセス

16Kトークンなど小さなコンテキストでは、すぐに履歴が消えて「自走」できなくなります。エージェントとして使うなら、ある程度のコンテキスト容量は必須です。

注記: メインメモリに入れるので、GPUメモリほど神経質にならなくてOKです。12GB GPUでも128Kコンテキストは使えます!

Qwen3.6-35b-a3bの実力評価

DeepSeek-v3.2との比較

興味深いことに、特定のタスクではDeepSeek-v3.2より自走能力が高いケースがありました:

比較項目 Qwen3.6-35b-a3b (ローカル) DeepSeek-v3.2 (API)
初期思考時間 5-15秒 1-3秒
複数ツール連携 ◎(文脈維持力が高い)
エージェント継続性 ◎(コンテキスト保持)
コスト 電気代のみ $0.20/100万トークン
プライバシー ◎(完全ローカル) △(API送信)

得意なタスク

  1. 複数ステップのワークフロー

    • ファイル読み込み → 分析 → 修正 → コミット のような連続タスク
    • 文脈が途切れずに最後まで実行できる
  2. 長いコンテキストでの作業

    • 大量のドキュメントを参照しながらの編集
    • 複数ファイルにまたがるリファクタリング
  3. 「自走」的なエージェント業務

    • 指示を受けて必要な情報を自分で探す
    • 障害時にもリカバリを試みる

設定のコツと注意点

コンテキスト管理

  1. 大きくとる – OpenClawでローカルLLMを使うなら128Kは欲しい
  2. maxTokensも大きく – 8192程度あると長いコード生成が可能
  3. バランスが大事 – 極端に大きくすると速度低下するので131072が現実的

実践的な設定例

# モデル定義の完全版
{
  "id": "qwen3.6:35b-a3b",
  "name": "Qwen3.6 35B A3B",
  "reasoning": false,
  "input": ["text"],
  "cost": {
    "input": 0,
    "output": 0,
    "cacheRead": 0,
    "cacheWrite": 0
  },
  "contextWindow": 200000,
  "contextTokens": 131072,
  "maxTokens": 8192
}

起動時の最適化

# 推奨起動オプション
OLLAMA_NUM_GPU=8 OLLAMA_KEEP_ALIVE=-1 ollama run qwen3.6:35b-a3b

# OpenClaw側の環境変数
export OLLAMA_HOST="http://localhost:11434"
export OLLAMA_NUM_GPU=8

コストパフォーマンスの革命

前回の記事では「月$32(約5000円)程度」と報告しましたが、今は電気代のみになりました。

  • DeepSeek-v3.2使用時: 約$8/週 → $32/月
  • Qwen3.6-35b-a3b使用時: 電気代のみ(月数百円程度)

95%以上のタスクをローカルで処理でき、残り5%の難しいタスクだけDeepSeek-v3.2に任せる。これが理想的な構成です。

今後の展望

この構成で気づいたのは、モデル選択が重要以上に重要だということです。同じ35Bパラメータでも:

  • Gemma4-26B: 推論力は高いが、エージェント能力は低い
  • Qwen3.6-35b-a3b: バランスが良く、エージェント向き
  • Coder系モデル: コード生成特化だが、汎用性に欠ける

OpenClawの強みを活かすには、エージェント能力に特化したモデルを選択するのが鍵です。

まとめ

「ローカルLLMでOpenClawは厳しい」という先入観を覆すことができました。適切なモデルと設定さえ見つかれば、ローカル環境でも十分実用的です。

実現できたこと:

✅ RTX3060 12GBでの実用化(CPU+GPU混合モード)
✅ 月額コストを$32→ほぼゼロに削減
✅ DeepSeek-v3.2と同等のエージェント能力
✅ プライバシーを維持したAIアシスタント運用

秘訣はたった一つ:

コンテキストを大きく取ること(131072トークン以上)

小さなコンテキストでエージェントを使おうとするから「厳しい」と思っていただけでした。メモリが許す限り大きなコンテキストを設定すれば、ローカルLLMでもOpenClawは十分戦えます。

次は、複数ローカルモデルの動的切り替えや、タスクごとの自動モデル選択に挑戦したいと思います。


この記事は、OpenClaw + Ollama Qwen3.6-35b-a3b によって作成され、人間が微調整しました。

コメントを残す