ローカルLLM で AI エージェントを使う — 試験結果

llama-server に繋いだ Claude Code・Pi・OpenCode・Aider・Codex CLI で、20GB 以下のモデルがファイルを読み書きできるかを試した結果と、どれを使うか
📅 作成: 2026-09-29 / 更新: 2026-10-06

目次

  1. 結論
  2. モデル別の結果
  3. エージェント別の結果
  4. 日本語でプログラムを書かせた結果
  5. 効いた設定とその理由
  6. 未確認のこと

この文書の位置づけ

ローカルLLM 実行計画の Step 5 で、Claude Code を llama-server に繋いで応答が返ることは確かめた。 本書は、その先のツール(Read・Write)を実際に使えるかを、手持ちの 14 本とダウンロードした 6 本の計 20 本で試した結果である。 環境は RAM 32GB・VRAM 4GB(画面表示は内蔵GPU)。

試験は 2 問。README.html を読んで最初の h1 を答える(読み)と、決めた 1 行をファイルに書く(書き)で、表の秒数はエージェントが終わるまでの時間。 試し方・途中で起きたこと・流したすべての試験は試験の経緯と全実行の記録、 設定の中身と動かし方は使う・試す手順にある。

結論

共通ルールを読ませず、思考を切れば、Claude Code はこのPCでも使える。 20 本中 15 本が 15 分以内に読み・書きの両方に合格した(1 時間まで待てば 16 本)。

どのモデルを使うか

用途モデルサイズ読み書き備考
普段使いgemma-4-E4B-it4.97 GB38 秒26 秒いまの cc1.cmd の既定。実行計画でも、知識を問う用途に採っている
速さ最優先gemma-4-E2B-it3.19 GB13 秒10 秒最速。全層が GPU に載る(-ngl 99)
大きいモデルが要るときgpt-oss-20b11.28 GB84 秒40 秒生成は 19 tok/s(実行計画の 32GB での再測定)。Codex CLI でも合格した
最小Ministral-3-3B-Instruct-25122.00 GB28 秒54 秒チャットテンプレートの差し替えが要る

20GB 級の MoE も合格したが、読みに 127〜203 秒かかる(第 2 章)。

どのエージェントを使うか

エージェント評価根拠
Claude Code(ルールなし)推奨20 本すべてで試したのはこれだけで、15 本が 15 分以内に合格した。日本語で「プログラムを書いて実行する」問でも、19 本中 16 本が合格していちばん多い(第 4 章)。設定は cc1.cmd に入っている
Pi速さ重視合格した問は、どれも Claude Code より速い。gemma-4-E4B は読み 13 秒・書き 13 秒、gpt-oss-20b は 30 秒・21 秒で、Claude Code の 2〜3 倍速い。Nemotron は Claude Code では不可、Pi では 18 秒。ただし gemma-4-E2B の読みは 3 回中 1 回しか答えなかった(第 3 章)。プログラムを書いて実行する問は 19 本中 14 本が合格し、合格はどれも 2 分以内(第 4 章)
OpenCode遅いNemotron は合格したが、読みに 431 秒かかった。プログラムを書いて実行する問は 19 本中 9 本(第 4 章)
Codex CLI勧めない合格は gpt-oss-20b だけ。Windows では安全装置を外さないとファイルを読み書きできない
Aider勧めないファイルを先に渡して使う道具で、読みの問が成り立たない。試験中にプロジェクトの README.html を上書きした。プログラムは 19 本とも書けたが、自分では実行しない(第 4 章)
ルールなしの Claude Code には、利用者の決めごとが効かない。 cc1.cmd はホームを空のフォルダに替えるため、共通ルール(commit を勝手にしない等)もメモリも読まない。

モデル別の結果

この資料の試験は llama.cpp b10612・Claude Code 2.1.286・Pi 0.87.1・OpenCode 1.18.33・Codex CLI 0.158.0・Aider 0.86.2 で行った(2026-09-28〜10-01。詳細は試験の経緯と全実行の記録の「試験した版」)。 Claude Code を共通ルールなし・思考なし(--reasoning off)で動かし、差し替えたテンプレートがあるモデルはそれを使った。 1 問の待ち時間は 10〜15 分で、時間切れの問は 1 時間の枠で試し直した(Nemotron・GLM-4.6V・Qwen3-4B-Thinking の書き)。 最初に送った量はどのモデルも 17,000〜23,600 トークン。

