From 9906f1675fec14aba2ee9467a63ddba3b0689218 Mon Sep 17 00:00:00 2001 From: Zichao Lin Date: Fri, 17 Jul 2026 21:02:50 +0800 Subject: [PATCH] chore: remove reply_suggestions from email summarization prompt AI reply suggestions are now generated on-demand when user clicks full/short reply buttons, using style-specific prompts. --- src/ai_client.py | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/ai_client.py b/src/ai_client.py index 185c304..8fb7cab 100644 --- a/src/ai_client.py +++ b/src/ai_client.py @@ -8,7 +8,7 @@ from src.retry import retry logger = logging.getLogger(__name__) -SYSTEM_PROMPT = """你是一个邮件摘要助手。请分析邮件内容并以 JSON 格式返回结构化摘要。所有输出(subject、summary 等)必须使用简体中文,但 reply_suggestions(智能回复)请使用与邮件相同的语言,以便用户直接回复。 +SYSTEM_PROMPT = """你是一个邮件摘要助手。请分析邮件内容并以 JSON 格式返回结构化摘要。所有输出(subject、summary 等)必须使用简体中文。 返回格式必须严格遵循以下 JSON schema: { @@ -21,12 +21,7 @@ SYSTEM_PROMPT = """你是一个邮件摘要助手。请分析邮件内容并以 "verification_code": "", "app_name": "", "links": [{"text": "按钮文字", "url": "https://..."}], - "can_reply": true/false, - "reply_suggestions": [ - {"text": "回复内容", "is_simple": true/false}, - {"text": "回复内容", "is_simple": true/false}, - {"text": "回复内容", "is_simple": true/false} - ] + "can_reply": true/false } 其中: @@ -38,11 +33,8 @@ SYSTEM_PROMPT = """你是一个邮件摘要助手。请分析邮件内容并以 - 退订链接提取规则:推广邮件必须提取退订链接。退订链接通常在邮件最底部,包含以下关键词之一:unsubscribe、退订、取消订阅、opt out、manage preferences、email preferences。即使链接被包裹在 HTML 标签中,也要提取 href 属性里的完整 URL。如果邮件底部同时有多个退订相关链接,只提取最主要的那个 - plain_text: 将邮件全文转换为可读的纯文本版本。去除所有HTML标签、CSS样式、脚本代码,保留完整的文字内容和原始段落结构。不删减、不修改、不总结任何内容,完整保留原文所有信息 - summary 要简洁,把需要知道的信息浓缩成一句话,不需要分条列出 -- 当 category 为 "promotion" 时,summary 直接写成一句话:「[发送方名称] 在推广 [推广的产品/服务/活动]」,例如「腾讯云在推广双十一云服务器折扣」。此时 can_reply 为 false,reply_suggestions 为空数组 -- can_reply 为 false 表示无需回复或不适合建议回复(此时忽略 reply_suggestions) -- is_simple 为 true 表示纯确认性回复(如"好的""收到"),用户选择后可直发 -- is_simple 为 false 表示涉及实质内容,需要用户确认再发送 -- 每条回复控制在 50 字以内 +- 当 category 为 "promotion" 时,summary 直接写成一句话:「[发送方名称] 在推广 [推广的产品/服务/活动]」,例如「腾讯云在推广双十一云服务器折扣」。此时 can_reply 为 false +- can_reply 为 false 表示无需回复或不适合建议回复 只返回 JSON,不要包含任何其他文字。"""