openclaw onboard.
Yalnızca seçilen bir model ihtiyaç duyduğunda başlatılması gereken yerel sunucular için Yerel model hizmetleri bölümüne bakın.
Asgari donanım
Rahat bir ajan döngüsü için 2 veya daha fazla tam donanımlı Mac Studio ya da eşdeğer bir GPU sistemi (~$30k+) hedefleyin. Tek bir 24 GB GPU, yalnızca daha hafif istemleri daha yüksek gecikmeyle işleyebilir. Her zaman barındırabileceğiniz en büyük / tam boyutlu varyantı çalıştırın - küçük veya yoğun biçimde nicemlenmiş denetim noktaları istem enjeksiyonu riskini artırır (bkz. Güvenlik).Arka uç seçme
Arka uç desteklediğinde
api: "openai-responses" kullanın (LM Studio destekler). Aksi takdirde api: "openai-completions" kullanın. baseUrl içeren özel bir sağlayıcıda api belirtilmezse OpenClaw varsayılan olarak openai-completions kullanır.
LM Studio + büyük yerel model (Responses API)
Bu, şu anda en iyi yerel yığındır. LM Studio’da büyük bir model (tam boyutlu bir Qwen, DeepSeek veya Llama derlemesi) yükleyin, yerel sunucuyu etkinleştirin (varsayılanhttp://127.0.0.1:1234) ve akıl yürütmeyi nihai metinden ayrı tutmak için Responses API’yi kullanın.
- LM Studio’yu yükleyin: https://lmstudio.ai
- Mevcut en büyük model derlemesini indirin (“small”/yoğun biçimde nicemlenmiş varyantlardan kaçının), sunucuyu başlatın ve
http://127.0.0.1:1234/v1/modelskomutunun modeli listelediğini doğrulayın. my-local-modeldeğerini LM Studio’da gösterilen gerçek model kimliğiyle değiştirin.- Modeli yüklü tutun; soğuk yükleme, başlangıç gecikmesi ekler.
- LM Studio derlemeniz farklıysa
contextWindow/maxTokensdeğerlerini ayarlayın. - WhatsApp için yalnızca nihai metnin gönderilmesi amacıyla Responses API’yi kullanmaya devam edin.
- Barındırılan modellerin yedek olarak kullanılabilir kalması için
models.mode: "merge"değerini koruyun.
Hibrit yapılandırma: birincil barındırılan model, yerel yedek
primary/fallbacks sırasını değiştirin ve aynı providers bloğunu ve models.mode: "merge" değerini koruyun.
Bölgesel barındırma / veri yönlendirme
Barındırılan MiniMax/Kimi/GLM varyantları, bölgeye sabitlenmiş uç noktalarla (örneğin ABD’de barındırılan) OpenRouter üzerinde de bulunur. Anthropic/OpenAI yedekleri içinmodels.mode: "merge" değerini korurken trafiği seçtiğiniz yargı alanında tutmak için bölgesel varyantı seçin. Yalnızca yerel kullanım hâlâ en güçlü gizlilik yoludur; sağlayıcı özelliklerine ihtiyaç duyduğunuz ancak veri akışı üzerinde denetim istediğiniz durumlarda barındırılan bölgesel yönlendirme orta yolu sunar.
Diğer OpenAI uyumlu yerel proxy’ler
MLX (mlx_lm.server), vLLM, SGLang, LiteLLM, OAI-proxy veya herhangi bir özel Gateway, OpenAI tarzı bir /v1/chat/completions uç noktası sunduğu sürece çalışır. Arka uç /v1/responses desteğini açıkça belgelemediği sürece openai-completions kullanın.
baseUrl kökenine güvenir. Meta veri/bağlantı-yerel kökenleri ne olursa olsun her zaman engellenir. Diğer özel kökenlere yapılan istekler yine models.providers.<id>.request.allowPrivateNetwork: true gerektirir; tam köken güvenini devre dışı bırakmak için güven bayrağını false olarak ayarlayın.
models.providers.<id>.models[].id sağlayıcıya özeldir - sağlayıcı önekini eklemeyin. mlx_lm.server --model mlx-community/Qwen3-30B-A3B-6bit ile başlatılan bir MLX sunucusu için:
models.providers.mlx.models[].id: "mlx-community/Qwen3-30B-A3B-6bit"agents.defaults.model.primary: "mlx/mlx-community/Qwen3-30B-A3B-6bit"
input: ["text", "image"] ayarlayın. Etkileşimli özel sağlayıcı başlangıç kurulumu, yaygın görüntü modeli kimliklerini çıkarır ve yalnızca bilinmeyen adlar hakkında soru sorar; etkileşimsiz başlangıç kurulumu da aynı çıkarımı kullanır ve bunu geçersiz kılmak için --custom-image-input / --custom-text-input seçeneklerini sunar.
agents.defaults.timeoutSeconds değerini artırmadan önce yavaş yerel/uzak model sunucuları için models.providers.<id>.timeoutSeconds kullanın. Sağlayıcı zaman aşımı yalnızca model HTTP istekleri için bağlantıyı, üstbilgileri, gövde akışını ve korumalı getirmenin toplam iptal süresini kapsar - ajan/çalıştırma zaman aşımı daha düşükse onu da artırın; çünkü sağlayıcı zaman aşımı tüm çalıştırmanın süresini uzatamaz.
Özel OpenAI uyumlu sağlayıcılarda,
baseUrl geri döngüye, özel bir LAN’a, .local değerine veya yalın bir ana makine adına çözümlendiğinde apiKey: "ollama-local" gibi gizli olmayan bir yerel işaretçi kabul edilir - OpenClaw bunu eksik anahtar olarak bildirmek yerine geçerli bir yerel kimlik bilgisi olarak değerlendirir. Genel bir ana makine adını kabul eden tüm sağlayıcılarda gerçek bir değer kullanın./v1 arka uçlarına ilişkin davranış notları:
- OpenClaw bunları yerel OpenAI uç noktaları olarak değil, proxy tarzı OpenAI uyumlu rotalar olarak değerlendirir.
- Yalnızca yerel OpenAI’ye özgü istek biçimlendirmesi uygulanmaz:
service_tieryoktur, Responsesstoreyoktur, OpenAI akıl yürütme uyumluluğu için yük biçimlendirmesi yoktur, istem önbelleği ipuçları yoktur. - Gizli OpenClaw ilişkilendirme üstbilgileri (
originator,version,User-Agent) özel proxy URL’lerine eklenmez.
-
Yalnızca dize içeriği: bazı sunucular yapılandırılmış içerik parçası dizilerini değil, yalnızca dize biçimindeki
messages[].contentdeğerini kabul eder.models.providers.<provider>.models[].compat.requiresStringContent: trueayarlayın. -
Katı ileti anahtarları: sunucu
role/contentdışında anahtarlar içeren ileti girdilerini reddediyorsacompat.strictMessageKeys: trueayarlayın. -
Köşeli parantezli araç metni: bazı yerel modeller,
[tool_name]sonrasında JSON ve ardından[END_TOOL_REQUEST]gibi bağımsız köşeli parantezli araç isteklerini metin olarak üretir. OpenClaw bunları yalnızca ad, ilgili tur için kayıtlı bir araçla tam olarak eşleştiğinde gerçek araç çağrılarına dönüştürür; aksi takdirde gizli, desteklenmeyen metin olarak kalır. - Yapılandırılmamış, araç çağrısına benzeyen metin: bir model araç çağrısına benzeyen ancak yapılandırılmış bir çağrı olmayan JSON/XML/ReAct tarzı metin üretirse OpenClaw bunu metin olarak bırakır ve çalıştırma kimliği, sağlayıcı/model, algılanan kalıp ve mevcut olduğunda araç adıyla birlikte bir uyarı kaydeder. Bu, tamamlanmış bir araç çalıştırması değil, sağlayıcı/model uyumsuzluğudur.
-
Araç kullanımını zorlama: araçlar asistan metni olarak görünüyorsa (ham JSON/XML/ReAct veya boş bir
tool_callsdizisi), önce sunucunun sohbet şablonunun/ayrıştırıcısının araç çağrılarını desteklediğini doğrulayın. Ayrıştırıcı yalnızca araç kullanımı zorlandığında çalışıyorsatool_choice: "auto"varsayılan proxy değerini model bazında geçersiz kılın:Bunu yalnızca her normal turun bir araç çağırması gereken durumlarda kullanın.local/my-local-modeldeğeriniopenclaw models listiçindeki tam referansla değiştirin veya CLI üzerinden ayarlayın: -
Ek akıl yürütme düzeyleri: özel bir OpenAI uyumlu model, yerleşik profilin ötesindeki OpenAI akıl yürütme düzeylerini kabul ediyorsa bunları modelin uyumluluk bloğunda bildirin.
"xhigh"eklemek, bu model referansı için bunu/think xhigh, oturum seçiciler, Gateway doğrulaması vellm-taskdoğrulamasında kullanılabilir hâle getirir:
Daha küçük veya daha katı arka uçlar
Model sorunsuz yükleniyor ancak tam ajan turları hatalı davranıyorsa yukarıdan aşağıya ilerleyin: önce aktarımı doğrulayın, ardından yüzeyi daraltın.-
Yerel modelin yanıt verdiğini doğrulayın - araç ve ajan bağlamı olmadan:
-
Gateway yönlendirmesini doğrulayın - yalnızca istemi gönderir; transkripti, AGENTS önyüklemesini, bağlam motoru derlemesini, araçları ve paketlenmiş MCP sunucularını atlar ancak yine de Gateway yönlendirmesini, kimlik doğrulamayı ve sağlayıcı seçimini çalıştırır:
-
Her iki yoklama da başarılı olduğu hâlde gerçek ajan turları hatalı biçimlendirilmiş araç çağrıları veya aşırı büyük istemler nedeniyle başarısız oluyorsa yalın modu deneyin:
agents.defaults.experimental.localModelLean: truedeğerini ayarlayın. Açıkça gerekli olmadıkları sürece ağır tarayıcı, cron, mesaj, medya oluşturma, ses ve PDF araçlarını kaldırır; daha büyük araç kataloglarını varsayılan olarak yapılandırılmış Tool Search denetimlerinin arkasına alırkenexecöğesini doğrudan görünür tutar. Ayrıntılar ve etkin olduğunu doğrulama yöntemi için Deneysel Özellikler -> Yerel model yalın modu bölümüne bakın. -
Son çare olarak, ilgili model için
models.providers.<provider>.models[].compat.supportsTools: falsedeğerini ayarlayarak araçları tamamen devre dışı bırakın - ajan bundan sonra araç çağrıları olmadan çalışır. -
Bunun ötesinde darboğaz yukarı akıştadır. Arka uç, yalın mod ve
supportsTools: falsesonrasında hâlâ yalnızca daha büyük OpenClaw çalıştırmalarında başarısız oluyorsa kalan sorun genellikle OpenClaw’ın aktarım katmanı değil; modelin veya sunucunun kendisidir: bağlam penceresi, GPU belleği, kv-cache tahliyesi veya bir arka uç hatası.
Sorun giderme
- Gateway proxy’ye ulaşamıyor mu?
curl http://127.0.0.1:1234/v1/models. - LM Studio modeli yüklenmemiş mi? Yeniden yükleyin; soğuk başlatma, yaygın bir “takılma” nedenidir.
- Yerel sunucu
terminated,ECONNRESETdiyor veya akışı turun ortasında kapatıyor mu? OpenClaw, tanılamalara düşük kardinaliteli birmodel.call.error.failureKindile OpenClaw işleminin RSS/heap anlık görüntüsünü kaydeder. LM Studio/Ollama bellek baskısı için model sunucusunun sonlandırılıp sonlandırılmadığını doğrulamak üzere bu zaman damgasını sunucu günlüğüyle veya bir macOS çökme/jetsam günlüğüyle eşleştirin. - Bağlam hataları mı var? OpenClaw, bağlam penceresi ön kontrol eşiklerini algılanan model penceresinden (veya
agents.defaults.contextTokensbunu düşürüyorsa sınırlandırılmış pencereden) türetir; %20’nin altında 8k alt sınırıyla uyarır ve %10’un altında 4k alt sınırıyla kesin olarak engeller (aşırı büyük model meta verilerinin geçerli bir kullanıcı sınırını reddetmemesi için etkin bağlam penceresiyle sınırlandırılır).contextWindowdeğerini düşürün veya sunucu/model bağlam sınırını yükseltin. messages[].content ... expected a string? İlgili model girdisinecompat.requiresStringContent: trueekleyin.validation.keysveya “mesaj girdileri yalnızcarolevecontentdeğerlerine izin veriyor” mu? İlgili model girdisinecompat.strictMessageKeys: trueekleyin.- Doğrudan
/v1/chat/completionsçağrıları çalışıyor ancakopenclaw infer model run --localGemma veya başka bir yerel modelde başarısız mı oluyor? Önce sağlayıcı URL’sini, model referansını, kimlik doğrulama işaretçisini ve sunucu günlüklerini kontrol edin;model runajan araçlarını tamamen atlar.model runbaşarılı oluyor ancak daha büyük ajan turları başarısız oluyorsa araç yüzeyinilocalModelLeanveyacompat.supportsTools: falseile azaltın. - Araç çağrıları ham JSON/XML/ReAct metni olarak mı görünüyor veya sağlayıcı boş bir
tool_callsdizisi mi döndürüyor? Asistan metnini körlemesine araç yürütmeye dönüştüren bir proxy eklemeyin; önce sunucunun sohbet şablonunu/ayrıştırıcısını düzeltin. Model yalnızca araç kullanımı zorlandığında çalışıyorsa yukarıdakiparams.extra_body.tool_choice: "required"geçersiz kılmasını ekleyin ve bu model girdisini yalnızca her turda bir araç çağrısının beklendiği oturumlar için kullanın. - Güvenlik: Yerel modeller, sağlayıcı tarafındaki filtreleri atlar. İstem enjeksiyonunun etki alanını sınırlamak için ajanları dar kapsamlı ve Compaction’ı etkin tutun.