モデルサイズ読み書き備考
gemma-4-E2B-it3.19 GB13 秒10 秒
gemma-4-E4B-it4.97 GB38 秒26 秒
Ministral-3-3B-Instruct-25122.00 GB28 秒54 秒テンプレート差し替え。思考を切る前の回
Qwen3-4B-Instruct-25072.33 GB53 秒66 秒思考を切る前の回
gpt-oss-20b11.28 GB84 秒40 秒
gemma-4-12B-it-QAT6.50 GB104 秒84 秒
gemma-4-12B-it6.87 GB113 秒86 秒
gemma-4-26B-A4B-it15.84 GB127 秒59 秒ダウンロード
Qwen3-30B-A3B-Instruct-250716.48 GB140 秒73 秒ダウンロード。ホームを外に移してから合格
Bonsai-27B(Q1_0)3.54 GB141 秒121 秒テンプレート差し替え
Qwen3.6-35B-A3B(UD-Q3_K_XL)15.69 GB164 秒123 秒ダウンロード。ホームを外に移してから合格
Qwen3-Coder-30B-A3B-Instruct16.45 GB166 秒64 秒ダウンロード。ホームを外に移してから合格
GLM-4.7-Flash16.32 GB203 秒60 秒ダウンロード
Ministral-3-14B-Reasoning-25127.67 GB226 秒331 秒テンプレート差し替え
Devstral-Small-2507(24B)13.55 GB246 秒320 秒ダウンロード
Qwen3.5-9B5.24 GB78 秒49 秒テンプレート差し替え。読めているが、答えを「ローカル LLM 実行環境」と空白を足して書き写す(2 回とも)
Qwen3-4B-Thinking-25072.33 GB291 秒1199 秒思考を切れない版。書きは 10 分で時間切れ、1 時間の枠で約 20 分かけて合格
NVIDIA-Nemotron-3-Nano-4B2.64 GB不可不可1 時間の枠でも、読まずに「準備はできています」と答えるだけ。Pi・OpenCode では通る(第 3 章)
GLM-4.6V-Flash5.74 GB時間切れ時間切れ1 時間の枠でも返らない。OpenCode・Aider で書きだけ通る(第 3 章)
Qwen2.5-Coder-14B-Instruct8.37 GB不可不可道具の呼び出しを <tool_call> で囲まず JSON の文章として出すため、llama-server が呼び出しと読み取れない。Qwen3 のテンプレートに差し替えても同じ

版を上げて流し直した結果

llama.cpp を b11320 に、Claude Code を 2.1.289 に上げて、同じ読み・書きを 1 回ずつ流した(2026-10-05、NVIDIA GPU)。 時間切れは 10 分、名前に Thinking・Reasoning が入るモデルは 20 分。PC の休止と Claude Code の自動更新に重なった 2 問(Qwen3-4B-Thinking の読み、Devstral の書き)は流し直した。

モデル読み書き前の版との違い
gemma-4-E2B-it✅ 合格 17 秒✅ 合格 9 秒同じ
gemma-4-E4B-it✅ 合格 36 秒✅ 合格 25 秒同じ
Ministral-3-3B-Instruct-2512✅ 合格 65 秒✅ 合格 123 秒2 倍ほど遅い(前は思考を切る前の回)
Qwen3-4B-Instruct-2507✅ 合格 73 秒✅ 合格 142 秒遅い(前は思考を切る前の回)
gpt-oss-20b✅ 合格 81 秒✅ 合格 19 秒同じ
gemma-4-12B-it-QAT✅ 合格 93 秒✅ 合格 59 秒同じ
gemma-4-12B-it✅ 合格 115 秒✅ 合格 65 秒同じ
gemma-4-26B-A4B-it✅ 合格 137 秒✅ 合格 61 秒同じ
Qwen3-30B-A3B-Instruct-2507✅ 合格 145 秒✅ 合格 57 秒同じ
Bonsai-27B(Q1_0)✅ 合格 131 秒✅ 合格 88 秒同じ
Qwen3.6-35B-A3B(UD-Q3_K_XL)✅ 合格 148 秒❌ 不合格 161 秒書きが落ちた。「作成しました」と答えたが、Write ツールを呼ばずファイルが無い
Qwen3-Coder-30B-A3B-Instruct✅ 合格 195 秒✅ 合格 67 秒同じ
GLM-4.7-Flash✅ 合格 213 秒✅ 合格 59 秒同じ
Ministral-3-14B-Reasoning-2512✅ 合格 161 秒✅ 合格 240 秒少し速い
Devstral-Small-2507(24B)✅ 合格 212 秒✅ 合格 377 秒同じ
Qwen3.5-9B✅ 合格 73 秒✅ 合格 47 秒読みが ⚠️ から ✅ に(答えに空白を足さなくなった)
Qwen3-4B-Thinking-2507✅ 合格 800 秒✅ 合格 1140 秒読みが 291 → 800 秒。20 分の枠で両方合格
NVIDIA-Nemotron-3-Nano-4B⏱️ 時間切れ❌ 不合格同じく不可
GLM-4.6V-Flash⏱️ 時間切れ⏱️ 時間切れ同じく不可
Qwen2.5-Coder-14B-Instruct❌ 不合格❌ 不合格同じく不可
Qwen3-0.6B⏱️ 時間切れ✅ 合格 101 秒今回はじめて試した
Qwen3.8-27B❌ 不合格❌ 不合格今回はじめて試した
Muse-Glimmer-30B⏱️ 時間切れ⏱️ 時間切れ今回はじめて試した

