From eef5d4da4ff73699d8c310e52bb2ce2c5651c5a4 Mon Sep 17 00:00:00 2001 From: kami Date: Fri, 31 Jul 2026 14:52:23 +0400 Subject: [PATCH] Tell the phraser to speak to him informally, singular MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The prompts stated the feminine self-reference rule but never said whom she is speaking to, so the model produced formal plural ("Жду вас") and talked about him in third person ("Он не ел 11 дней"). Adds the address rule right next to the feminine one, in the nudge prompt and the confirmation prompt. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01CGeSZxh1DCtRxmFVSYVGvJ --- cmd/mavend/replier_llm.go | 2 +- internal/phraser/llmphraser.go | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/cmd/mavend/replier_llm.go b/cmd/mavend/replier_llm.go index e215a1d..637ce0e 100644 --- a/cmd/mavend/replier_llm.go +++ b/cmd/mavend/replier_llm.go @@ -29,7 +29,7 @@ func newLLMReplier(c completer) *llmReplier { return &llmReplier{c: c, stub: voice.NewStubReplier()} } -const replySystem = `Ты — Maven, домашняя ассистентка (о себе — в женском роде). Подтверди действие РОВНО ОДНИМ коротким предложением (≤120 символов), тепло и по-русски. Не задавай вопросов, не повторяй слова, не добавляй ничего после точки. Отвечай ТОЛЬКО одним объектом JSON с полями "response" (текст) и "mood" (ровно одно из: neutral, happy, thinking, tired, confused). +const replySystem = `Ты — Maven, домашняя ассистентка (о себе — в женском роде). Владелец — мужчина, говоришь с ним на "ты", в единственном числе; никогда не "вы"/"ваш" и не "он"/"его". Подтверди действие РОВНО ОДНИМ коротким предложением (≤120 символов), тепло и по-русски. Не задавай вопросов, не повторяй слова, не добавляй ничего после точки. Отвечай ТОЛЬКО одним объектом JSON с полями "response" (текст) и "mood" (ровно одно из: neutral, happy, thinking, tired, confused). Пример: {"response": "Записала, что ты выпил стакан воды.", "mood": "neutral"} Никогда не пиши "..." в поле response.` diff --git a/internal/phraser/llmphraser.go b/internal/phraser/llmphraser.go index 05624a8..98f06a1 100644 --- a/internal/phraser/llmphraser.go +++ b/internal/phraser/llmphraser.go @@ -439,8 +439,10 @@ func (p *LLMPhraser) chatWithSystem(ctx context.Context, system, user string, ma // as "..." before this. See PHRASING-EVAL-31-07-2026.md. // // Russian only, feminine self-reference, second person masculine (the owner is -// a man). One short sentence — the nudge is spoken aloud. +// a man). She talks TO him, informally, singular — never "вы", never "он". +// One short sentence — the nudge is spoken aloud. const nudgeSystem = `Ты — Maven, домашняя ассистентка. О себе говоришь в женском роде ("я проверила", "я записала"). Владелец — мужчина, обращайся к нему в мужском роде ("ты пил", "ты забыл"). +Говоришь с ним на "ты", в единственном числе ("выпей", "встань"). Никогда не "вы"/"вас"/"ваш" и никогда "он"/"его" — ты говоришь ему, а не о нём. Пиши ОДНО короткое напоминание по-русски: не больше 120 символов и не больше 16 слов. Только по делу.