mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-04-30 01:41:43 +00:00
fix: follow-up for salvaged PR #17061
- Remove dead _lmstudio_loaded_context attribute from run_agent.py (set but never read — the loaded context is pushed to context_compressor.update_model which is the actual consumer) - Cache empty reasoning options with 60s TTL to avoid per-turn HTTP probe for non-reasoning LM Studio models. Non-empty results cached permanently. - Extract _lmstudio_server_root(), _lmstudio_request_headers(), and _lmstudio_fetch_raw_models() shared helpers in models.py — eliminates URL-strip + auth-header + HTTP-call duplication across probe_lmstudio_models, ensure_lmstudio_model_loaded, and lmstudio_model_reasoning_options - Revert runtime_provider.py base_url precedence change: preserve the established contract (saved config.base_url > env var > default) for all api_key providers - Remove unnecessary config version bump 22→23 - Fix TUI test: relax target_model assertion to avoid module-cache flake - AUTHOR_MAP: added rugved@lmstudio.ai → rugvedS07
This commit is contained in:
parent
433d38da09
commit
5d2f9b5d7d
7 changed files with 92 additions and 102 deletions
|
|
@ -316,8 +316,14 @@ def test_resolve_runtime_provider_lmstudio_honors_saved_base_url(monkeypatch):
|
|||
assert resolved["api_key"] == "dummy-lm-api-key"
|
||||
|
||||
|
||||
def test_resolve_runtime_provider_lmstudio_base_url_env_wins_over_saved_base_url(monkeypatch):
|
||||
"""LM_BASE_URL should override the saved lmstudio base_url for temporary redirects."""
|
||||
def test_resolve_runtime_provider_lmstudio_saved_base_url_wins_over_env(monkeypatch):
|
||||
"""Saved model.base_url takes precedence over LM_BASE_URL env var.
|
||||
|
||||
This matches the established contract for all api_key providers: the
|
||||
explicit config value (model.base_url) wins over the env-derived
|
||||
default. Users who saved a remote LM Studio URL must not have it
|
||||
silently overridden by a stale shell variable.
|
||||
"""
|
||||
monkeypatch.delenv("LM_API_KEY", raising=False)
|
||||
monkeypatch.setenv("LM_BASE_URL", "http://override.local:9999/v1")
|
||||
monkeypatch.setattr(rp, "resolve_provider", lambda *a, **k: "lmstudio")
|
||||
|
|
@ -340,7 +346,8 @@ def test_resolve_runtime_provider_lmstudio_base_url_env_wins_over_saved_base_url
|
|||
|
||||
assert resolved["provider"] == "lmstudio"
|
||||
assert resolved["api_mode"] == "chat_completions"
|
||||
assert resolved["base_url"] == "http://override.local:9999/v1"
|
||||
# Saved config base_url wins over env var (standard contract).
|
||||
assert resolved["base_url"] == "http://192.168.1.10:1234/v1"
|
||||
assert resolved["api_key"] == "dummy-lm-api-key"
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue