From bc17bc956a4a8f741f828eab1ab8331f9a027217 Mon Sep 17 00:00:00 2001 From: david Date: Fri, 16 Oct 2026 05:11:09 -0300 Subject: trying a couple fixes without claude's help --- gemini.py | 5 ++++- main.py | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/gemini.py b/gemini.py index e73f9d4..2c0501e 100644 --- a/gemini.py +++ b/gemini.py @@ -213,7 +213,7 @@ async def geminichat(websocket): messages.append({"role": "user", "content": "\n".join(current_user_lines)}) # final isolated turn — the specific message she needs to reply to - messages.append({"role": "user", "content": f"[responding to]: {nots(user_input)}\n(that is the newest message and the only one you answer, the lines above are just context. only the name that starts it is speaking to you, everyone else is someone else)"}) + messages.append({"role": "user", "content": f"[responding to]: {nots(user_input)}}) # make sure we start with a user turn (gemini rejects empty parts so no empty string here) if messages and messages[0]["role"] != "user": @@ -268,6 +268,9 @@ async def geminichat(websocket): reason = response.prompt_feedback.block_reason if response.prompt_feedback else None if not reason and response.candidates: reason = response.candidates[0].finish_reason + if "PROHIBITED_CONTENT" in str(reason): + await websocket.send(json.dumps({"ok": "google doesn't want me to reply to this :stocking:"})) + continue raise RuntimeError(f"gemini returned no text ({reason})") # strip blocks just in case, thank you claude diff --git a/main.py b/main.py index 2c188a6..6e3fec2 100644 --- a/main.py +++ b/main.py @@ -120,7 +120,7 @@ async def ollamachat(websocket): return True return False - BOT_NAME = "Faggot-chan" + BOT_NAME = "Faggot-chan" #i'll make this a variable later you can edit # parse shortterm lines into (speaker, text) pairs def parse_line(line): @@ -173,7 +173,7 @@ async def ollamachat(websocket): messages.append({"role": "user", "content": "\n".join(current_user_lines)}) # final isolated turn — the specific message she needs to reply to - messages.append({"role": "user", "content": f"[responding to]: {nots(user_input)}\n(that is the newest message and the only one you answer, the lines above are just context. only the name that starts it is speaking to you, everyone else is someone else)"}) + messages.append({"role": "user", "content": f"[responding to]: {nots(user_input)}}) # ollama only takes images (no audio/video/pdf), and only on the final turn so history stays text images = [base64.b64decode(m["data"]) for m in media if m["mime_type"].startswith("image/")] -- cgit v1.3-2-g0d8e