Hermes2 Telegram: Umschalter schnell vs. langsam (Reasoning-Toggle) #110

Open
opened 2026-06-15 13:25:06 +00:00 by orbitalo · 0 comments
Owner

Ziel

In Hermes2 (Telegram-Bot) soll es einen einfachen Umschalter "schnell vs. langsam" geben, mit dem man on-the-fly zwischen schneller Antwort (kein Reasoning) und schlauerer Antwort (Reasoning an) wechseln kann — idealerweise per Inline-Button oder kurzem Befehl, mit Anzeige des aktuellen Zustands.

  • schnell = reasoning_effort: none (DeepSeek V4 Pro ohne Thinking, ~0,8s)
  • langsam/schlau = reasoning_effort: medium (oder low als Mittelweg)

Kontext (Stand 15.06.2026)

  • Hermes2 = CT 151 hermes-mu auf pve-mu-3 (100.109.101.12), Agent Hermes v0.14.0.
  • Config: /root/.hermes/config.yaml. Aktuell: model.default = deepseek/deepseek-v4-pro, fast_model.default = deepseek/deepseek-v4-flash, agent.reasoning_effort = none.
  • Service: hermes-gateway.service (+ hermes-dashboard.service).

Wichtig: Mechanik ist schon vorhanden

Hermes hat bereits einen /reasoning-Befehl (siehe gateway/run.py):

  • _parse_reasoning_command_args() versteht /reasoning <level> (session-scoped) und --global (persistiert in config.yaml).
  • _resolve_session_reasoning_config() + _session_reasoning_overrides machen Session-Overrides.
  • Gueltige Level: none, minimal, low, medium, high, xhigh (siehe hermes_constants.parse_reasoning_effort).

D.h. der Toggle muss das Rad nicht neu erfinden — er kann intern auf die bestehende /reasoning-Logik mappen.

Umsetzungsidee fuer Cline

  1. Telegram: Inline-Keyboard-Button (oder Kurzbefehl, z.B. /speed) mit zwei Zustaenden:
    • " Schnell" → setzt reasoning none
    • "🧠 Schlau" → setzt reasoning medium (oder low)
  2. Aktuellen Zustand anzeigen (z.B. Button-Label spiegelt aktiven Modus).
  3. Entscheiden: pro Session (nur aktueller Chat) oder global (--global, persistiert). Vorschlag: per-Chat default, optional global.
  4. Telegram-Adapter liegt unter plugins/platforms/ (analog Discord plugins/platforms/discord/adapter.py, dort gibt es slash_reasoning). Discord-Variante als Vorlage nutzen.
  5. Nach Aenderung testen: schneller Modus = keine reasoning-Tokens, langsamer Modus = reasoning {enabled:true, effort:...}.

Akzeptanzkriterien

  • In Telegram per Button/Befehl zwischen schnell und schlau umschaltbar
  • Aktueller Modus erkennbar
  • Wirkt sofort auf die naechste Antwort
  • Kein Service-Neustart noetig
  • Doku-Update in CT 999 (container/ct-151-hermes-mu.md)

Hinweise

  • Backup der Config vor Aenderung (config.yaml.bak.JJJJMMTT).
  • Hermes-Agent ist 2155 Commits hinter Upstream — ggf. pruefen ob ein neueres Release den Toggle schon nativer kann, bevor selbst gebaut wird.
## Ziel In Hermes2 (Telegram-Bot) soll es einen einfachen **Umschalter "schnell vs. langsam"** geben, mit dem man on-the-fly zwischen schneller Antwort (kein Reasoning) und schlauerer Antwort (Reasoning an) wechseln kann — idealerweise per Inline-Button oder kurzem Befehl, mit Anzeige des aktuellen Zustands. - **schnell** = `reasoning_effort: none` (DeepSeek V4 Pro ohne Thinking, ~0,8s) - **langsam/schlau** = `reasoning_effort: medium` (oder `low` als Mittelweg) ## Kontext (Stand 15.06.2026) - Hermes2 = **CT 151 `hermes-mu`** auf **pve-mu-3** (100.109.101.12), Agent **Hermes v0.14.0**. - Config: `/root/.hermes/config.yaml`. Aktuell: `model.default = deepseek/deepseek-v4-pro`, `fast_model.default = deepseek/deepseek-v4-flash`, `agent.reasoning_effort = none`. - Service: `hermes-gateway.service` (+ `hermes-dashboard.service`). ## Wichtig: Mechanik ist schon vorhanden Hermes hat bereits einen `/reasoning`-Befehl (siehe `gateway/run.py`): - `_parse_reasoning_command_args()` versteht `/reasoning <level>` (session-scoped) und `--global` (persistiert in config.yaml). - `_resolve_session_reasoning_config()` + `_session_reasoning_overrides` machen Session-Overrides. - Gueltige Level: `none`, `minimal`, `low`, `medium`, `high`, `xhigh` (siehe `hermes_constants.parse_reasoning_effort`). D.h. der Toggle muss das Rad nicht neu erfinden — er kann intern auf die bestehende `/reasoning`-Logik mappen. ## Umsetzungsidee fuer Cline 1. Telegram: Inline-Keyboard-Button (oder Kurzbefehl, z.B. `/speed`) mit zwei Zustaenden: - "⚡ Schnell" → setzt `reasoning none` - "🧠 Schlau" → setzt `reasoning medium` (oder `low`) 2. Aktuellen Zustand anzeigen (z.B. Button-Label spiegelt aktiven Modus). 3. Entscheiden: **pro Session** (nur aktueller Chat) oder **global** (`--global`, persistiert). Vorschlag: per-Chat default, optional global. 4. Telegram-Adapter liegt unter `plugins/platforms/` (analog Discord `plugins/platforms/discord/adapter.py`, dort gibt es `slash_reasoning`). Discord-Variante als Vorlage nutzen. 5. Nach Aenderung testen: schneller Modus = keine `reasoning`-Tokens, langsamer Modus = `reasoning {enabled:true, effort:...}`. ## Akzeptanzkriterien - [ ] In Telegram per Button/Befehl zwischen schnell und schlau umschaltbar - [ ] Aktueller Modus erkennbar - [ ] Wirkt sofort auf die naechste Antwort - [ ] Kein Service-Neustart noetig - [ ] Doku-Update in CT 999 (`container/ct-151-hermes-mu.md`) ## Hinweise - Backup der Config vor Aenderung (`config.yaml.bak.JJJJMMTT`). - Hermes-Agent ist 2155 Commits hinter Upstream — ggf. pruefen ob ein neueres Release den Toggle schon nativer kann, bevor selbst gebaut wird.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: orbitalo/homelab-brain#110
No description provided.