流したのは tools\50_run\test-cc-tools.ps1 -UseTemplates -Tests read,write -ExtraArgs "--reasoning off" -MaxSizeGB 20 -NoRules。結果は logs\test-cc-tools\20261005-092541-norules-results.jsonl と、流し直しの 20261005-23*。

エージェント別の結果

Claude Code(ルールなし)で通らなかった 3 本を、別のエージェントで試した。サーバの設定は第 2 章と同じ。 質問はコマンド行に載せるため英語にした。

モデルPiOpenCodeAider
NVIDIA-Nemotron-3-Nano-4B両方合格読み 18 秒・書き 19 秒両方合格読み 431 秒・書き 58 秒書きのみ書き 11 秒
GLM-4.6V-Flash不可読みは時間切れ、書きは作ったと答えたがファイルなし書きのみ書き 152 秒書きのみ書き 16 秒
Qwen3-4B-Thinking-2507両方合格読み 145 秒・書き 88 秒時間切れ書きのみ書き 311 秒

速いモデルを Pi で

第 1 章で選んだ速い 3 本を、Pi でも試した(2026-09-30)。サーバの設定は第 2 章と同じ。E2B は結果が揺れたので 3 回流した。

モデルPi 読みPi 書きClaude Code 読みClaude Code 書き
gemma-4-E2B-it3 回中 1 回 4 秒3 秒13 秒10 秒
gemma-4-E4B-it13 秒13 秒38 秒26 秒
gpt-oss-20b30 秒21 秒84 秒40 秒

Codex CLI(ルールなし)

CODEX_HOME を空のフォルダに向け、利用者の設定と AGENTS.md を読ませずに試した(2026-09-30)。 接続は config.toml の [model_providers.*] に wire_api = "responses" で書いた。

モデル読み書き備考
gpt-oss-20b53 秒128 秒
gemma-4-E2B-it不可7 秒読みは「これから読む」と答えたところで終わった
Windows では安全装置を外さないと動かない。 Codex はファイルの読み書きに PowerShell のコマンドを使う。-s workspace-write ではそのコマンドが policy で止められ(rejected: blocked by policy)、読みも書きもできなかった。 試験は --dangerously-bypass-approvals-and-sandbox を付け、作業フォルダを W:/temp の下のコピーにして利用者が実行した。安全装置が無いので、モデルは作業フォルダの外にも手を出せる。

日本語でプログラムを書かせた結果

書きの試験に 10 分以内で合格した 19 本を、4 つのエージェントで試した(2026-09-30〜10-01)。問は日本語のまま渡した。

1から10までの合計を表示するnode.jsプログラムをsum.jsに書く。node sumで実行する

判定は、sum.js ができ、試験側で node sum を実行すると 55 が出て、エージェントの答えに 55 がある、の 3 つがそろって合格。 加えて、エージェントの作業ログに node sum の実行があるかを見た。3 つがそろっても実行の跡が無いもの(実行せずに 55 と答えたもの)は ☑️ 補欠合格とした。 問と判定の詳細は初期プログラミングの検証計画にある。サーバの設定は第 2 章と同じ。

