From a23f4c0652c0681f02303c97f89dcb63b893383b Mon Sep 17 00:00:00 2001 From: Hitonabi Date: Fri, 3 Jul 2026 09:32:28 +0200 Subject: [PATCH] Warmup kaut jetzt auch den Hermes-Agenten-Prompt vor (Erster-Call-Fix) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Gemessen 03.07.: erster User-Call nach Modell-Reload 37 s (Prefill des ~70-KB-Hermes-Prompts, 50 KB davon Tool-Schemas), mit warmem Prompt-Cache ~6 s. warmup.sh schickt nach dem Modell-Laden einen Wegwerf-Turn an den api_server (:8642, wartet auf /health) — der -cram-Cache ist damit gefuellt, bevor der User zum ersten Mal fragt. Strukturelle Prompt-Diaet = Faden 7. Co-Authored-By: Claude Fable 5 --- deploy/warmup.sh | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/deploy/warmup.sh b/deploy/warmup.sh index 5ba1327..e4ef7f7 100644 --- a/deploy/warmup.sh +++ b/deploy/warmup.sh @@ -39,3 +39,19 @@ for m in $EMBEDS; do # Embedding-Modelle über /v1/emb -d "{\"model\":\"$m\",\"input\":\"ping\"}" \ >/dev/null 2>&1 || true done + +# Agenten-Prompt vorkauen: Hermes' Systemprompt (~70 KB, 33 Tool-Schemas) kostet nach +# jedem Modell-(Neu-)Laden sonst 30-40 s Prefill BEIM ERSTEN USER-CALL (gemessen 03.07.: +# kalt 37 s, mit gefülltem Prompt-Cache ~6 s). Ein Wegwerf-Turn füllt den -cram-Cache. +AGENT_KEY="$(grep -E '^API_SERVER_KEY=' "$HOME/.hermes/.env" 2>/dev/null | cut -d= -f2- | tr -d '"' | tr -d "'")" +if [ -n "$AGENT_KEY" ]; then + for _ in $(seq 1 45); do # auf hermes-gateway warten (Boot-Reihenfolge) + curl -sf -m 2 "http://127.0.0.1:8642/health" >/dev/null 2>&1 && break + sleep 2 + done + curl -s -m 120 -X POST "http://127.0.0.1:8642/v1/chat/completions" \ + -H "Authorization: Bearer $AGENT_KEY" -H 'Content-Type: application/json' \ + -H 'X-Hermes-Session-Id: warmup-prefill' \ + -d '{"model":"hermes","stream":false,"messages":[{"role":"user","content":"Sag nur OK."}]}' \ + >/dev/null 2>&1 || true +fi