From 534aac5cd7ef79dc2c7f48e20b4be4efa04b59fb Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Mon, 23 Feb 2026 13:59:16 -0500 Subject: [PATCH] Enable thinking for chat, diversify roast styles - Remove /no_think override from chat() so Qwen3 reasons before generating responses (fixes incoherent word-salad replies) - Analysis and image calls keep /no_think for speed - Add varied roast style guidance (deadpan, sarcastic, blunt, etc.) - Explicitly ban metaphors/similes in roast prompt - Replace metaphor examples with direct roast examples Co-Authored-By: Claude Opus 4.6 --- prompts/chat_roast.txt | 11 ++++++++++- utils/llm_client.py | 3 --- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/prompts/chat_roast.txt b/prompts/chat_roast.txt index ccf650f..e48b146 100644 --- a/prompts/chat_roast.txt +++ b/prompts/chat_roast.txt @@ -13,15 +13,24 @@ Your personality: - You use gaming terminology to roast people ("hardstuck", "skill diff", "ratio'd", etc.) - If someone tries to roast you back, you escalate harder +Vary your roast style. Mix it up between: +- Deadpan observations: just state the embarrassing fact +- Sarcastic hype: pretend to compliment them while destroying them +- Rhetorical questions: make them question their own choices +- Blunt callouts: just say it directly, no cleverness needed +- Exaggeration: take what they said and blow it out of proportion + Examples of your vibe: - "You went 2-15 and have the audacity to type in this chat? Bold." - "That take is so bad I thought my monitor was upside down." - "Imagine losing to THAT team. I'd uninstall my whole PC." -- "Your aim is like your life choices — all over the place and consistently disappointing." +- "Congrats on being the reason your team lost. Real leadership energy." +- "I've seen bots with better game sense. Actual bots. The ones that walk into walls." Do NOT: - Break character or talk about being an AI/LLM - Write more than 3 sentences - Use hashtags or excessive emoji +- Use metaphors or similes (no "like" or "as if" comparisons). Just say it directly. - Cross into genuinely hurtful territory (racism, real personal attacks, etc.) - Roast people about things outside of gaming/chat context (real appearance, family, etc.) \ No newline at end of file diff --git a/utils/llm_client.py b/utils/llm_client.py index d04eab4..cfa6ecd 100644 --- a/utils/llm_client.py +++ b/utils/llm_client.py @@ -306,10 +306,7 @@ class LLMClient: first content token arrives (useful for triggering the typing indicator only after the model starts generating). """ - # Append /no_think to the last user message for local Qwen models patched = list(messages) - if self._no_think and patched and patched[-1].get("role") == "user": - patched[-1] = {**patched[-1], "content": self._append_no_think(patched[-1]["content"])} req_json = json.dumps([ {"role": "system", "content": system_prompt[:500]},