モデルClaude CodePiOpenCodeAider
gemma-4-E2B-it-Q4_K_M✅ 合格 32 秒✅ 合格 7 秒✅ 合格 11 秒❌ 不合格 書いたが実行・報告なし
gemma-4-E4B-it-Q4_K_M✅ 合格 63 秒✅ 合格 21 秒✅ 合格 26 秒❌ 不合格 書いたが実行・報告なし
Ministral-3-3B-Instruct-2512-Q4_K_M✅ 合格 77 秒❌ 不合格 書いたが実行・報告なし❌ 不合格 書いたが実行・報告なし❌ 不合格 書いたが実行・報告なし
Qwen3-4B-Instruct-2507-Q4_K_M✅ 合格 119 秒❌ 不合格 書いたが実行・報告なし✅ 合格 33 秒❌ 不合格 書いたが実行・報告なし
Qwen3.5-9B-Q4_K_M✅ 合格 102 秒✅ 合格 54 秒✅ 合格 97 秒❌ 不合格 書いたが実行・報告なし
gpt-oss-20b-MXFP4☑️ 補欠合格 80 秒☑️ 補欠合格 32 秒☑️ 補欠合格 84 秒❌ 不合格 書いたが実行・報告なし
gemma-4-12B-it-QAT-Q4_0✅ 合格 118 秒✅ 合格 46 秒❌ 不合格 sum.js を作らない❌ 不合格 書いたが実行・報告なし
gemma-4-12B-it-Q4_K_M✅ 合格 113 秒✅ 合格 49 秒✅ 合格 97 秒❌ 不合格 書いたが実行・報告なし
gemma-4-26B-A4B-it-UD-Q4_K_XL✅ 合格 143 秒✅ 合格 39 秒✅ 合格 91 秒❌ 不合格 書いたが実行・報告なし
Qwen3-30B-A3B-Instruct-2507-UD-Q4_K_XL☑️ 補欠合格 158 秒☑️ 補欠合格 44 秒❌ 不合格 書いたが実行・報告なし☑️ 補欠合格 22 秒
Qwen3-Coder-30B-A3B-Instruct-UD-Q4_K_XL✅ 合格 170 秒❌ 不合格 sum.js を作らない❌ 不合格 sum.js を作らない❌ 不合格 書いたが実行・報告なし
GLM-4.7-Flash-UD-Q4_K_XL✅ 合格 173 秒✅ 合格 24 秒❌ 不合格 実行したが結果を答えない❌ 不合格 書いたが実行・報告なし
Bonsai-27B-Q1_0✅ 合格 445 秒✅ 合格 57 秒❌ 不合格 sum.js を作らない❌ 不合格 書いたが実行・報告なし
Qwen3.6-35B-A3B-UD-Q3_K_XL✅ 合格 227 秒✅ 合格 35 秒✅ 合格 102 秒❌ 不合格 書いたが実行・報告なし
Ministral-3-14B-Reasoning-2512-Q4_K_M☑️ 補欠合格 504 秒☑️ 補欠合格 111 秒❌ 不合格 sum.js を作らない❌ 不合格 書いたが実行・報告なし
Devstral-Small-2507-UD-Q4_K_XL✅ 合格 577 秒❌ 不合格 sum.js を作らない✅ 合格 175 秒❌ 不合格 書いたが実行・報告なし
NVIDIA-Nemotron-3-Nano-4B-Q4_K_M⏱️ 時間切れ✅ 合格 18 秒❌ 不合格 sum.js を作らない❌ 不合格 書いたが実行・報告なし
Qwen3-4B-Thinking-2507-Q4_K_M⏱️ 時間切れ❌ 不合格 書いたが実行・報告なし❌ 不合格 書いたが 55 が出ない☑️ 補欠合格 40 秒
GLM-4.6V-Flash-Q4_K_M⏱️ 時間切れ❌ 不合格 sum.js を作らない❌ 不合格 sum.js を作らない❌ 不合格 書いたが実行・報告なし

1 組 1 回ずつ流した結果。表は tools\50_run\sum-table.ps1 -Until 20261001-2250 で結果のファイルから作った。「書いたが実行・報告なし」は、正しい sum.js を書いたが、自分では実行せず、答えにも 55 が無かったもの。「実行したが結果を答えない」は、node sum を実行して 55 を得たのに、答えには書かなかったもの。「時間切れ」は 10 分で終わらなかったもの。

エージェントごとの合格数

エージェント✅ 合格 + ☑️ 補欠合格うち ✅ 合格落ち方
Claude Code(ルールなし)16 / 1913落ちた 3 本は時間切れ。合格の多くは 1〜3 分かかる
Pi14 / 1911合格はどれも 2 分以内で、多くは 1 分以内。書いただけで止まるか、sum.js を作らない
OpenCode9 / 198sum.js を作らないものが多い
Aider2 / 19019 本とも正しい sum.js を書いたが、自分では実行しない
Claude Code にコマンドを実行させるときは、呼び出し元の環境変数に注意する。 試験では最初、このセッションの CLAUDE_CODE_USE_POWERSHELL_TOOL を引き継いでいたため、Claude Code に PowerShell の道具が加わった。 --allowedTools "Bash(node:*)" で許したのは Bash の道具だけなので、PowerShell の道具で node を呼んだ Qwen3-4B-Instruct は 10 回とも止められた。 この変数を渡さないように直して流し直した(cc1.cmd は空のホームで動くので、もともと PowerShell の道具は無い)。

版を上げて 4 回ずつ流した結果

llama.cpp を b11320 に、エージェントを最新に上げて(版は試験の経緯と全実行の記録の「試験した版」)、同じ問を 1 組 3 回ずつ流した(2026-10-01〜10-02)。 1 回目の結果が前の版と食い違ったため、揺れか版の違いかを見るためである。 2026-10-04 に、3 回のうち 1 回でも 10 分以内に終わった組(Aider を除く 55 組)を、もう 1 回流した。

エージェントに渡した指示文

どのエージェントにも、次の 1 文だけを渡した。補足の文や例は付けていない。

1から10までの合計を表示するnode.jsプログラムをsum.jsに書く。node sumで実行する

渡し方はエージェントごとに次のとおり。作業フォルダは README.html だけを置いた空のフォルダで、1 問ごとに作り直した。

エージェントコマンド(指示文は <指示文> と略す)
Claude Codeclaude -p --max-turns 10 --permission-mode acceptEdits --allowedTools "Bash(node:*)" --output-format stream-json --verbose(指示文は標準入力で渡す)
Pipi -p --session-dir <ログ> --provider llamacpp --model <モデル> "<指示文>"
OpenCodeopencode run --format json -m "llamacpp/<モデル>" "<指示文>"
Aideraider --model "openai/<モデル>" --openai-api-base http://127.0.0.1:8080/v1 --no-git --yes-always --message "<指示文>"

4 回の結果

1 マスに 1 回目から 4 回目の順に並べた。 ✅ 合格(書いて、node で実行して、55 と答えた)/ ☑️ 補欠合格(正しい sum.js を書いて 55 と答えたが、node で実行していない)/ ❌ 不合格(作らない・55 が出ない・実行したが答えない など)/ ⏱️ 時間切れ(10 分)。

モデル大きさClaude CodePiOpenCodeAider
Ministral-3-3B-Instruct-2512-Q4_K_M2.0 GB✅❌✅✅❌✅❌❌❌❌❌❌❌❌
Qwen3-4B-Instruct-2507-Q4_K_M2.3 GB❌✅☑️❌☑️❌❌❌✅✅✅✅❌❌
Qwen3-4B-Thinking-2507-Q4_K_M2.3 GB☑️☑️⏱️⏱️☑️☑️❌❌⏱️⏱️⏱️☑️☑️
NVIDIA-Nemotron-3-Nano-4B-Q4_K_M2.6 GB⏱️⏱️⏱️✅✅✅✅❌❌❌❌❌❌
gemma-4-E2B-it-Q4_K_M3.2 GB❌✅☑️❌✅✅✅✅❌❌❌❌❌❌
Bonsai-27B-Q1_03.5 GB✅✅❌❌✅✅✅✅❌✅❌❌❌❌
gemma-4-E4B-it-Q4_K_M5.0 GB✅✅✅✅✅✅✅✅✅✅✅✅❌❌
Qwen3.5-9B-Q4_K_M5.2 GB✅✅✅✅✅✅✅❌✅☑️❌❌❌❌
GLM-4.6V-Flash-Q4_K_M5.7 GB❌⏱️⏱️⏱️⏱️❌❌❌❌❌❌❌❌❌
gemma-4-12B-it-QAT-Q4_06.5 GB✅✅✅✅✅✅✅✅❌✅✅✅❌❌
gemma-4-12B-it-Q4_K_M6.9 GB❌✅❌☑️✅✅✅✅❌❌✅✅❌❌
Ministral-3-14B-Reasoning-2512-Q4_K_M7.7 GB❌❌☑️☑️✅✅❌❌❌❌❌❌❌❌
gpt-oss-20b-MXFP411.3 GB☑️❌❌☑️☑️☑️☑️☑️☑️❌☑️❌❌❌
Devstral-Small-2507-UD-Q4_K_XL13.5 GB☑️⏱️✅✅✅❌❌❌✅✅✅✅❌❌
Qwen3.6-35B-A3B-UD-Q3_K_XL15.7 GB❌✅❌✅✅✅✅✅❌✅✅✅❌❌
gemma-4-26B-A4B-it-UD-Q4_K_XL15.8 GB✅✅✅✅✅✅✅✅✅✅✅✅❌❌
GLM-4.7-Flash-UD-Q4_K_XL16.3 GB✅✅☑️✅☑️✅✅✅❌✅✅✅❌❌
Qwen3-Coder-30B-A3B-Instruct-UD-Q4_K_XL16.5 GB☑️☑️✅☑️❌✅☑️❌❌❌❌✅❌❌
Qwen3-30B-A3B-Instruct-2507-UD-Q4_K_XL16.5 GB☑️☑️☑️☑️❌✅✅✅❌❌❌❌☑️☑️

行はモデルのファイルの大きさ順。表は tools\50_run\sum-table.ps1 -Sets -Ranges "20261001-2250..20261002-0700,20261004-0322..20261004-0730" で結果のファイルから作った。Aider は 2 回まで流した(朝 7 時の期限で 3 回目を流せず、4 回目は配布物から外したため流していない)。3 回とも ⏱️ だった組(Claude Code の Nemotron、OpenCode の Qwen3-4B-Thinking)は 4 回目を流していない。55 が出たかは、試験側で node sum を実行した標準出力だけで見ている。

時間切れを 40 分にした結果

10 分の枠で 1 回でも ⏱️ になった組を、NVIDIA GPU のまま時間切れを 40 分にして 1 回ずつ流した(2026-10-04)。

モデルエージェント10 分の枠(4 回)40 分の枠
Qwen3-4B-Thinking-2507-Q4_K_MClaude Code☑️☑️⏱️⏱️✅ 合格 869 秒
Qwen3-4B-Thinking-2507-Q4_K_MOpenCode⏱️⏱️⏱️❌ 不合格 1153 秒(書いて実行したが、55 と答えない)
NVIDIA-Nemotron-3-Nano-4B-Q4_K_MClaude Code⏱️⏱️⏱️❌ 不合格 909 秒(sum.js を作らない)
GLM-4.6V-Flash-Q4_K_MClaude Code❌⏱️⏱️⏱️⏱️ 時間切れ(40 分)
GLM-4.6V-Flash-Q4_K_MPi⏱️❌❌❌❌ 不合格 25 秒(sum.js を作らない)
Devstral-Small-2507-UD-Q4_K_XLClaude Code☑️⏱️✅✅☑️ 補欠合格 364 秒

これからの時間切れの決め方

GPUふつうのモデル名前に Thinking・Reasoning が入るモデル根拠
NVIDIA GPU10 分20 分合格はすべて 10 分以内(最長 577 秒)。Qwen3-4B-Thinking の Claude Code は 869 秒かかった
Intel GPU15 分30 分Intel だけで流した Claude Code の合格は最長 899 秒(12B-QAT)。これを超える組は、時間をかけても実際には使えない。Thinking・Reasoning は倍の 30 分

思考を切れない版や推論用の版は、--reasoning off でも長く考えるため、倍にする。名前に Thinking・Reasoning が入るのは、今回の 19 本では Qwen3-4B-Thinking-2507 と Ministral-3-14B-Reasoning-2512 の 2 本。

Intel GPU で流した結果

閉域網へ持っていく先の PC は Intel の内蔵 GPU なので、この PC の Intel Iris Xe(共有メモリ 16GB)だけで同じ問を流した(2026-10-07)。 llama.cpp は b11320 の Vulkan 版で、モデルは Intel だけに載せた(--device で Intel に限り、空きの 8 割に収まるものは -ngl 99 で全部載せる)。時間切れは 30 分。対象は NVIDIA GPU で 1 回でも 10 分以内に終わった 55 組で、1 組 1 回ずつ流した。

モデル大きさClaude CodePiOpenCode
Ministral-3-3B-Instruct-2512-Q4_K_M2.0 GB✅ 合格 560 秒❌ 不合格 書いたが実行・報告なし❌ 不合格 書いたが実行・報告なし
Qwen3-4B-Instruct-2507-Q4_K_M2.3 GB❌ 不合格 sum.js を作らない❌ 不合格 書いたが実行・報告なし❌ 不合格 sum.js を作らない
Qwen3-4B-Thinking-2507-Q4_K_M2.3 GB⏱️ 時間切れ☑️ 補欠合格 304 秒—
NVIDIA-Nemotron-3-Nano-4B-Q4_K_M2.6 GB—❌ 不合格 書いたが 55 が出ない❌ 不合格 sum.js を作らない
gemma-4-E2B-it-Q4_K_M3.2 GB☑️ 補欠合格 292 秒✅ 合格 17 秒✅ 合格 145 秒
Bonsai-27B-Q1_03.5 GB⏱️ 時間切れ✅ 合格 304 秒✅ 合格 1181 秒
gemma-4-E4B-it-Q4_K_M5.0 GB✅ 合格 331 秒✅ 合格 29 秒✅ 合格 173 秒
Qwen3.5-9B-Q4_K_M5.2 GB✅ 合格 421 秒✅ 合格 117 秒❌ 不合格 書いたが実行・報告なし
GLM-4.6V-Flash-Q4_K_M5.7 GB⏱️ 時間切れ❌ 不合格 sum.js を作らない✅ 合格 423 秒
gemma-4-12B-it-QAT-Q4_06.5 GB✅ 合格 899 秒✅ 合格 88 秒✅ 合格 437 秒
gemma-4-12B-it-Q4_K_M6.9 GB✅ 合格 826 秒✅ 合格 83 秒❌ 不合格 書いたが 55 が出ない
Ministral-3-14B-Reasoning-2512-Q4_K_M7.7 GB☑️ 補欠合格 860 秒❌ 不合格 sum.js を作らない❌ 不合格 sum.js を作らない
gpt-oss-20b-MXFP411.3 GB⏱️ 時間切れ❌ 不合格 sum.js を作らない(1247 秒)⏱️ 時間切れ
Devstral-Small-2507-UD-Q4_K_XL13.5 GB⏱️ 時間切れ❌ 不合格 sum.js を作らない✅ 合格 567 秒
Qwen3.6-35B-A3B-UD-Q3_K_XL15.7 GB起動できず起動できず起動できず
gemma-4-26B-A4B-it-UD-Q4_K_XL15.8 GB起動できず起動できず起動できず
GLM-4.7-Flash-UD-Q4_K_XL16.3 GB起動できず起動できず起動できず
Qwen3-Coder-30B-A3B-Instruct-UD-Q4_K_XL16.5 GB⏱️ 時間切れ⏱️ 時間切れ⏱️ 時間切れ
Qwen3-30B-A3B-Instruct-2507-UD-Q4_K_XL16.5 GB⏱️ 時間切れ⏱️ 時間切れ⏱️ 時間切れ

