mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-06-21 10:22:18 +00:00
fix(model): clear stale endpoint credentials across switches
This commit is contained in:
parent
95a3affc2e
commit
c253b07380
9 changed files with 187 additions and 17 deletions
|
|
@ -48,6 +48,7 @@ from hermes_cli.config import (
|
|||
cfg_get,
|
||||
DEFAULT_CONFIG,
|
||||
OPTIONAL_ENV_VARS,
|
||||
clear_model_endpoint_credentials,
|
||||
get_config_path,
|
||||
get_env_path,
|
||||
get_hermes_home,
|
||||
|
|
@ -901,8 +902,11 @@ def _apply_main_model_assignment(
|
|||
# same-provider re-pick so re-selecting a model doesn't wipe the key.
|
||||
if api_key.strip():
|
||||
model_cfg["api_key"] = api_key.strip()
|
||||
model_cfg.pop("api", None)
|
||||
elif model_cfg.get("api_key") and new_provider != prev_provider:
|
||||
model_cfg["api_key"] = ""
|
||||
clear_model_endpoint_credentials(model_cfg, clear_api_mode=False)
|
||||
if new_provider != prev_provider:
|
||||
clear_model_endpoint_credentials(model_cfg, clear_api_key=False)
|
||||
model_cfg.pop("context_length", None)
|
||||
return model_cfg
|
||||
|
||||
|
|
@ -3871,6 +3875,8 @@ def _apply_model_assignment_sync(
|
|||
slot_cfg = {}
|
||||
slot_cfg["provider"] = "auto"
|
||||
slot_cfg["model"] = ""
|
||||
slot_cfg.pop("base_url", None)
|
||||
clear_model_endpoint_credentials(slot_cfg)
|
||||
aux[slot] = slot_cfg
|
||||
cfg["auxiliary"] = aux
|
||||
save_config(cfg)
|
||||
|
|
@ -3886,8 +3892,13 @@ def _apply_model_assignment_sync(
|
|||
slot_cfg = aux.get(slot)
|
||||
if not isinstance(slot_cfg, dict):
|
||||
slot_cfg = {}
|
||||
prev_provider = str(slot_cfg.get("provider") or "").strip().lower()
|
||||
new_provider = provider.strip().lower()
|
||||
slot_cfg["provider"] = provider
|
||||
slot_cfg["model"] = model
|
||||
if new_provider != prev_provider and new_provider != "custom":
|
||||
slot_cfg.pop("base_url", None)
|
||||
clear_model_endpoint_credentials(slot_cfg)
|
||||
aux[slot] = slot_cfg
|
||||
|
||||
cfg["auxiliary"] = aux
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue