diff --git a/backend/services/agent.py b/backend/services/agent.py index a4e4f3e..b3c23ae 100644 --- a/backend/services/agent.py +++ b/backend/services/agent.py @@ -155,7 +155,9 @@ def agent_status() -> dict: with config_path.open("r", encoding="utf-8") as f: cfg = r_yaml.load(f) or {} if isinstance(cfg, dict): - brain_model = cfg.get("model", {}).get("model", "auto") + # Hermes nutzt model.default als aktives Modell (model.model = Provider-Param). + m = cfg.get("model", {}) or {} + brain_model = m.get("default") or m.get("model") or "auto" except Exception: log.debug("agent_status: Hermes-config.yaml nicht lesbar", exc_info=True) @@ -228,8 +230,11 @@ def update_brain_model(new_model: str) -> bool: if "model" not in cfg or not isinstance(cfg["model"], dict): cfg["model"] = {} + # Hermes liest model.default als aktives Modell; model.model ist der Provider-Param. + # Beide setzen, sonst greift die Umschaltung nicht (latenter Bug: nur model.model gesetzt). + cfg["model"]["default"] = new_model cfg["model"]["model"] = new_model - + try: from ruamel.yaml import YAML r_yaml = YAML()