OpenCL のために Mac Mini を購入しました。素晴らしい。
最近、Anthropic は OpenClaw ユーザーをトークンごとの支払い API に誘導しています。11 回限りのハードウェア購入が、(多額の) 継続的な出費に変わりました。2。 OpenAIを利用したとしても、毎月かなりの金額を支払わなければなりません。
💵💵 ローカル モデルを実行すると、OpenClaw エージェントの月額コストが完全に排除されます。 💵💵
ただし、すべてをインストールして構成することは、特にローカル LLM を初めて使用する場合には混乱する可能性があります。
この記事では、エージェントを無料で起動できるローカル LLM を Mac Mini に (最も簡単な方法で) インストールする方法を説明します。
初心者でも安心してご利用いただけます。
🤨 「地元の LLM はあまりうまくやっていないと聞きましたが、本当ですか?」
ローカルLLM (正しくインストールされている場合) が実行されます ほとんど区別がつかない のために 電子メール、カレンダー管理、リマインダー、ホーム IoT オートメーション、基本的なインターネット調査などの機能 (実際に OpenClaw で行うこと)。
ソフトウェア エンジニアリングに OpenGL を使用するなど、より高度な作業を行う必要がある場合は、フォールバック モデルのセットアップ方法を説明するリンクが以下にあります。
⚠️注意: このガイドは完全な OpenCL チュートリアルではありません。
その目的は、ローカル LLM をできるだけ早く立ち上げてエージェントとともに実行できるようにすることです。
ハードウェア
この記事は、次の仕様の Mac Mini でテストされました。
| OS | macOS タホ |
| バージョン | 26.3.1 |
| プロセッサー | 平方メートル |
| コーナー | 8 |
| 内蔵メモリ | 24GB |
Mac mini の購入を検討している場合は、少なくとも 24GB の RAM を搭載した M2+ プロセッサをお勧めします。 16GB でも問題はありませんが、かなり難しくなり、より大きな参照を使用するとエラーが発生する可能性があります。
物事をセットアップする
まず、公式ガイドを使用して OpenClaw をインストールします。すでにこれを行っている場合は、この手順をスキップしてください。
1.llama.cppをインストールする
するつもりだった オルマの使用はやめてください (推奨されるローカルプロバイダー)、および ラマ.cppを選択します。 llama.cpp で量子化モデルを使用すると、 推定を 70% 高速化できます
ソースから llama.cpp をビルドする必要があります 金属製の旗が取り付けられています そして クダオフ。 Mac 上でモデルをフルスピードで実行するために必要な最適化の一部を処理します。以下の手順に従ってください。
1️⃣ まず、ホーム ディレクトリから、brew を使用していくつかの前提条件をインストールします。
# paste this into your terminal
$ brew install cmake curl
2️⃣ 次に、適切なフラグを使用して llama.cpp を作成します
# Clone llama.cpp
git clone https://github.com/ggml-org/llama.cpp
# Configure build with Metal acceleration
cmake llama.cpp -B llama.cpp/build \
-DBUILD_SHARED_LIBS=OFF \
-DGGML_METAL=ON \
-DGGML_CUDA=OFF
# Build
cmake --build llama.cpp/build \
--config Release \
-j$(sysctl -n hw.ncpu) \
--clean-first \
--target llama-cli llama-mtmd-cli llama-server llama-gguf-split
これで、llama.cpp が使用できるようになりました。
2. ローカル LLM をダウンロードする
前述したように、ローカル モデルから優れたパフォーマンスを得る鍵は次のとおりです。 定量化。
量子化により、より大型でより高性能なモデルを使用できるようになり、より小型のハードウェアに適合するようにインテリジェントに「圧縮」されます。これにより、量子化モデルはフルサイズのソース モデルのパフォーマンスのほとんどを保持できます。
最大量の内蔵メモリ (80GB+ VRAM) を搭載した大規模な GPU または Mac を使用しない限り 量を決める必要がある
OpenClave のドキュメントに盲目的に従うと、量子化モデルを使用しようとするときに混乱してイライラすることになります。
エージェントを使用して定量化されたモデルを操作する方法を明確に説明するガイドはありません。
下に1つあります テスト エージェントに役立つレシピ。
モデルオプション: Kwen 3.5-9B
ここでは QUEN 3.5 (9b パラメーター バージョン) を使用しています。
2026年6月時点ではGemma 4-12Bを抜いて現地トップモデルとなっている。 16GB または 24GB の両方の Mac に適合し、合計 6 ~ 8GB の RAM が必要です。ユーザーからも OpenClaw が高く評価されています。
また、エージェントには長い参照が必要であるため、量子化を行っても、より大きな 27B バージョンを実行できなくなることにも注意してください。
1️⃣ モデルをダウンロードしましょう
# download model
curl -L -o models/Qwen3.5-9B-UD-Q4_K_KL.gguf \
"https://huggingface.co/unsloth/Qwen3.5-9B-MTP-GGUF/resolve/main/Qwen3.5-9B-UD-Q4_K_XL.gguf?download=true"
2️⃣ テンプレートをダウンロードし、「テンプレート」に保存します。
mkdir templates && \
curl -o templates/qwen35.jinja \
"https://huggingface.co/froggeric/Qwen-Fixed-Chat-Templates/resolve/main/chat_template.jinja"
重要なのは、OpenClaw 用のエージェント互換テンプレートを使用する必要があることです。 このステップがなければ何も機能しません。
3. Llamaサーバーを起動します
Llama サーバーはバックエンド API として機能します。 OpenClaw は、OpenAI または Anthropic から API を直接呼び出す代わりに、この Web サービスを使用します。
すでに llama-server をインストールし、モデルをダウンロードしました。簡単なテストを実行してみましょう。
1️⃣ 簡単なテストを実行する
./llama.cpp/llama-server \
-m models/Qwen3.5-9B-UD-Q4_K_XL.gguf \
--chat-template-file templates/qwen35.jinja \
--temp 0.7 \
--top-p 0.9 \
--top-k 20 \
-c 64000 \
-ngl 20 \
--host 127.0.0.1 \
--port 8080
次のようなものが表示されるはずです (エラーはありません)
srv llama_server: model loaded
llama_server: server is listening on http://127.0.0.1:8080
update_slots: all slots are idle
2️⃣ さて、書いてみましょう launchd デイモン したがって、ローカル LLM サーバーは自動的に起動し、再起動後も利用可能な状態が維持されます。 Linuxに詳しい方であれば、 launchd 基本的には systemd マコス用
次の名前を付けて保存します /Library/LaunchDaemons/com.openclaw.llama-server.plist。を使用する必要があります sudo このために。
に拡張します plist ファイル
❗必ず交換してください YOUR_USERNAME xml に実際のユーザー名を含めます。
Label
com.openclaw.llama-server
UserName
YOUR_USERNAME
ProgramArguments
/Users/YOUR_USERNAME/llama.cpp/llama-server
-m
/Users/YOUR_USERNAME/models/Qwen3.5-9B-UD-Q4_K_XL.gguf
--chat-template-file
/Users/YOUR_USERNAME/templates/qwen35.jinja
--temp
0.7
--top-p
0.9
--top-k
20
-c
64000
-ngl
20
--host
127.0.0.1
--port
8080
WorkingDirectory
/Users/YOUR_USERNAME
RunAtLoad
KeepAlive
StandardOutPath
/tmp/llama-server.log
StandardErrorPath
/tmp/llama-server.err
では、有効にしてみましょう。
sudo chown root:wheel /Library/LaunchDaemons/com.openclaw.llama-server.plist && \
sudo chmod 644 /Library/LaunchDaemons/com.openclaw.llama-server.plist && \
sudo launchctl bootstrap system /Library/LaunchDaemons/com.openclaw.llama-server.plist
ログ ファイルをチェックして、サービスが適切に実行されているかどうかを確認できます。
tail -f /tmp/llama-server.err
これで、両方のローカル LLM がロードされ、デーモンとして正常に実行されます。あとは OpenClaw を再設定するだけです。
4. ローカル モデルを使用するように OpenClaw を再構成する
次に、このローカル モデルを OpenClaw 構成に追加して、ゲートウェイで使用できるようにする必要があります。
1️⃣ .openclaw/openclaw.json の「model」ブロックに追加
{
"models": {
"providers": {
"local": {
"baseUrl": "http://127.0.0.1:8080/v1",
"apiKey": "sk-local",
"api": "openai-completions",
"models": [
{
"id": "qwen3-9b",
"name": "Qwen3.5 9B Local",
"contextWindow": 64000,
"maxTokens": 8192
}
]
}
/* REMOVE THIS COMMENT */
/* you may add additional providers, like anthropic here */
}
}
}
コメントの設定:
contextWindowそしてmaxTokens特定のワークフローに合わせて調整が必要な場合があります
エージェントのデフォルト モデルを設定する必要もあります
"agents": {
"defaults": {
"model": {
"primary": "local/qwen3-9b"
},
"models": {
"local/qwen3-9b": {}
}
}
構成が正確であることを確認することも役立ちます。以下のコマンドを実行して構文を確認してください。
openclaw config validate
2️⃣ ゲートウェイを再起動し、ローカル モデルが利用可能になったことを確認します
openclaw gateway restart
3️⃣ OpenClaw がローカル モデルを適切に登録したかどうかを確認するテスト
openclaw models list --provider local
単純な推測コールを実行することもできます
openclaw infer model run \
--model local/qwen3-9b \
--prompt "Reply with exactly: pong" \
--json
代わりに JSON オブジェクトを受け取る必要があります。 重要: 応答に漏れたタグがないことを確認してください。これはすべきではありませんが、安全のために二重に重要です
{
"ok": true,
"capability": "model.run",
"transport": "local",
"provider": "local",
"model": "qwen3-9b",
"attempts": [],
"outputs": [
{
"text": "pong",
"mediaUrl": null
}
]
}
すべての配管機能が正しいことを確認しました。確実に(またはこれが初めてのエージェントの場合)、サンプル スキルをセットアップして、モデルが正しく推論し、期待どおりにツール呼び出しを行うことを確認しましょう。
5. テストスキルを使用して機能を検証する
テスト「python-calc」スキルを作成しましょう。これにより、ローカル モデルが引数と出力ツールを正しく呼び出せるかどうかをテストできます。
1️⃣ プレイしてスキルを生成します。これにより、このツールがすべての OpenCL エージェントに追加されます。
mkdir -p ~/.openclaw/workspace/skills/python-calc
cat << 'EOF' > ~/.openclaw/workspace/skills/python-calc/SKILL.md
---
name: python-calc
description: A tool that evaluates mathematical expressions by executing a Python one-liner.
version: 1.0.0
---
## Instructions
1. Extract the exact mathematical expression the user wants to calculate.
2. Use your built-in shell tool to run this exact command, replacing `` with the expression: `python3 -c "print()"`
3. Wait for the shell tool to return the stdout output.
4. You MUST generate a final conversational response to the user containing the exact numeric result returned by the script.
EOF
再度、ゲートウェイを再起動します。
2️⃣ ここで、サンプル エージェント呼び出しを実行して、ツールの出力が正しく行われることを確認できます。
openclaw agent --local --agent main --verbose on --thinking high --message \
"Use the python-calc skill to calculate 8664 multiplied by 222.
Do not use skill_workshop. Tell me the final answer."
そして、1 ~ 2 秒後、すべてが正しく動作すると、次のような結果になるはずです。
The final answer is 1,923,408.
素晴らしい!
現実的には、1 秒あたり最大 20 ~ 70 トークンの速度が見られます*。これはクラウドの速度 (130 TPS+) ではありませんが、最小限のハードウェアを備えた OpenClave エージェントとしてはかなり妥当な速度です。
マインドセットは高く設定されているので、多少時間がかかっても問題ないことを覚えておいてください。
openclaw がモデルを使用しているかどうかが不明な場合は、別のターミナル ウィンドウで llama-server logs を実行してみてください。
tail -f /tmp/llama-server.err
*実際の速度は異なる場合があります
まとめる
ローカル LLM を実行する場合、特にカスタム テンプレートや量子化を使用する場合、非常にイライラすることがあります。友人の Mac で初めてセットアップするのに 2 日かかりました。インスピレーションを与えてくれた Jacob W に感謝します。
それでおしまい!これでかなりの節約になると思います
もしそうなった場合、または私があなたの頭痛を軽減した場合は、ここでコーヒーを買ってきてもいいです。
☕乾杯!
OpenCL の「禁止」について議論する Boris Cherny の 1 ツイート
2 人のユーザーが API 料金に月額 420 ドルを費やしています
OpenClaw での複数のプロバイダーの使用








.jpeg?width=1200&auto=webp&crop=3%3A2)
Leave a Reply