diff --git a/core/pydantic_ai_agent_v2.py b/core/pydantic_ai_agent_v2.py index f06fd98..6785544 100644 --- a/core/pydantic_ai_agent_v2.py +++ b/core/pydantic_ai_agent_v2.py @@ -113,6 +113,9 @@ _DESIGNER_SCHEDULE_QUESTION_KEYWORDS = ( "设计师上班了吗", ) +DESIGNER_WORK_START_HOUR = 9 +DESIGNER_WORK_END_HOUR = 12 + def _clip(text: str, limit: int = 1200) -> str: if text is None: @@ -296,7 +299,7 @@ class CustomerServiceBrain: "5. **客户问尺寸/能否打印/退款**:直接转人工:'这个设计师帮您看下哈'。\n" "6. **付款链接特判**:客户明确说'发付款链接'、'支付链接'、'拍单链接'、'下单链接'时,视为强成交信号,必须立即调用转人工工具;严禁只回复'直接下单'。\n" "7. **设计师上班时间特判**:客户问'几点上班'、'什么时候上班'、'设计师在吗'、'什么时候在线'时,默认是在问设计师。不要按闲聊处理,也不要回复'我只处理业务'。\n" - " 应优先自然回答设计师上班/在线情况,例如'设计师八点后陆续上班哈'、'还没上班,上班马上帮您处理'。\n" + " 设计师固定是早上9点上班,12点下班。应结合当前时间自然回答,不要机械复读。\n" "8. **转接时机(严格两步)**:除付款链接特判外,必须同时满足【有图】+【客户明确或可直接判断的需求】才能转接。\n" " 客户只发了图但没说需求 → 先问'亲亲这张是找原图还是修复哈?'\n" " 客户说了'有吗'、'能找吗'、'找图'、'找原图'、'有大图吗' → 直接按【找原图】意图处理,不要重复追问。\n" @@ -352,10 +355,17 @@ class CustomerServiceBrain: f"{user_content}" ) elif _asks_designer_schedule(user_content, history): + now_dt = datetime.now() user_content = ( "【系统通知:客户现在是在问设计师几点上班、什么时候在线、有没有在。" "这是有效业务上下文,不要按闲聊或无关业务拒绝。" - "请直接自然回答设计师上班/在线情况;如果还没上班,就说上班后马上处理。】\n" + f"设计师固定工作时间是每天{DESIGNER_WORK_START_HOUR}点上班,{DESIGNER_WORK_END_HOUR}点下班。" + f"当前时间是{now_dt.strftime('%Y-%m-%d %H:%M:%S')}。" + "请结合当前时间自然回答:" + f"如果现在还没到{DESIGNER_WORK_START_HOUR}点,就表达还没上班,上班后马上处理;" + f"如果现在已经在{DESIGNER_WORK_START_HOUR}点到{DESIGNER_WORK_END_HOUR}点之间,就表达设计师已经在了或陆续在处理;" + f"如果现在已经过了{DESIGNER_WORK_END_HOUR}点,就表达已经下班,明天{DESIGNER_WORK_START_HOUR}点后处理。" + "不要机械照抄这段说明,要自然一点。】\n" f"{user_content}" )