この記事は、ローカル Agent の構築案を整理したものだ。WSL2 上で llama.cpp を使って Qwen3.6 GGUF モデルを動かし、Hermes Agent をローカルの OpenAI-compatible API に接続する。これにより、自分の PC 上で長時間動作するローカル AI アシスタントを用意でき、オンラインサービスの Token 消費に縛られにくくなる。
この構成は、ローカル AI Agent を試したい人、データのプライバシーと長期的な管理性を重視する人に向いている。日常の質問応答、執筆、コード補助、資料整理、簡単な自動化タスクに使える。ただし、モデルが大きいほど VRAM 要件も高くなる。原文の例では Qwen3.6-27B を使っており、24GB VRAM のほうが安定しやすい。VRAM が少ない場合は、小さいモデルや低い量子化版を選ぶ。
構成
全体の流れはシンプルだ。
- Windows に WSL2 と Ubuntu 24.04 をインストールする。
- WSL2 内に CUDA Toolkit を入れ、
llama.cppをビルドする。 - Qwen3.6 GGUF モデルをダウンロードする。
llama-serverでローカルモデルサービスを起動する。- Hermes Agent をインストールし、
http://localhost:8080/v1に接続する。 - 任意で起動スクリプトを書き、WSL2 起動時にモデルサービスを自動起動する。
Hermes は Agent 機能を担当し、Qwen3.6 はローカル LLM 機能を担当する。組み合わせることで、PC をローカルのプライベート AI アシスタントにできる。
WSL2 と Ubuntu のインストール
Windows PowerShell を管理者として開き、次を実行する。
|
|
再起動後、Ubuntu 24.04 をインストールする。
|
|
インストール後、Ubuntu がユーザー名とパスワードの設定を求める。Ubuntu に入ったら、まず NVIDIA GPU が WSL2 から見えているか確認する。
|
|
GPU が認識されない場合は、Windows 側の NVIDIA ドライバを更新する。WSL2 は Windows ドライバを継承するが、CUDA Toolkit は WSL2 内に別途インストールする必要がある。
Python と基本ツールのインストール
|
|
続いて、ビルドツール、Git、CMake も必要になる。
|
|
llama.cpp のビルド
まずソースコードを取得する。
|
|
WSL2 内で CUDA が使える状態なら、そのままビルドできる。
|
|
CMAKE_CUDA_ARCHITECTURES=89 は RTX 40 シリーズなど Ada アーキテクチャ向けだ。別の GPU では実際のアーキテクチャに合わせて変更する。
CUDA Toolkit がないというエラーが出る場合は、先に WSL2 内で CUDA Toolkit をインストールする。
|
|
環境変数を設定する。
|
|
その後、再ビルドする。
|
|
Qwen3.6 GGUF モデルのダウンロード
原文の例では、unsloth/Qwen3.6-27B-GGUF の Qwen3.6-27B-UD-Q4_K_XL.gguf を使っている。
|
|
このファイルは約 17GB。Hugging Face のダウンロードが遅い場合は、ModelScope などのミラーを使う。VRAM が足りない場合は 27B を無理に使わず、小さいモデルか低い量子化版を選ぶ。
ローカルモデルサービスを起動する
自分のモデルファイル名に合わせて llama-server を起動する。
|
|
起動後、Windows のブラウザで次を開く。
|
|
Hermes Agent や他の OpenAI-compatible クライアントから呼び出す場合、API アドレスは通常次になる。
|
|
Thinking モードの使い分け
Qwen3.6 はデフォルトで Thinking モードが有効になる場合がある。複雑な推論、難しいコード問題、多段階分析には向いているが、速度は遅くなる。
Thinking モードを無効にしたい場合は、サービスを停止して --chat-template-kwargs を追加する。
|
|
Thinking を無効にすると、簡単な Q&A、執筆、コード補完、コード説明は速くなる。一方、複雑なアルゴリズム設計、難しい Debug、アーキテクチャ分析では Thinking を有効にするほうがよい。
Hermes Agent のインストール
llama-server を動かしたまま、新しい WSL2 ターミナルを開いて Hermes Agent をインストールする。
|
|
インストールスクリプトは Python、Node.js、ripgrep、ffmpeg などの依存関係を処理する。モデル endpoint の設定では custom endpoint を選ぶ。
|
|
ローカルの llama-server では、API Key は任意のプレースホルダでよい。設定後は Telegram、WeChat、QQ、Discord などのチャットツールと接続し、Hermes Agent からローカルモデルを呼び出してタスクを実行できる。
モデルサービスの自動起動
WSL2 ターミナルを開いたときにモデルサービスを自動起動するスクリプトを用意できる。
スクリプトを作成する。
|
|
.bashrc に追記する。
|
|
これで WSL2 ターミナルを開くたびに、llama-server が動いていなければ自動起動する。すでに動いている場合はスキップされ、重複起動を避けられる。
注意事項
- 27B モデルは VRAM 要件が高い。24GB VRAM のほうが安定しやすく、VRAM が少ない場合は小さいモデルにする。
--ctx-size 65536は VRAM と RAM の負荷を大きく増やす。不安定な場合は32768かそれ以下に下げる。- WSL2 内の CUDA Toolkit と Windows 側の GPU ドライバの両方が正常である必要がある。どちらかが問題を起こすと、CUDA のビルドや実行に失敗する。
- Hermes Agent がローカルサービスへ接続する仕組みは OpenAI-compatible API 呼び出しであり、重要なのは
http://localhost:8080/v1が正常に応答すること。 - スマホや他の端末からアクセスする場合は、Windows Firewall、LAN アドレス、セキュリティ分離を追加で扱う。ローカルモデルサービスを直接インターネットへ公開しない。
関連リンク
- 原文:Hermes + Qwen3.6:本地最强 Agent 组合!零成本、无限 Token,太香了!
- llama.cpp:ggerganov/llama.cpp
- Hermes Agent:NousResearch/hermes-agent
- Qwen3.6 GGUF 例:unsloth/Qwen3.6-27B-GGUF