Providers
Çıkarım yapar
inferrs, yerel modelleri OpenAI uyumlu bir /v1 API arkasında sunabilir. OpenClaw, genel openai-completions yolu üzerinden inferrs ile çalışır.
| Özellik | Değer |
|---|---|
| Provider kimliği | inferrs (özel; models.providers.inferrs altında yapılandırın) |
| Plugin | yok — inferrs, paketle birlikte gelen bir OpenClaw provider plugin değildir |
| Kimlik doğrulama env var | İsteğe bağlı. inferrs sunucunuzda kimlik doğrulama yoksa herhangi bir değer çalışır |
| API | OpenAI uyumlu (openai-completions) |
| Önerilen temel URL | http://127.0.0.1:8080/v1 (veya inferrs sunucunuz neredeyse orası) |
Başlarken
inferrs'i bir modelle başlatın
inferrs serve google/gemma-4-E2B-it \
--host 127.0.0.1 \
--port 8080 \
--device metal
Sunucuya erişilebildiğini doğrulayın
curl http://127.0.0.1:8080/health
curl http://127.0.0.1:8080/v1/models
Bir OpenClaw provider girdisi ekleyin
Açık bir provider girdisi ekleyin ve varsayılan modelinizi ona yönlendirin. Aşağıdaki tam yapılandırma örneğine bakın.
Tam yapılandırma örneği
Bu örnek, yerel bir inferrs sunucusunda Gemma 4 kullanır.
{
agents: {
defaults: {
model: { primary: "inferrs/google/gemma-4-E2B-it" },
models: {
"inferrs/google/gemma-4-E2B-it": {
alias: "Gemma 4 (inferrs)",
},
},
},
},
models: {
mode: "merge",
providers: {
inferrs: {
baseUrl: "http://127.0.0.1:8080/v1",
apiKey: "inferrs-local",
api: "openai-completions",
models: [
{
id: "google/gemma-4-E2B-it",
name: "Gemma 4 E2B (inferrs)",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 131072,
maxTokens: 4096,
compat: {
requiresStringContent: true,
},
},
],
},
},
},
}
Gelişmiş yapılandırma
requiresStringContent neden önemlidir
Bazı inferrs Chat Completions rotaları, yapılandırılmış içerik parçası dizileri yerine yalnızca string
messages[].content kabul eder.
compat: {
requiresStringContent: true
}
OpenClaw, isteği göndermeden önce saf metin içerik parçalarını düz stringlere dönüştürür.
Gemma ve tool-schema uyarısı
Bazı güncel inferrs + Gemma kombinasyonları küçük doğrudan
/v1/chat/completions isteklerini kabul eder, ancak tam OpenClaw agent-runtime
turlarında yine de başarısız olur.
Bu olursa önce şunu deneyin:
compat: {
requiresStringContent: true,
supportsTools: false
}
Bu, model için OpenClaw'ın araç şeması yüzeyini devre dışı bırakır ve daha katı yerel backendler üzerindeki prompt baskısını azaltabilir.
Çok küçük doğrudan istekler hâlâ çalışıyor ancak normal OpenClaw agent turları
inferrs içinde çökmeye devam ediyorsa, kalan sorun genellikle OpenClaw'ın taşıma katmanı değil upstream model/sunucu
davranışıdır.
Manuel smoke test
Yapılandırıldıktan sonra iki katmanı da test edin:
curl http://127.0.0.1:8080/v1/chat/completions \
-H 'content-type: application/json' \
-d '{"model":"google/gemma-4-E2B-it","messages":[{"role":"user","content":"What is 2 + 2?"}],"stream":false}'
openclaw infer model run \
--model inferrs/google/gemma-4-E2B-it \
--prompt "What is 2 + 2? Reply with one short sentence." \
--json
İlk komut çalışıp ikincisi başarısız olursa aşağıdaki sorun giderme bölümünü kontrol edin.
Proxy tarzı davranış
inferrs, yerel bir OpenAI uç noktası değil, proxy tarzı OpenAI uyumlu bir /v1 backend olarak ele alınır.
- Yerel OpenAI'ye özgü istek şekillendirme burada geçerli değildir
service_tieryoktur, Responsesstoreyoktur, prompt-cache ipuçları yoktur ve OpenAI reasoning-compat payload şekillendirmesi yoktur- Gizli OpenClaw atıf başlıkları (
originator,version,User-Agent) özelinferrstemel URL'lerine eklenmez
Sorun giderme
curl /v1/models başarısız oluyor
inferrs çalışmıyor, erişilebilir değil veya beklenen host/porta bağlanmamış. Sunucunun başlatıldığından ve yapılandırdığınız adreste dinlediğinden emin olun.
messages[].content bir string bekliyordu
Model girdisinde compat.requiresStringContent: true ayarlayın. Ayrıntılar için yukarıdaki
requiresStringContent bölümüne bakın.
Doğrudan /v1/chat/completions çağrıları başarılı oluyor ancak openclaw infer model run başarısız oluyor
Araç şeması yüzeyini devre dışı bırakmak için compat.supportsTools: false ayarlamayı deneyin.
Yukarıdaki Gemma tool-schema uyarısına bakın.
inferrs daha büyük agent turlarında hâlâ çöküyor
OpenClaw artık şema hataları almıyor ancak inferrs daha büyük
agent turlarında hâlâ çöküyorsa, bunu upstream inferrs veya model sınırlaması olarak ele alın. Prompt
baskısını azaltın veya farklı bir yerel backend ya da modele geçin.