微信机器人从"信息回复"走向"智能判断",不是换个回答更聪明的大模型就完事。信息回复是确定性映射——用户问价格答价格,问物流答物流,规则匹配就够了。智能判断是非确定性推理——用户问"这个订单要不要退款",答案不是查出来的,是综合订单状态、用户历史、退款政策、风险判断推出来的。接入AI决策系统的关键不是让机器人能答更多问题,是让它能处理那些没有标准答案、需要综合多条件做判断的请求。判断能力从规则匹配迁移到条件评估,是机器人从问答工具走向业务助手的核心一步。
一、判断范式迁移——从规则匹配到条件评估
信息回复阶段的判断范式是规则匹配:用户输入→关键词匹配→预设回复。这个范式处理不了条件性请求——"我要退款"这条消息,背后可能是咨询退款流程、可能是申请退款、可能是催促退款进度,规则匹配只能猜一个。智能判断的范式是条件评估:用户输入→场景识别→约束提取→偏好推断→判断结论。同样"我要退款",判断系统先识别场景(咨询还是申请),提取约束(订单状态、退款原因),推断偏好(用户情绪、历史行为),输出判断结论。
范式迁移的工程意义不是让回答更智能,是让回答更准确。规则匹配答错是答非所问,条件评估答错是判断逻辑错——前者用户能看出来,后者用户也能看出来但更难定位。判断系统要能解释判断依据(为什么建议退款/为什么不建议),可解释的判断即使结论错了用户也能理解,不可解释的判断对了用户也不信任。
二、决策系统接入——判断引擎与微信前端的解耦
判断系统不内嵌在微信机器人里,独立部署为判断引擎,机器人只做消息收发和判断结果呈现。解耦的工程价值是判断引擎可被多端复用——微信、APP、网页都调同一个判断引擎,判断逻辑只维护一份。判断引擎接收标准化输入(场景ID+约束键值对+偏好标签),输出标准化结论(判断结果+置信度+依据链)。微信侧负责把用户消息解析成判断引擎的输入格式,再把判断结论组装成回复。
接入判断引擎要处理消息解析的适配问题。用户在微信里说的是自然语言"这个面膜过敏了能退吗",判断引擎要的是结构化输入——场景=退款、约束=过敏+已拆封+下单3天、偏好=用户历史退款率低。自然语言到结构化的解析靠意图理解和槽位抽取,这一步质量直接决定判断质量——解析错了约束缺失,判断引擎再强也白搭。消息解析和结果回传的接口在 Eyun 开发文档 中有对应支撑。
三、判断质量保证——假设验证结论的判断链
判断不是一次性输出结论,是经过"假设→验证→结论"的判断链。用户说"这个面膜过敏了能退吗",判断链是:假设(过敏+已拆封→可能不可退)→验证(查退款政策:过敏类质量问题可退/查订单状态:未超7天可退)→结论(可以退,原因是质量问题且在退款期内)。判断链的价值是可追溯——结论错了能定位是假设错了还是验证错了还是结论推理错了。
判断链要留痕而非黑盒输出。每一步判断的输入、假设、验证结果、结论都落日志,用户追问"为什么说不能退"时能回溯判断链给出依据。黑盒判断即使对了用户也不信——用户不知道你为什么得出这个结论,下次判断错了用户也不知道为什么错。判断链的可解释性在决策辅助场景尤其重要——涉及退款的判断,用户有权知道判断依据。判断链留痕和会话上下文管理在 Eyun 开发文档 中有接口能力。
判断范式迁移对照
范式 | 输入处理 | 输出形态 | 质量保证 |
|---|---|---|---|
规则匹配 | 关键词匹配 | 预设回复 | 答非所问可感知 |
条件评估 | 场景+约束+偏好 | 判断结论+依据 | 判断链可追溯 |
黑盒判断 | 自然语言直推 | 结论无依据 | 不可解释不可信 |
判断引擎接入与判断链实现
class JudgeEngine: def judge(self, parsed): # parsed: 场景ID + 约束键值对 + 偏好标签 hypothesis = self.hypothesize(parsed) # 生成假设 verified = self.verify(hypothesis) # 验证假设 if not verified.passed: # 验证失败:调整假设重新判断 hypothesis = self.adjust(parsed, verified) verified = self.verify(hypothesis) conclusion = self.conclude(verified) # 推导结论 self.log_chain(parsed, hypothesis, verified, conclusion) return conclusion def hypothesize(self, parsed): # 假设:过敏+已拆封→可能不可退 if parsed.get("reason") == "allergy": return Hypothesis("maybe_unreturnable", parsed) return Hypothesis("returnable", parsed) def verify(self, hyp): # 验证:查退款政策和订单状态 policy = self.policy_lookup(hyp.scene) order = self.order_status(hyp.parsed["order_id"]) if policy.allergy_returnable and order.in_window: return VerifyResult(passed=True, reason="质量问题可退") return VerifyResult(passed=False, reason=policy.reason) class WeChatBot: def on_message(self, raw): parsed = self.parse(raw) # 自然语言→结构化 conclusion = self.engine.judge(parsed) # 调判断引擎 return self.compose(conclusion) # 组装回复落地建议
判断引擎从单一场景做起——退款判断场景规则相对清晰、政策可枚举,跑通了再扩展到其他判断场景。判断链的假设→验证→结论三步别省,黑盒直推结论虽然快但不可解释不可追溯,出了错定位不了。消息解析质量是判断质量的前置条件——解析错了约束缺失,判断引擎再强也白搭,先把意图理解和槽位抽取做扎实。微信侧的消息收发、会话上下文和判断结果回传由Eyun这类个人微信API平台 提供,判断引擎和判断链留痕在自建服务实现,接口字段以平台开发文档为准。