Local models
Chạy local hoàn toàn khả thi, nhưng OpenClaw yêu cầu context lớn + khả năng phòng thủ mạnh chống prompt injection. Card nhỏ sẽ cắt ngắn context và làm giảm tính bảo mật. Mục tiêu cao: ≥2 Mac Studios cấu hình tối đa hoặc GPU rig tương đương (~$30k+). Một GPU 24 GB chỉ hoạt động tốt với các prompt nhẹ và độ trễ cao hơn. Dùng model variant lớn nhất / full-size mà các bạn có thể chạy; các checkpoint bị quantize mạnh hoặc “small” sẽ tăng nguy cơ prompt-injection (xem Security).
Khuyên dùng: LM Studio + MiniMax M2.1 (Responses API, full-size)
Stack local tốt nhất hiện tại. Load MiniMax M2.1 trong LM Studio, bật local server (mặc định http://127.0.0.1:1234), và dùng Responses API để tách reasoning ra khỏi text cuối cùng.
{
agents: {
defaults: {
model: { primary: "lmstudio/minimax-m2.1-gs32" },
models: {
"anthropic/claude-opus-4-5": { alias: "Opus" },
"lmstudio/minimax-m2.1-gs32": { alias: "Minimax" },
},
},
},
models: {
mode: "merge",
providers: {
lmstudio: {
baseUrl: "http://127.0.0.1:1234/v1",
apiKey: "lmstudio",
api: "openai-responses",
models: [
{
id: "minimax-m2.1-gs32",
name: "MiniMax M2.1 GS32",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 196608,
maxTokens: 8192,
},
],
},
},
},
}
Checklist setup
- Cài đặt LM Studio: https://lmstudio.ai
- Trong LM Studio, tải MiniMax M2.1 build lớn nhất có sẵn (tránh các variant “small”/bị quantize nặng), khởi động server, xác nhận
http://127.0.0.1:1234/v1/modelscó list nó ra. - Giữ model luôn được load; cold-load sẽ tăng độ trễ khởi động.
- Điều chỉnh
contextWindow/maxTokensnếu LM Studio build của các bạn khác. - Với WhatsApp, dùng Responses API để chỉ gửi text cuối cùng.
Vẫn giữ các hosted model được config ngay cả khi chạy local; dùng models.mode: "merge" để các fallback vẫn sẵn sàng.
Config hybrid: hosted primary, local fallback
{
agents: {
defaults: {
model: {
primary: "anthropic/claude-sonnet-4-5",
fallbacks: ["lmstudio/minimax-m2.1-gs32", "anthropic/claude-opus-4-5"],
},
models: {
"anthropic/claude-sonnet-4-5": { alias: "Sonnet" },
"lmstudio/minimax-m2.1-gs32": { alias: "MiniMax Local" },
"anthropic/claude-opus-4-5": { alias: "Opus" },
},
},
},
models: {
mode: "merge",
providers: {
lmstudio: {
baseUrl: "http://127.0.0.1:1234/v1",
apiKey: "lmstudio",
api: "openai-responses",
models: [
{
id: "minimax-m2.1-gs32",
name: "MiniMax M2.1 GS32",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 196608,
maxTokens: 8192,
},
],
},
},
},
}
Local-first với hosted safety net
Đổi thứ tự primary và fallback; giữ nguyên providers block và models.mode: "merge" để các bạn có thể fallback về Sonnet hoặc Opus khi local box bị down.
Regional hosting / data routing
- Các hosted MiniMax/Kimi/GLM variant cũng có trên OpenRouter với các endpoint được pin theo khu vực (ví dụ: US-hosted). Chọn regional variant ở đó để giữ traffic trong khu vực pháp lý mà các bạn chọn, đồng thời vẫn dùng
models.mode: "merge"cho các Anthropic/OpenAI fallback. - Local-only vẫn là con đường bảo mật mạnh nhất; hosted regional routing là giải pháp trung gian khi các bạn cần các tính năng của provider nhưng vẫn muốn kiểm soát luồng dữ liệu.
Các OpenAI-compatible local proxy khác
vLLM, LiteLLM, OAI-proxy, hoặc custom gateway đều hoạt động nếu chúng expose một OpenAI-style /v1 endpoint. Thay thế provider block ở trên bằng endpoint và model ID của các bạn:
{
models: {
mode: "merge",
providers: {
local: {
baseUrl: "http://127.0.0.1:8000/v1",
apiKey: "sk-local",
api: "openai-responses",
models: [
{
id: "my-local-model",
name: "Local Model",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 120000,
maxTokens: 8192,
},
],
},
},
},
}
Giữ models.mode: "merge" để các hosted model vẫn sẵn sàng làm fallback.
Troubleshooting
- Gateway có thể reach được proxy không?
curl http://127.0.0.1:1234/v1/models. - LM Studio model bị unload? Reload lại; cold start là nguyên nhân phổ biến gây “treo”.
- Lỗi context? Giảm
contextWindowhoặc tăng giới hạn server của các bạn. - Bảo mật: local model bỏ qua các filter phía provider; giữ Agent hẹp và bật compaction để giới hạn phạm vi tấn công prompt injection.