表は tools\50_run\sum-table.ps1 -Since 20261007-1200 -LlamaDir llama.cpp-b11320-vulkan の結果を大きさ順に並べた。流したのは tools\50_run\run-sum-matrix.ps1 -LlamaDir llama.cpp-b11320-vulkan -TimeoutSec 1800。— は NVIDIA GPU で 3 回とも ⏱️ だったため流していない組。「起動できず」は、Intel のメモリに載らず llama-server が起動しなかった組(failed to allocate compute pp buffers)。同じ大きさの Qwen3-Coder-30B・Qwen3-30B-A3B は起動できても 3 エージェントとも時間切れだったので、流し直していない。

エージェント✅ 合格☑️ 補欠合格❌ 不合格⏱️ 時間切れ起動できず
Claude Code(18 組)52173
Pi(19 組)71623
OpenCode(18 組)60633
2026-10-04 に流した前回の結果は捨てた。 この PC では Vulkan 版から Intel と NVIDIA の両方が見え、前回は NVIDIA にも一部が載っていた(12B-QAT で 49 層中 12 層が NVIDIA、残りは CPU)。Intel だけの速さにならないため、この表で置き換えた。 Intel に全部載せると、12B-QAT のプロンプトの処理は 68.8 tok/s で CPU 版(14.8 tok/s)の 4.6 倍、生成は 3.4 tok/s で CPU 版(3.8 tok/s)とほぼ同じ。

Aider に別の指示で実行させた結果

Aider は sum.js を書くだけで実行しなかったため、書かせたあとに別の指示を渡せば実行するかを試した(2026-10-02、NVIDIA GPU)。 モデルは gemma-4-E4B。1 回目は sum の問をそのまま渡し、2 回目は同じ作業フォルダで Aider を起動し直し、--file sum.js で sum.js を会話に載せて次の指示を渡した。指示ごとに 3 回流した。

2 回目の指示結果(3 回)Aider の答え
node sum を実行して、表示された結果を教えて☑️☑️☑️3 回とも、コードを読んで「表示される結果は 55」と答えた。node は実行していない(13〜14 秒)
sum.js をテストして❌❌❌3 回とも、どんなテストをしたいのかを聞き返して終わった(16〜20 秒)

流したのは tools\50_run\test-aider-followup.ps1。☑️ は 55 と答えたが実行の跡が無いもの、❌ は実行も 55 の答えも無いもの。

CPU で流した結果

GPU が使えない場合に備え、この PC の CPU だけで同じ問を流した(2026-10-04〜10-05)。 llama.cpp は b11320 の CPU 版、時間切れは 15 分(名前に Thinking・Reasoning が入るモデルは 30 分)。対象は NVIDIA GPU で 3 分以内に終わったことがある 50 組で、1 組 1 回ずつ流した。

モデル大きさClaude CodePiOpenCode
Ministral-3-3B-Instruct-2512-Q4_K_M2.0 GB⏱️ 時間切れ✅ 合格 110 秒⏱️ 時間切れ
Qwen3-4B-Instruct-2507-Q4_K_M2.3 GB⏱️ 時間切れ❌ 不合格 書いたが実行・報告なし⏱️ 時間切れ
Qwen3-4B-Thinking-2507-Q4_K_M2.3 GB—☑️ 補欠合格 377 秒—
NVIDIA-Nemotron-3-Nano-4B-Q4_K_M2.6 GB—❌ 不合格 書いたが 55 が出ない—
gemma-4-E2B-it-Q4_K_M3.2 GB✅ 合格 705 秒✅ 合格 35 秒❌ 不合格 書いたが 55 が出ない
Bonsai-27B-Q1_03.5 GB⏱️ 時間切れ✅ 合格 598 秒⏱️ 時間切れ
gemma-4-E4B-it-Q4_K_M5.0 GB✅ 合格 870 秒✅ 合格 48 秒✅ 合格 374 秒
Qwen3.5-9B-Q4_K_M5.2 GB⏱️ 時間切れ✅ 合格 84 秒✅ 合格 683 秒
GLM-4.6V-Flash-Q4_K_M5.7 GB⏱️ 時間切れ❌ 不合格 sum.js を作らない⏱️ 時間切れ
gemma-4-12B-it-QAT-Q4_06.5 GB⏱️ 時間切れ✅ 合格 147 秒⏱️ 時間切れ
gemma-4-12B-it-Q4_K_M6.9 GB⏱️ 時間切れ✅ 合格 119 秒⏱️ 時間切れ
Ministral-3-14B-Reasoning-2512-Q4_K_M7.7 GB—☑️ 補欠合格 162 秒⏱️ 時間切れ
gpt-oss-20b-MXFP411.3 GB⏱️ 時間切れ☑️ 補欠合格 92 秒⏱️ 時間切れ
Devstral-Small-2507-UD-Q4_K_XL13.5 GB—❌ 不合格 sum.js を作らない—
Qwen3.6-35B-A3B-UD-Q3_K_XL15.7 GB⏱️ 時間切れ✅ 合格 99 秒✅ 合格 686 秒
gemma-4-26B-A4B-it-UD-Q4_K_XL15.8 GB⏱️ 時間切れ✅ 合格 109 秒✅ 合格 767 秒
GLM-4.7-Flash-UD-Q4_K_XL16.3 GB⏱️ 時間切れ✅ 合格 121 秒⏱️ 時間切れ
Qwen3-Coder-30B-A3B-Instruct-UD-Q4_K_XL16.5 GB⏱️ 時間切れ❌ 不合格 書いたが実行・報告なし⏱️ 時間切れ
Qwen3-30B-A3B-Instruct-2507-UD-Q4_K_XL16.5 GB⏱️ 時間切れ☑️ 補欠合格 104 秒⏱️ 時間切れ

表は tools\50_run\sum-table.ps1 -Since 20261004-1400 -LlamaDir llama.cpp-b11320-cpu の結果を大きさ順に並べた。流したのは tools\50_run\run-sum-matrix.ps1 -LlamaDir llama.cpp-b11320-cpu(時間切れは既定の自動)。— は NVIDIA GPU で 3 分以内に終わったことが無いため流していない組。

エージェント✅ 合格☑️ 補欠合格❌ 不合格⏱️ 時間切れ
Claude Code(15 組)20013
Pi(19 組)10450
OpenCode(16 組)40111

調査結果のまとめ

NVIDIA GPU・Intel GPU・CPU で流した結果をまとめる。

環境向くエージェント勧めるモデル根拠
NVIDIA GPUClaude Code・Pigemma-4-E4B・gemma-4-26B-A4Bこの 2 本は 3 つのエージェントで 4 回とも ✅。通る本数は Claude Code、速さは Pi が上
Intel GPUPigemma-4-E4B・gemma-4-12B-QATこの 2 本は 3 つのエージェントとも ✅。Pi なら 2 分以内(E4B 29 秒、12B-QAT 88 秒)。Claude Code は 5〜15 分かかる。11GB を超えるモデルは使えない
CPUPigemma-4-E4B・gemma-4-E2B・Qwen3.5-9BPi は 1 分前後で通る。Claude Code・OpenCode はほとんど時間切れ

効いた設定とその理由

最初の試験(共通ルールを読ませた状態)では、読み・書きの両方に合格したモデルは 1 本も無かった。 次の 4 つを変えて、第 2 章の結果になった。引数と環境変数の中身は使う・試す手順にある。

変えたこと効果
共通ルールを読ませない(空のホーム)最初に送る量が約 60,000 → 17,000〜23,600 トークン(共通ルールだけで 41,320 トークンあった)。1 往復が数分から数十秒になり、ツールを呼ぶようになった
思考を切る(--reasoning off)思考を長く出して時間切れになるのを防ぐ
チャットテンプレートの差し替えClaude Code は会話の途中にも system を送る。それを例外にして 500 エラーを返していた 4 本(Ministral 2 本・Bonsai・Qwen3.5-9B)が通るようになった
ホームと作業フォルダをプロジェクトの外に置くモデルがプロジェクトの場所を推測し、本物のファイルに読み書きしにいくのを防ぐ。Claude Code は指示文にメモリの置き場(ホームの下)を書くため、ホームがプロジェクトの中にあると場所が知られる

未確認のこと